Simulation time-step phases
The phases of execution followed in a standard run are:
- Start the simulation time-step.
- Read and Assign input values from a time series for the current time-step. For example, if you are using an inflow node and the data source for the inflow node is a time series, then a value is read from the time series corresponding to the current time-step and assigned to the inflow node.
- Start River Operations mode (if used in the scenario): This overrides the values assigned from the input time series from the tabular view.
- Start the forecasting phase: Run the forecast models which do not use expressions (if River Operations is being used).
- Expression Editor StartOfTimeStep execution: This phase collects the variables and executes the expressions whose evaluation time is equal to ‘StartOfTimeStep’.
- Format the Tabular editor: The Tabular editor's cell highlighting can be driven by expressions. In this phase, all the expressions with evaluation time ‘StartOfTimeStep’ are evaluated to a boolean value, which can be used to colour a cell or bolden the text when the expression is true.
- Continue forecasting phase: Run the forecast models which use expressions (if River Operations is being used).
- River Operations override expressions and forecast values: If River Operations is used, then:
- Override the values generated by expressions.
- Override the values generated by forecast models.
- Plugins: All valid Source plugins will be notified before each simulation time-step is run.
- Initialise Resource Assessment:
- Enforces the rules for ordering/water accounting.
- Collects the variables and executes the expressions whose evaluation time is equal to ‘DuringResourceAssessment’.
- Ordering phase:
- Processes the release of water to supply downstream water orders.
- Collects the variables and executes the expressions whose evaluation time is equal to ‘DuringOrderingPhase’.
NetLP Ordering: All the expressions with evaluation time ‘DuringOrderingPhase’ are evaluated- Initialise NetLP iteration.
- NetLP iteration.
- Finalise NetLP iteration
Rules Based Ordering: Steps i and iii above represent the phase where all the expressions with evaluation time ‘DuringOrderingPhase’ are processed.- ProcessWaterUsers
- ProcessConstraints
- ProcessOrders
- Run the network by one time-step
- Order the nodes, links and catchments for sequential running.
- Then, for every element in the network:
- Collect model variables and execute expressions whose evaluation time is equal to ‘DuringFlowPhase’.
- Pre time-step phase of water ownership tracker.
- Pre-flow phase of river management. Generates additional release requests as off-allocation allocations are known at this point.
- The wetland cluster that the element belongs to is solved for this time-step.
- Flow phase is executed for the current simulation time-step.
- Post time-step phase of water ownership tracker.
- Post-flow phase of river management is run. In this phase, constraint factors are calculated in the new rules based ordering system. A constraint factor signifies a constraint relationship between actual flow and requested orders.
- Constituent modeling is executed.
- Resource Assessment PostRunTimeStep call: This phase fixes any shortfalls for ordering/water accounting.
- Finalise constituent modeling (marker routing).
- Recording phase: Writes the current time-step results to the requested recorders.
- Format the Tabular editor: Evaluates all the expressions with evaluation time ‘EndOfTimeStep’. Updates the Tabular Editor formatting according to the results from the current time-step.
- End of the forecasting phase.
- Expression Editor EndOfTimeStep execution: This phase collects the variables and executes the expressions whose evaluation time is equal to ‘EndOfTimeStep’.
- Plugins: All valid Source plugins will be notified after every simulation time-step is run.
- End of the simulation time-step.