pywrdrb.parameters.NYCCombinedReleaseFactor#

class pywrdrb.parameters.NYCCombinedReleaseFactor(model, node, drought_level_agg_nyc, mrf_drought_factor_agg_reservoir, mrf_drought_factor_individual_reservoir, **kwargs)#

Calculates the release factor for an NYC reservoir based on drought level and storage rule logic.

This parameter determines whether an NYC reservoir’s release should be based on its individual storage (flood operations) or on the aggregate storage across all three NYC reservoirs (normal or drought operations). It returns a weighted multiplier to adjust baseline reservoir releases depending on the prevailing drought level.

node#

The Pywr node associated with this parameter.

Type:

pywr.Node

drought_level_agg_nyc#

Parameter representing the aggregated NYC drought level index.

Type:

pywr.Parameter

mrf_drought_factor_agg_reservoir#

Drought factor parameter to use when operating based on aggregated NYC storage.

Type:

pywr.Parameter

mrf_drought_factor_individual_reservoir#

Drought factor parameter to use when operating based on individual reservoir storage.

Type:

pywr.Parameter

value(timestep, scenario_index)#

Calculate and return the reservoir’s release factor based on current drought logic.

load(model, data)#

Load the parameter from a model configuration dictionary.

Notes

The logic used to compute the release factor follows the formulation described in the GitHub issue dated 8/30/2022: users/ahamilton144

__init__(model, node, drought_level_agg_nyc, mrf_drought_factor_agg_reservoir, mrf_drought_factor_individual_reservoir, **kwargs)#

Initialize NYCCombinedReleaseFactor.

Parameters:
  • model (pywr.Model) – The Pywr model instance.

  • node (pywr.Node) – The reservoir node for which the release factor is applied.

  • drought_level_agg_nyc (pywr.Parameter) – Parameter indicating NYC system-wide drought index.

  • mrf_drought_factor_agg_reservoir (pywr.Parameter) – Drought multiplier for aggregated reservoir operations.

  • mrf_drought_factor_individual_reservoir (pywr.Parameter) – Drought multiplier for individual reservoir operations.

  • **kwargs – Additional keyword arguments passed to the base Parameter class.

Methods

__init__(model, node, drought_level_agg_nyc, ...)

Initialize NYCCombinedReleaseFactor.

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 NYCCombinedReleaseFactor from a model configuration dictionary.

register(cls)

reset(self)

set_double_variables(self, double[)

set_integer_variables(self, int[)

setup(self)

unregister(cls)

value(timestep, scenario_index)

Compute the current release factor for an NYC reservoir.

Attributes

children

comment

str

double_size

'int'

integer_size

'int'

is_constant

is_variable

'bool'

model

name

parents

size

tags

dict