{
  "modelVersion": "1.1.0",
  "illustrative": true,
  "throughput": 0,
  "unitCost": null,
  "bottlenecks": [
    "Vessel loading"
  ],
  "stageResults": [
    {
      "name": "Mine release",
      "capacity": 18,
      "availability": 90,
      "variableCost": 2.4,
      "fixedCost": 14,
      "effectiveCapacity": 16.2,
      "utilisation": 0,
      "spareCapacity": 16.2,
      "unitCost": null,
      "annualCost": 14,
      "binding": "Spare"
    },
    {
      "name": "Rail corridor",
      "capacity": 14,
      "availability": 85,
      "variableCost": 7.6,
      "fixedCost": 42,
      "effectiveCapacity": 11.9,
      "utilisation": 0,
      "spareCapacity": 11.9,
      "unitCost": null,
      "annualCost": 42,
      "binding": "Spare"
    },
    {
      "name": "Port stockyard",
      "capacity": 16,
      "availability": 90,
      "variableCost": 2.8,
      "fixedCost": 20,
      "effectiveCapacity": 14.4,
      "utilisation": 0,
      "spareCapacity": 14.4,
      "unitCost": null,
      "annualCost": 20,
      "binding": "Spare"
    },
    {
      "name": "Vessel loading",
      "capacity": 15,
      "availability": 0,
      "variableCost": 3.2,
      "fixedCost": 16,
      "effectiveCapacity": 0,
      "utilisation": null,
      "spareCapacity": 0,
      "unitCost": null,
      "annualCost": 16,
      "binding": "Binding"
    }
  ],
  "expansions": [
    {
      "name": "Mine release",
      "expandedCapacity": 19.44,
      "throughput": 0,
      "gain": 0,
      "nextConstraint": "Vessel loading"
    },
    {
      "name": "Rail corridor",
      "expandedCapacity": 14.28,
      "throughput": 0,
      "gain": 0,
      "nextConstraint": "Vessel loading"
    },
    {
      "name": "Port stockyard",
      "expandedCapacity": 17.28,
      "throughput": 0,
      "gain": 0,
      "nextConstraint": "Vessel loading"
    },
    {
      "name": "Vessel loading",
      "expandedCapacity": 0,
      "throughput": 0,
      "gain": 0,
      "nextConstraint": "Vessel loading"
    }
  ],
  "stressedThroughput": 0,
  "stressCost": null,
  "variableCost": 16,
  "fixedCost": 92,
  "capacityEvaluation": {
    "policy": "Exact rational capacities, throughput and binding comparisons from canonical JSON-number decimals. Cost totals and plotted numeric values remain Number approximations.",
    "demand": {
      "numerator": "20",
      "denominator": "1",
      "decimal": "2.000000000000000000000000000000000000000e1"
    },
    "throughput": {
      "numerator": "0",
      "denominator": "1",
      "decimal": "0"
    },
    "unservedDemand": {
      "numerator": "20",
      "denominator": "1",
      "decimal": "2.000000000000000000000000000000000000000e1"
    },
    "stressedThroughput": {
      "numerator": "0",
      "denominator": "1",
      "decimal": "0"
    },
    "stages": [
      {
        "name": "Mine release",
        "effectiveCapacity": {
          "numerator": "81",
          "denominator": "5",
          "decimal": "1.620000000000000000000000000000000000000e1"
        }
      },
      {
        "name": "Rail corridor",
        "effectiveCapacity": {
          "numerator": "119",
          "denominator": "10",
          "decimal": "1.190000000000000000000000000000000000000e1"
        }
      },
      {
        "name": "Port stockyard",
        "effectiveCapacity": {
          "numerator": "72",
          "denominator": "5",
          "decimal": "1.440000000000000000000000000000000000000e1"
        }
      },
      {
        "name": "Vessel loading",
        "effectiveCapacity": {
          "numerator": "0",
          "denominator": "1",
          "decimal": "0"
        }
      }
    ],
    "expansions": [
      {
        "name": "Mine release",
        "capacity": {
          "numerator": "486",
          "denominator": "25",
          "decimal": "1.944000000000000000000000000000000000000e1"
        },
        "throughput": {
          "numerator": "0",
          "denominator": "1",
          "decimal": "0"
        },
        "gain": {
          "numerator": "0",
          "denominator": "1",
          "decimal": "0"
        }
      },
      {
        "name": "Rail corridor",
        "capacity": {
          "numerator": "357",
          "denominator": "25",
          "decimal": "1.428000000000000000000000000000000000000e1"
        },
        "throughput": {
          "numerator": "0",
          "denominator": "1",
          "decimal": "0"
        },
        "gain": {
          "numerator": "0",
          "denominator": "1",
          "decimal": "0"
        }
      },
      {
        "name": "Port stockyard",
        "capacity": {
          "numerator": "432",
          "denominator": "25",
          "decimal": "1.728000000000000000000000000000000000000e1"
        },
        "throughput": {
          "numerator": "0",
          "denominator": "1",
          "decimal": "0"
        },
        "gain": {
          "numerator": "0",
          "denominator": "1",
          "decimal": "0"
        }
      },
      {
        "name": "Vessel loading",
        "capacity": {
          "numerator": "0",
          "denominator": "1",
          "decimal": "0"
        },
        "throughput": {
          "numerator": "0",
          "denominator": "1",
          "decimal": "0"
        },
        "gain": {
          "numerator": "0",
          "denominator": "1",
          "decimal": "0"
        }
      }
    ]
  },
  "metrics": [
    {
      "key": "throughput",
      "label": "Deliverable throughput",
      "value": 0,
      "unit": "Mt/year",
      "detail": ""
    },
    {
      "key": "cost",
      "label": "Whole-chain cost",
      "value": null,
      "unit": "USD/t",
      "detail": "All stages use the same chain throughput."
    },
    {
      "key": "gap",
      "label": "Unserved demand",
      "value": 20,
      "unit": "Mt/year",
      "detail": ""
    },
    {
      "key": "stress",
      "label": "Availability stress",
      "value": 0,
      "unit": "Mt/year",
      "detail": "Each availability falls by 10 percentage points."
    }
  ],
  "tables": [
    {
      "title": "Whole-chain operating balance",
      "columns": [
        {
          "key": "name",
          "label": "Stage",
          "unit": ""
        },
        {
          "key": "capacity",
          "label": "Nominal",
          "unit": "Mt/year"
        },
        {
          "key": "effectiveCapacity",
          "label": "Effective",
          "unit": "Mt/year"
        },
        {
          "key": "utilisation",
          "label": "Utilisation",
          "unit": "%"
        },
        {
          "key": "spareCapacity",
          "label": "Spare",
          "unit": "Mt/year"
        },
        {
          "key": "unitCost",
          "label": "Stage cost",
          "unit": "USD/t"
        },
        {
          "key": "annualCost",
          "label": "Annual cost",
          "unit": "USDm"
        },
        {
          "key": "binding",
          "label": "Constraint",
          "unit": ""
        }
      ],
      "rows": [
        {
          "name": "Mine release",
          "capacity": 18,
          "availability": 90,
          "variableCost": 2.4,
          "fixedCost": 14,
          "effectiveCapacity": 16.2,
          "utilisation": 0,
          "spareCapacity": 16.2,
          "unitCost": null,
          "annualCost": 14,
          "binding": "Spare"
        },
        {
          "name": "Rail corridor",
          "capacity": 14,
          "availability": 85,
          "variableCost": 7.6,
          "fixedCost": 42,
          "effectiveCapacity": 11.9,
          "utilisation": 0,
          "spareCapacity": 11.9,
          "unitCost": null,
          "annualCost": 42,
          "binding": "Spare"
        },
        {
          "name": "Port stockyard",
          "capacity": 16,
          "availability": 90,
          "variableCost": 2.8,
          "fixedCost": 20,
          "effectiveCapacity": 14.4,
          "utilisation": 0,
          "spareCapacity": 14.4,
          "unitCost": null,
          "annualCost": 20,
          "binding": "Spare"
        },
        {
          "name": "Vessel loading",
          "capacity": 15,
          "availability": 0,
          "variableCost": 3.2,
          "fixedCost": 16,
          "effectiveCapacity": 0,
          "utilisation": null,
          "spareCapacity": 0,
          "unitCost": null,
          "annualCost": 16,
          "binding": "Binding"
        }
      ]
    },
    {
      "title": "Single-stage 20% capacity expansion",
      "columns": [
        {
          "key": "name",
          "label": "Expanded stage",
          "unit": ""
        },
        {
          "key": "expandedCapacity",
          "label": "New effective capacity",
          "unit": "Mt/year"
        },
        {
          "key": "throughput",
          "label": "Chain flow",
          "unit": "Mt/year"
        },
        {
          "key": "gain",
          "label": "Flow gain",
          "unit": "Mt/year"
        },
        {
          "key": "nextConstraint",
          "label": "Next constraint",
          "unit": ""
        }
      ],
      "rows": [
        {
          "name": "Mine release",
          "expandedCapacity": 19.44,
          "throughput": 0,
          "gain": 0,
          "nextConstraint": "Vessel loading"
        },
        {
          "name": "Rail corridor",
          "expandedCapacity": 14.28,
          "throughput": 0,
          "gain": 0,
          "nextConstraint": "Vessel loading"
        },
        {
          "name": "Port stockyard",
          "expandedCapacity": 17.28,
          "throughput": 0,
          "gain": 0,
          "nextConstraint": "Vessel loading"
        },
        {
          "name": "Vessel loading",
          "expandedCapacity": 0,
          "throughput": 0,
          "gain": 0,
          "nextConstraint": "Vessel loading"
        }
      ]
    }
  ],
  "warnings": [
    "The chain has zero flow. Fixed costs remain, and cost per tonne is unavailable.",
    "Unserved illustrative demand is 20 Mt/year. This is a deterministic capacity gap, not a forecast."
  ],
  "summary": "The binding stage is Vessel loading. A 20% expansion of Mine release creates the largest tested gain of 0 Mt/year. Availability stress changes flow to 0 Mt/year and unit cost to unavailable.",
  "methods": [
    "Effective stage capacity = nominal capacity × availability.",
    "Serial throughput = minimum of demand and effective stage capacities.",
    "Chain unit cost = sum of variable cost + sum of annual fixed cost / actual annual throughput. USDm divided by Mt gives USD/t.",
    "Each expansion case increases one nominal capacity by 20%; availability stress reduces every stage by 10 percentage points.",
    "Capacity products, throughput, demand gaps and constraint membership use exact rational arithmetic for each canonical decimal input; plotted quantities and costs use numeric approximations."
  ],
  "limitations": [
    "Steady-state serial system, with no routing alternatives, queues, seasonality, dispatch or inventory simulation.",
    "Availability and cost values are user assumptions. No geographic or actual operating project is represented.",
    "Exactness applies to the supplied canonical decimal values, not their empirical accuracy. Annual cost and display calculations retain floating-point precision.",
    "Numerical input precision: use zero or absolute values of at least 0.000000001. Smaller nonzero inputs are rejected explicitly."
  ]
}
