SimulationPlanner#
- class hydromodpy.simulation.SimulationPlanner[source]#
Bases:
objectValidate simulation config and emit concrete runnable units.
- build(config)[source]#
Convert
configinto a validated orderedSimulationPlan.The planner performs four key tasks: :rtype:
SimulationPlanpreserve the user-declared process order instead of re-sorting runs,
expand one process entry into one
ProcessRunper solver,verify uniqueness of both process ids and concrete run ids,
resolve each required dependency to a previously planned run.
Example#
If the user declares:
mesh_mainwithtype="mesh", backend="catchment"flow_mainwithsolvers=["modflow_nwt"]transport_mainwithsolvers=["modpath", "mt3dms"]
then the planner emits four ordered runs:
mesh_main::catchmentflow_main::modflow_nwttransport_main::modpathtransport_main::mt3dms
and each transport run is bound to the earlier compatible flow run required by the solver compatibility rules.
- param config:
- type config:
SimulationConfig
- Parameters:
config (SimulationConfig)
- Return type: