aquakin.evaluate_bsm1#
- aquakin.evaluate_bsm1(plant, solution, params=None, *, effluent_port='clarifier.overflow', internal_recycle_port='tank5_split.internal_recycle', ras_port='underflow_split.ras', waste_port='underflow_split.waste', do_saturation=8.0, aeration_system=None)[source]#
Compute the BSM1 performance indices from a solved plant.
- Parameters:
plant (Plant) – A BSM1 plant from
build_bsm1()(open- or closed-loop).solution (PlantSolution) – A solution from
plant.solveover the evaluation window. Use a fine enought_evalto resolve the influent dynamics; the indices are trapezoidal time-integrals over the saved points.params (jnp.ndarray, optional) – The plant parameters used for the run (defaults to the plant defaults).
effluent_port (str, optional) – Final-effluent stream to score. Defaults to
"clarifier.overflow".internal_recycle_port (str, optional) – Pumped-stream endpoints; the defaults match
build_bsm1.ras_port (str, optional) – Pumped-stream endpoints; the defaults match
build_bsm1.waste_port (str, optional) – Pumped-stream endpoints; the defaults match
build_bsm1.do_saturation (float, optional) – DO saturation used in the aeration-energy formula (gO2/m^3). This is the nominal saturation by BSM2 convention; it is not temperature-adjusted even when the plant runs with
do_temperature_correction(where the reactor’s actual driving-force saturation is scaled byC_s(T)/C_s(ref)). So the reported AE reflects the BSM2 definition, not the temperature- corrected oxygen transfer.
- Returns:
EQI, OCI and all component terms.
- Return type: