EnergyReservoirStorage
Package: PowerOperationsOpenAPIModels · Source: Operations/StaticInjection/EnergyReservoirStorage.json
An energy storage device, modeled as a generic energy reservoir.
This is suitable for modeling storage charging and discharging with average efficiency losses, ignoring the physical dynamics of the storage unit. A variety of energy storage types and chemistries can be modeled with this approach. For pumped hydro storage, alternatively see HydroPumpTurbine and HydroReservoir.
Properties
| Property | Type | Required | Unit | Description |
|---|---|---|---|---|
id | integer | yes | — | Unique integer identifier for this component. |
name | string | yes | — | Name of the component. Components of the same type (e.g., PowerLoad) must have unique names, but components of different types (e.g., PowerLoad and ACBus) can have the same name. |
available | boolean | yes | — | Indicator of whether the component is connected and online (true) or disconnected, offline, or down (false). Unavailable components are excluded during simulations. |
bus | integer | yes | — | ID of the bus that this component is connected to. |
prime_mover_type | string (PrimeMovers) | yes | — | Prime mover technology according to EIA 923. |
storage_technology_type | string (StorageTech) | yes | — | Storage Technology Complementary to EIA 923. |
storage_capacity | number | yes | MWh / MWmin (by energy_units) | Maximum storage capacity (can be in units of, e.g., MWh for batteries or liters for hydrogen). Divided by base_power this gives an approximate duration, assuming unity power factor: in hours under MWH, in minutes under MWMIN. Units: per energy_units — MWH: MWh, MWMIN: MWmin . |
energy_units | string (EnergyUnitBasis) | — | — | Unit basis for storage_capacity. MWH is the default interchange form; MWMIN records the same energy on the minutes basis used by operational durations. |
storage_level_limits | MinMax | yes | — | Minimum and maximum allowable storage levels [0, 1], which can be used to model derates or other restrictions, such as state-of-charge restrictions on battery cycling. |
initial_storage_capacity_level | number | yes | 1 | Initial storage capacity level as a ratio [0, 1.0] of storage_capacity. Units: 1. |
rating | number | yes | MVA / pu (by power_units) | Maximum AC side output power rating of the unit. Not to be confused with base_power. Units: per power_units — NATURAL_UNITS: MVA, COMPONENT_BASE: pu . |
active_power | number | yes | MW / pu (by power_units) | Initial active power set point of the unit. For power flow, this is the steady state operating point of the system. For production cost modeling, this may or may not be used as the initial starting point for the solver, depending on the solver used. Units: per power_units — NATURAL_UNITS: MW, COMPONENT_BASE: pu . |
input_active_power_limits | MinMax | yes | MW / pu (by power_units) | Minimum and maximum limits on the input active power (i.e., charging). Units: per power_units — NATURAL_UNITS: MW, COMPONENT_BASE: pu . |
output_active_power_limits | MinMax | yes | MW / pu (by power_units) | Minimum and maximum limits on the output active power (i.e., discharging). Units: per power_units — NATURAL_UNITS: MW, COMPONENT_BASE: pu . |
efficiency | InOut | yes | — | Average efficiency [0, 1] in (charging/filling) and out (discharging/consuming) of the storage system. |
reactive_power | number | yes | MVAr / pu (by power_units) | Initial reactive power set point of the unit. Units: per power_units — NATURAL_UNITS: MVAr, COMPONENT_BASE: pu . |
reactive_power_limits | MinMax | — | MVAr / pu (by power_units) | Minimum and maximum reactive power limits. Set to null if not applicable. Units: per power_units — NATURAL_UNITS: MVAr, COMPONENT_BASE: pu . |
base_power | number | yes | MVA | Base power of the unit for per unitization. Units: MVA. |
power_units | string (UnitSystem) | yes | — | Unit basis for this component’s power-family fields (active/reactive/apparent power, ratings, limits, ramp rates). COMPONENT_BASE: per unit on this component’s own base_power. NATURAL_UNITS: the field’s physical unit. |
operation_cost | StorageCost or MarketBidCost or MarketBidTimeSeriesCost or ImportExportTimeSeriesCost | yes | — | Operating cost of storage. or MarketBidCost |
conversion_factor | number | — | 1 | Conversion factor of storage_capacity to MWh, if different than 1.0. For example, X MWh/liter hydrogen. Units: 1. |
storage_target | number | — | 1 | Storage target at the end of simulation as ratio of storage capacity. Units: 1. |
cycle_limits | integer | — | 1 | Storage Maximum number of cycles per year. Units: 1. |
ramp_limits | UpDown | — | MW/min / pu/min (by power_units) | Ramp up and ramp down limits. Units: per power_units — NATURAL_UNITS: MW/min, COMPONENT_BASE: pu/min . |
self_discharge | number | — | 1/min | Self-discharge (leakage loss) as a fraction of the stored energy lost per minute (pu/min of storage_capacity), modeled as E[t] = (1 - self_discharge * dt) * E[t-1]; dt must be on the same minutes basis. Units: 1/min. |
standing_loss | number | — | MW / pu (by power_units) | Constant standing-loss power drawn by the storage system. Reduces the effective charging power (p_in - standing_loss) and increases the power drawn from the storage when discharging (p_out + standing_loss). Units: per power_units — NATURAL_UNITS: MW, COMPONENT_BASE: pu . |
dynamic_injector | integer or null | — | — | ID of the corresponding dynamic injection device, if any. |