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