{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://www.calculatorx.com/schemas/physics.fluid.critical_depth/1.0.0/input.json",
  "title": "Critical depth — input",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "depth",
        "unit_discharge"
      ],
      "description": "depth (default) or unit_discharge. Not Froude, specific energy, hydraulic jump, Manning, or Q=Av."
    },
    "q": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Unit discharge in m²/s. Required except unit_discharge invert. Alternative: q_m2_s or Q+b."
    },
    "q_m2_s": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Unit discharge in m²/s (query/UI). REST may send q."
    },
    "Q": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Volumetric discharge in m³/s. Use with b as q=Q/b. Do not send with q."
    },
    "b": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Rectangular width in m. Required with Q."
    },
    "yc": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Critical depth in m. Required for unit_discharge invert. Do not send with depth mode."
    },
    "g": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Gravity in m/s². Default 9.80665."
    }
  },
  "description": "Rectangular yc=(q²/g)^{1/3}. Not a Froude wrap, not specific energy, not a hydraulic jump, not Manning, not Q=Av. (calculation_version 1.0.0)"
}
