{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://www.calculatorx.com/schemas/physics.fluid.sudden_contraction/1.0.0/input.json",
  "title": "Sudden contraction — input",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "head",
        "pressure",
        "velocity",
        "coefficient"
      ],
      "description": "head (default), pressure, velocity, or coefficient. Not expansion, minor-loss, Darcy, orifice, or Q=Av."
    },
    "v2": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Downstream speed in m/s. Required except velocity invert. Alternative: v2_m_s."
    },
    "v2_m_s": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Downstream speed in m/s (query/UI). REST may send v2."
    },
    "C_c": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Vena-contracta coefficient in (0, 1). Optional; default 0.62. Required except coefficient invert. Alternatives: Cc, vena."
    },
    "h": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Head loss in m. Required for velocity and coefficient invert. Alternatives: hm, h_m."
    },
    "h_m": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Head loss in m (query/UI). REST may send h."
    },
    "rho": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Density in kg/m³. Optional; default 1000."
    },
    "g": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Gravity in m/s². Optional; default 9.80665."
    }
  },
  "description": "Vena-contracta h=(1/C_c−1)² v2²/(2g). Default C_c=0.62. Not expansion (v1−v2)², not minor-loss K given, not orifice C_d, not Q=Av. (calculation_version 1.0.0)"
}
