{
  "schema": "c20-source-grounded-methods-v1",
  "status": "Explicit hypothetical teaching inputs; independent arithmetic, no project acceptance.",
  "heat_input": {
    "scope": "Adopted manual shielded-metal-arc method.",
    "formula": "HI=K*V*A/Sw",
    "units": {
      "HI": "J/mm",
      "V": "V",
      "A": "A",
      "Sw": "mm/s",
      "K": "dimensionless"
    },
    "input": {
      "V": 24,
      "A": 100,
      "travel_mm_per_min": 150,
      "Sw_mm_per_s": 2.5
    },
    "factors": {
      "butt": 0.85,
      "fillet": 0.57
    },
    "raw_energy_J_per_mm": 960,
    "net_butt_J_per_mm": 816,
    "net_fillet_J_per_mm": 547.2,
    "limitation": "Not penetration/temperature prediction or generic welding-process factor."
  },
  "temperature_factors": {
    "scope": "Specific welding-pressure calculation, predicted maximum pipe temperature during welding; linear interpolation allowed between stated rows.",
    "rows": [
      {
        "condition_C": "above675",
        "factor": 0
      },
      {
        "condition_C": 675,
        "factor": 0.2
      },
      {
        "condition_C": 600,
        "factor": 0.35
      },
      {
        "condition_C": 500,
        "factor": 0.57
      },
      {
        "condition_C": 400,
        "factor": 0.65
      },
      {
        "condition_C": 300,
        "factor": 0.75
      },
      {
        "condition_C": 200,
        "factor": 0.85
      },
      {
        "condition_C": 120,
        "factor": 0.91
      },
      {
        "condition_C": "below120",
        "factor": 1
      }
    ],
    "hypothetical_temperature_C": 550,
    "interpolated_factor": 0.46
  },
  "welding_pressure_onplot": {
    "scope": "On-plot basic-allowable-stress basis;F already included, no additional pipeline factor.",
    "formula": "P=2*S*tr*E*Tf/D",
    "inputs": {
      "S_N_per_mm2": 100,
      "ta_mm": 8,
      "u_mm": 3,
      "tr_mm": 5,
      "D_nominal_outside_mm": 200,
      "E": 1,
      "Tf": 0.46
    },
    "result_MPa": 2.3,
    "limitation": "Hypothetical temperature/penetration/stress inputs, not actual eligibility.",
    "pressure_reference": "Illustrated atmospheric exterior: internal gauge pressure relative to local atmosphere, representing the applicable inside-to-exterior difference. Other exterior/method/route conditions require their own reference and limits; not absolute internal pressure."
  },
  "welding_pressure_offplot": {
    "scope": "Separate off-plot pipeline example; lower of temperature and applicable toughness method within this adopted basis.",
    "temperature_formula": "P=2*S*tr*F*E*Tf/D",
    "inputs": {
      "SMYS_N_per_mm2": 350,
      "F": 0.8,
      "E": 1,
      "ta_mm": 8,
      "u_mm": 3,
      "tr_mm": 5,
      "D_nominal_outside_mm": 200,
      "Tf": 0.46
    },
    "temperature_result_MPa": 6.44,
    "toughness_formula": "P=2*Sh*tn/D",
    "hypothetical_Sh_N_per_mm2": 50,
    "nominal_tn_mm": 8,
    "toughness_result_MPa": 4,
    "lower_method_result_MPa": 4,
    "limitation": "Sh not derived from Charpy data; nominal tn differs from reduced tr. Not combined with on-plot example. General7MPa/equipment/material/fluid bounds remain.",
    "pressure_reference": "Illustrated atmospheric exterior: internal gauge pressure relative to local atmosphere, representing the applicable inside-to-exterior difference. Other exterior/method/route conditions require their own reference and limits; not absolute internal pressure."
  },
  "split_tee_test": {
    "formula": "PT=PA+allowed_external_differential",
    "pressure_unit": "MPa on a common reference basis",
    "hypothetical_PA": 2,
    "independently_assumed_allowed_differential": 0.4,
    "calculated_PT": 2.4,
    "PA_falls_to": 1.7,
    "held_PT": 2.4,
    "changed_external_differential": 0.7,
    "limitation": "No UG28 capacity calculated; branch/code test ceiling remains separate. Not generic set-on graph result."
  },
  "pressure_reference_assumption": "Declared teaching scope: atmospheric exterior/local atmospheric gauge. Not an observed plant condition or a general exterior-model qualification."
}
