pywrdrb.parameters.VolBalanceNYCDownstreamMRF_step2#
- class pywrdrb.parameters.VolBalanceNYCDownstreamMRF_step2(model, step, total_agg_mrf_montagueTrenton, mrf_target_individual_neversink, flood_release_neversink, max_release_neversink, lower_basin_agg_mrf_trenton, **kwargs)#
Calculates the volume of additional flow that Neversink Reservoir must release during Step 2 of the staggered MRF coordination process, accounting for prior contributions and constraints.
This parameter computes how much Neversink can contribute toward Montague and/or Trenton flow targets, beyond its mandated minimum and flood releases, constrained by its controllable release capacity.
- step#
The coordination step (fixed as 2 for this class).
- Type:
int
- total_agg_mrf_montagueTrenton#
Total release required from NYC reservoirs to meet MRF targets at Montague or Trenton.
- Type:
Parameter
- mrf_target_individual_neversink#
Minimum mandated release from Neversink reservoir under FFMP.
- Type:
Parameter
- flood_release_neversink#
Scheduled flood control release from Neversink.
- Type:
Parameter
- max_release_neversink#
Maximum controlled release capacity from Neversink.
- Type:
Parameter
- lower_basin_agg_mrf_trenton#
Lower basin contribution to Trenton flow target (informational only).
- Type:
Parameter
- value(timestep, scenario_index)#
Computes the feasible additional release from Neversink to help meet flow targets.
- load(model, data)#
Loads all required model parameters and returns the parameter instance.
- __init__(model, step, total_agg_mrf_montagueTrenton, mrf_target_individual_neversink, flood_release_neversink, max_release_neversink, lower_basin_agg_mrf_trenton, **kwargs)#
Initialize the VolBalanceNYCDownstreamMRF_step2 parameter.
This class handles Step 2 of the NYC coordinated release process, determining how much additional water Neversink can release given its constraints and obligations.
- Parameters:
model (Model) – The Pywr model instance.
step (int) – Coordination step (should be 2).
total_agg_mrf_montagueTrenton (Parameter) – Total volume of release required across all NYC reservoirs to meet Montague/Trenton target.
mrf_target_individual_neversink (Parameter) – Required minimum FFMP release from Neversink.
flood_release_neversink (Parameter) – Additional flood-mitigation release from Neversink.
max_release_neversink (Parameter) – Maximum allowed controlled release from Neversink.
lower_basin_agg_mrf_trenton (Parameter) – Flow from lower basin reservoirs toward Trenton (used for context, not directly in computation).
**kwargs – Additional keyword arguments passed to the base Pywr Parameter class.
Notes
This step assumes Cannonsville and Pepacton have already contributed in Step 1. Neversink’s share is constrained by its physical release limits and prior mandated releases.
Methods
__init__
(model, step, ...)Initialize the VolBalanceNYCDownstreamMRF_step2 parameter.
after
(self)before
(self)finish
(self)get_all_values
(self)get_constant_value
(self)Return a constant value.
get_double_lower_bounds
(self)get_double_upper_bounds
(self)get_double_variables
(self)get_integer_lower_bounds
(self)get_integer_upper_bounds
(self)get_integer_variables
(self)get_value
(self, ScenarioIndex scenario_index)load
(model, data)Load model parameters and create a VolBalanceNYCDownstreamMRF_step2 instance.
register
(cls)reset
(self)set_double_variables
(self, double[)set_integer_variables
(self, int[)setup
(self)unregister
(cls)value
(timestep, scenario_index)Compute the additional volume that Neversink can release to meet downstream flow targets.
Attributes
children
comment
str
double_size
'int'
integer_size
'int'
is_constant
is_variable
'bool'
model
name
parents
size
tags
dict