Weir Model¶
- class morl4water.core.models.weir.Weir(name: str, max_capacity: float, max_action: list[float], objective_function, integration_timestep_size: relativedelta, objective_name: str = '', stored_water: float = 0, spillage: float = 0, observation_space=Box(0.0, 1.0, (1,), float32), action_space=Box(0.0, 1.0, (1,), float32))¶
Bases:
ControlledFacility
A class used to represent reservoirs of the problem
- name¶
Lowercase non-spaced name of the reservoir
- Type:
str
- storage_vector¶
m3 A vector that holds the volume of the water in the reservoir throughout the simulation horizon
- Type:
np.array (1xH)
- level_vector¶
m A vector that holds the elevation of the water in the reservoir throughout the simulation horizon
- Type:
np.array (1xH)
- release_vector¶
m3/s A vector that holds the actual average release per month from the reservoir throughout the simulation horizon
- Type:
np.array (1xH)
- evap_rates¶
cm Monthly evaporation rates of the reservoir
- Type:
np.array (1x12)
- determine_info()¶
Return dictionary with parameters of the reservoir.
- storage_to_level(h=float)¶
Returns the level(height) based on volume.
- level_to_storage(s=float)¶
Returns the volume based on level(height).
- level_to_surface(h=float)¶
Returns the surface area based on level.
- determine_outflow(action: float)¶
Returns average monthly water release.
- determine_info() dict ¶
Returns information about the reservoir.
- determine_observation() float ¶
- determine_outflow(actions: array) list[float] ¶
- determine_reward() float ¶
- is_terminated() bool ¶
- reset() None ¶