{
 "about": {
  "what": "Closed forms the solver must reproduce at long horizons (chemostat steady states, washout) and at stated times (batch Monod growth without maintenance), and Pirt's observed yield.",
  "forms": "S* = Ks(D + Y·ms)/(μmax − D); X* = D(Sf − S*)/(D/Y + ms); washout D = (μmax·Sf − Ks·Y·ms)/(Ks + Sf) (the CSO's algebra, derived again here); Haldane by the quadratic; Yobs = D/(D/Y + ms)",
  "oracle": "hand-worked closed forms in Python, roots by scipy.optimize.brentq",
  "tolerance": "within 0.1 percent",
  "model": "hosts-model-2",
  "versions": {
   "python": "3.12.14",
   "scipy": "1.17.0",
   "numpy": "2.3.5"
  },
  "recordedOn": "2026-10-07",
  "script": "pipeline/bioreactor-simulator/reference.py"
 },
 "chemostat": [
  {
   "label": "Pirt as formulated here, the fast glucose set",
   "kinetics": {
    "muMax": 0.61,
    "Ks": 0.05,
    "Ki": null,
    "Yxs": 0.42,
    "ms": 0.067,
    "Ko": 0.1,
    "substrate": "glucose",
    "biomassCarbon": 0.4738,
    "biomassGamma": 4.169999999999999,
    "alpha": 0.0,
    "beta": 0.0
   },
   "Sf": 5.0,
   "steadyStates": [
    {
     "D": 0.05,
     "S": 0.00697678571429,
     "X": 1.34186700154,
     "Yobs": 0.268748400307
    },
    {
     "D": 0.1,
     "S": 0.012562745098,
     "X": 1.63471487986,
     "Yobs": 0.327766505385
    },
    {
     "D": 0.2,
     "S": 0.0278219512195,
     "X": 1.83073093757,
     "Yobs": 0.368194968002
    },
    {
     "D": 0.3,
     "S": 0.0529258064516,
     "X": 1.89958965194,
     "Yobs": 0.383982446517
    },
    {
     "D": 0.45,
     "S": 0.14941875,
     "X": 1.91734608326,
     "Yobs": 0.395281716652
    },
    {
     "D": 0.55,
     "S": 0.481783333333,
     "X": 1.80528600339,
     "Yobs": 0.399557200678
    },
    {
     "D": 0.6,
     "S": 3.1407,
     "X": 0.745922246633,
     "Yobs": 0.401184449327
    }
   ],
   "washoutD": 0.603681782178
  },
  {
   "label": "without maintenance (the brief's S* = Ks·D/(μmax − D), X* = Y(Sf − S*))",
   "kinetics": {
    "muMax": 0.61,
    "Ks": 0.05,
    "Ki": null,
    "Yxs": 0.42,
    "ms": 0.0,
    "Ko": 0.1,
    "substrate": "glucose",
    "biomassCarbon": 0.4738,
    "biomassGamma": 4.169999999999999,
    "alpha": 0.0,
    "beta": 0.0
   },
   "Sf": 5.0,
   "steadyStates": [
    {
     "D": 0.1,
     "S": 0.00980392156863,
     "X": 2.09588235294,
     "Yobs": 0.42
    },
    {
     "D": 0.3,
     "S": 0.0483870967742,
     "X": 2.07967741935,
     "Yobs": 0.42
    },
    {
     "D": 0.5,
     "S": 0.227272727273,
     "X": 2.00454545455,
     "Yobs": 0.42
    },
    {
     "D": 0.6,
     "S": 3.0,
     "X": 0.84,
     "Yobs": 0.42
    }
   ],
   "washoutD": 0.60396039604
  },
  {
   "label": "Haldane on methanol",
   "kinetics": {
    "muMax": 0.146,
    "Ks": 1.5,
    "Ki": 8.86,
    "Yxs": 0.4,
    "ms": 0.016,
    "Ko": 0.1,
    "substrate": "methanol",
    "biomassCarbon": 0.4228,
    "biomassGamma": 4.06,
    "alpha": 0.0,
    "beta": 0.0
   },
   "Sf": 20.0,
   "steadyStates": [
    {
     "D": 0.02,
     "S": 0.316656966525,
     "X": 5.96464940408,
     "Yobs": 0.30303030303
    },
    {
     "D": 0.05,
     "S": 0.939818196044,
     "X": 6.75892971771,
     "Yobs": 0.354609929078
    },
    {
     "D": 0.07,
     "S": 1.93093439318,
     "X": 6.62217064124,
     "Yobs": 0.366492146597
    }
   ],
   "washoutD": 0.0393336788091
  }
 ],
 "batchMonod": {
  "kinetics": {
   "muMax": 0.61,
   "Ks": 0.05,
   "Ki": null,
   "Yxs": 0.42,
   "ms": 0.0,
   "Ko": 0.1,
   "substrate": "glucose",
   "biomassCarbon": 0.4738,
   "biomassGamma": 4.169999999999999,
   "alpha": 0.0,
   "beta": 0.0
  },
  "X0": 0.1,
  "S0": 10.0,
  "rows": [
   {
    "t": 0.0,
    "X": 0.1,
    "S": 10.0
   },
   {
    "t": 1.0,
    "X": 0.183480431783,
    "S": 9.80123706718
   },
   {
    "t": 2.0,
    "X": 0.336621510002,
    "S": 9.43661545238
   },
   {
    "t": 4.0,
    "X": 1.13222616852,
    "S": 7.54231864638
   },
   {
    "t": 6.0,
    "X": 3.77909018633,
    "S": 1.24026146111
   },
   {
    "t": 7.0,
    "X": 4.3,
    "S": 1.06581410364e-14
   },
   {
    "t": 7.5,
    "X": 4.3,
    "S": 1.06581410364e-14
   },
   {
    "t": 8.0,
    "X": 4.3,
    "S": 1.06581410364e-14
   },
   {
    "t": 8.5,
    "X": 4.3,
    "S": 1.06581410364e-14
   },
   {
    "t": 9.0,
    "X": 4.3,
    "S": 1.06581410364e-14
   },
   {
    "t": 10.0,
    "X": 4.3,
    "S": 1.06581410364e-14
   }
  ]
 }
}
