pywrdrb.parameters.LaggedReservoirRelease#
- class pywrdrb.parameters.LaggedReservoirRelease(model, lag, roll_mean_lag_outflow, roll_mean_lagMinus1_outflow, roll_mean_lag_spill, roll_mean_lagMinus1_spill, **kwargs)#
Pywr doesnt have a parameter to return a previous (>1 timesteps) node flow or parameter value. But we can calculate release for N timesteps ago based on rolling avg parameters for N & (N-1) timesteps.
- lag#
number of timesteps ago
- Type:
int
- roll_mean_lag_outflow#
rolling mean outflow parameter for N timesteps ago
- Type:
Parameter
- roll_mean_lagMinus1_outflow#
rolling mean outflow parameter for (N-1) timesteps ago
- Type:
Parameter
- roll_mean_lag_spill#
rolling mean spill parameter for N timesteps ago
- Type:
Parameter
- roll_mean_lagMinus1_spill#
rolling mean spill parameter for (N-1) timesteps ago
- Type:
Parameter
- value(timestep, scenario_index)#
returns the release value for N timesteps ago
- load(model, data)#
loads the parameter from the model dictionary
- __init__(model, lag, roll_mean_lag_outflow, roll_mean_lagMinus1_outflow, roll_mean_lag_spill, roll_mean_lagMinus1_spill, **kwargs)#
Methods
__init__
(model, lag, roll_mean_lag_outflow, ...)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)Setup the parameter.
register
(cls)reset
(self)set_double_variables
(self, double[)set_integer_variables
(self, int[)setup
(self)unregister
(cls)value
(timestep, scenario_index)value_lag = lag * rollmean_lag - (lag - 1) * rollmean_lagMinus1
Attributes
children
comment
unicode
double_size
'int'
integer_size
'int'
is_constant
is_variable
'bool'
model
name
parents
size
tags
dict