cronian.demands
Functions to add prosumer’s demands to the optimization model.
- It currently contains the following functions:
add_prosumer_demands
add_prosumer_base_demand
add_prosumer_flex_demands
Functions
|
Add the end_use demands of the prosumer to the optimization model. |
|
Add prosumer's base demand as Pyomo Param to the optimization model. |
|
Add prosumer's flexible demand as Pyomo Var (with Cons) to the model. |
Module Contents
- cronian.demands.add_prosumer_demands(model: pyomo.environ.AbstractModel, prosumer: dict, timeseries_data: pandas.DataFrame, number_of_timesteps: int, end_use_demand: str, init_store_level: float = 0) None
Add the end_use demands of the prosumer to the optimization model.
- Args:
model: The Pyomo model to add components to. prosumer: Dictionary containing prosumer details. timeseries_data: Timeseries data containing the availability factors for
VRE generators and EVs doing V2G, demand profiles for prosumers, …
number_of_timesteps: Number of timesteps to run the optimization for. end_use_demand: Name of end_use demand, e.g., space_heating. init_store_level: Amount of energy to initialize the store with from
previously satisfied flexible demand.
- cronian.demands.add_prosumer_base_demand(model: pyomo.environ.AbstractModel, prosumer: dict, timeseries_data: pandas.DataFrame, number_of_timesteps: int, end_use_demand: str) None
Add prosumer’s base demand as Pyomo Param to the optimization model.
- Args:
model: Pyomo Abstract model. prosumer: Dictionary containing prosumer details. timeseries_data: Timeseries data containing the availability factors for
VRE generators, demand profiles of prosumers, etc.
number_of_timesteps: Number of timesteps to run the optimization for. end_use_demand: Name of end_use demand, e.g., space_heating.
- cronian.demands.add_prosumer_flex_demands(model: pyomo.environ.AbstractModel, prosumer: dict, timeseries_data: pandas.DataFrame, number_of_timesteps: int, end_use_demand: str, init_store_level: float = 0) None
Add prosumer’s flexible demand as Pyomo Var (with Cons) to the model.
Flexible demand is modeled as a store, with constraints on its energy level feasible region (e_min and e_max) and energy level consistency.
If init_store_level is given, the energy level feasible region is shifted down by the specified amount, with any resulting negative values for e_min set to 0.
- Args:
model: Pyomo Abstract model. prosumer: Dictionary containing prosumer details. timeseries_data: Timeseries data containing the availability factors for
VRE generators, demand profiles of prosumers, etc.
number_of_timesteps: Number of timesteps to run the optimization for. end_use_demand: Name of end_use demand (electricity_for_space_heating). init_store_level: Amount of energy to initialize the store with from
previously satisfied flexible demand.