{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://www.calculatorx.com/schemas/physics.fluid.specific_force/1.0.0/input.json",
  "title": "Specific force — input",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "force",
        "depth"
      ],
      "description": "force (default, solve M) or depth (invert y). Not jump sequent|upstream. Not energy."
    },
    "b": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Rectangular surface width in m. Required. Alternatives: width, b_m, channel_width. Do not send side-weir B."
    },
    "Q": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Volume flow in m³/s. Required. Alternatives: flow, Q_m3_s."
    },
    "y": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Flow depth in m. Required for force. Alternatives: y_m, depth. Do not send y1, y2, yn, or yc."
    },
    "M": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Specific force in m². Required for depth. Alternatives: M_m2, specific_force, momentum. Do not send E."
    },
    "g": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Gravity in m/s². Optional; default 9.80665. Alternatives: g_m_s2."
    },
    "branch": {
      "type": "string",
      "description": "Depth invert branch: omit or subcritical (y>yc); super|supercritical|alternate (y<yc)."
    }
  },
  "required": [
    "b",
    "Q"
  ],
  "description": "Rectangular M=Q²/(gA)+A ȳ with ȳ=y/2. Not hydraulic jump y2, not specific energy E, not Froude as the product, not Manning n, not Q=Av, not critical slope Sc. (calculation_version 1.0.0)"
}
