HydroPumpedStorage
PowerSystems.HydroPumpedStorage
— Typemutable struct HydroPumpedStorage <: HydroGen
name::String
available::Bool
bus::Bus
active_power::Float64
reactive_power::Float64
rating::Float64
base_power::Float64
prime_mover::PrimeMovers
active_power_limits::NamedTuple{(:min, :max), Tuple{Float64, Float64}}
reactive_power_limits::Union{Nothing, NamedTuple{(:min, :max), Tuple{Float64, Float64}}}
ramp_limits::Union{Nothing, NamedTuple{(:up, :down), Tuple{Float64, Float64}}}
time_limits::Union{Nothing, NamedTuple{(:up, :down), Tuple{Float64, Float64}}}
rating_pump::Float64
active_power_limits_pump::NamedTuple{(:min, :max), Tuple{Float64, Float64}}
reactive_power_limits_pump::Union{Nothing, NamedTuple{(:min, :max), Tuple{Float64, Float64}}}
ramp_limits_pump::Union{Nothing, NamedTuple{(:up, :down), Tuple{Float64, Float64}}}
time_limits_pump::Union{Nothing, NamedTuple{(:up, :down), Tuple{Float64, Float64}}}
storage_capacity::NamedTuple{(:up, :down), Tuple{Float64, Float64}}
inflow::Float64
outflow::Float64
initial_storage::NamedTuple{(:up, :down), Tuple{Float64, Float64}}
storage_target::NamedTuple{(:up, :down), Tuple{Float64, Float64}}
operation_cost::OperationalCost
pump_efficiency::Float64
conversion_factor::Float64
time_at_status::Float64
services::Vector{Service}
dynamic_injector::Union{Nothing, DynamicInjection}
ext::Dict{String, Any}
time_series_container::InfrastructureSystems.TimeSeriesContainer
internal::InfrastructureSystemsInternal
end
Arguments
name::String
available::Bool
bus::Bus
active_power::Float64
reactive_power::Float64
rating::Float64
: Thermal limited MVA Power Output of the unit. <= Capacity, validation range:(0, nothing)
, action if invalid:error
base_power::Float64
: Base power of the unit in MVA, validation range:(0, nothing)
, action if invalid:warn
prime_mover::PrimeMovers
: Prime mover technology according to EIA 923active_power_limits::NamedTuple{(:min, :max), Tuple{Float64, Float64}}
, validation range:(0, nothing)
, action if invalid:warn
reactive_power_limits::Union{Nothing, NamedTuple{(:min, :max), Tuple{Float64, Float64}}}
, action if invalid:warn
ramp_limits::Union{Nothing, NamedTuple{(:up, :down), Tuple{Float64, Float64}}}
: ramp up and ramp down limits in MW (in component base per unit) per minute, validation range:(0, nothing)
, action if invalid:error
time_limits::Union{Nothing, NamedTuple{(:up, :down), Tuple{Float64, Float64}}}
: Minimum up and Minimum down time limits in hours, validation range:(0, nothing)
, action if invalid:error
rating_pump::Float64
: Thermal limited MVA Power Withdrawl of the pump. <= Capacity, validation range:(0, nothing)
, action if invalid:error
active_power_limits_pump::NamedTuple{(:min, :max), Tuple{Float64, Float64}}
reactive_power_limits_pump::Union{Nothing, NamedTuple{(:min, :max), Tuple{Float64, Float64}}}
, action if invalid:warn
ramp_limits_pump::Union{Nothing, NamedTuple{(:up, :down), Tuple{Float64, Float64}}}
: ramp up and ramp down limits in MW (in component base per unit) per minute of pump, validation range:(0, nothing)
, action if invalid:error
time_limits_pump::Union{Nothing, NamedTuple{(:up, :down), Tuple{Float64, Float64}}}
: Minimum up and Minimum down time limits of pump in hours, validation range:(0, nothing)
, action if invalid:error
storage_capacity::NamedTuple{(:up, :down), Tuple{Float64, Float64}}
: Maximum storage capacity in the upper and lower reservoirs (units can be p.u-hr or m^3)., validation range:(0, nothing)
, action if invalid:error
inflow::Float64
: Baseline inflow into the upper reservoir (units can be p.u. or m^3/hr), validation range:(0, nothing)
, action if invalid:error
outflow::Float64
: Baseline outflow from the lower reservoir (units can be p.u. or m^3/hr), validation range:(0, nothing)
, action if invalid:error
initial_storage::NamedTuple{(:up, :down), Tuple{Float64, Float64}}
: Initial storage capacity in the upper and lower reservoir (units can be p.u-hr or m^3)., validation range:(0, nothing)
, action if invalid:error
storage_target::NamedTuple{(:up, :down), Tuple{Float64, Float64}}
: Storage target of upper reservoir at the end of simulation as ratio of storage capacity.operation_cost::OperationalCost
: Operation Cost of GenerationOperationalCost
pump_efficiency::Float64
: Efficiency of pump, validation range:(0, 1)
, action if invalid:warn
conversion_factor::Float64
: Conversion factor from flow/volume to energy: m^3 -> p.u-hr.time_at_status::Float64
services::Vector{Service}
: Services that this device contributes todynamic_injector::Union{Nothing, DynamicInjection}
: corresponding dynamic injection deviceext::Dict{String, Any}
time_series_container::InfrastructureSystems.TimeSeriesContainer
: internal time_series storageinternal::InfrastructureSystemsInternal
: power system internal reference, do not modify
InfrastructureSystems.get_name
— Methodget_name(value::HydroPumpedStorage) -> String
Get HydroPumpedStorage
name
.
InfrastructureSystems.get_time_series_container
— Methodget_time_series_container(value::HydroPumpedStorage) -> InfrastructureSystems.TimeSeriesContainer
Get HydroPumpedStorage
time_series_container
.
InfrastructureSystems.set_name!
— Methodset_name!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
name
.
PowerSystems.get_active_power
— Methodget_active_power(value::HydroPumpedStorage) -> Any
Get HydroPumpedStorage
active_power
.
PowerSystems.get_active_power_limits
— Methodget_active_power_limits(value::HydroPumpedStorage) -> NamedTuple{(:min, :max), _A} where _A<:Tuple{Any, Any}
Get HydroPumpedStorage
active_power_limits
.
PowerSystems.get_active_power_limits_pump
— Methodget_active_power_limits_pump(value::HydroPumpedStorage) -> NamedTuple{(:min, :max), _A} where _A<:Tuple{Any, Any}
Get HydroPumpedStorage
active_power_limits_pump
.
PowerSystems.get_available
— Methodget_available(value::HydroPumpedStorage) -> Bool
Get HydroPumpedStorage
available
.
PowerSystems.get_base_power
— Methodget_base_power(value::HydroPumpedStorage) -> Float64
Get HydroPumpedStorage
base_power
.
PowerSystems.get_bus
— Methodget_bus(value::HydroPumpedStorage) -> Bus
Get HydroPumpedStorage
bus
.
PowerSystems.get_conversion_factor
— Methodget_conversion_factor(value::HydroPumpedStorage) -> Float64
Get HydroPumpedStorage
conversion_factor
.
PowerSystems.get_dynamic_injector
— Methodget_dynamic_injector(value::HydroPumpedStorage) -> Union{Nothing, DynamicInjection}
Get HydroPumpedStorage
dynamic_injector
.
PowerSystems.get_ext
— Methodget_ext(value::HydroPumpedStorage) -> Dict{String, Any}
Get HydroPumpedStorage
ext
.
PowerSystems.get_inflow
— Methodget_inflow(value::HydroPumpedStorage) -> Any
Get HydroPumpedStorage
inflow
.
PowerSystems.get_initial_storage
— Methodget_initial_storage(value::HydroPumpedStorage) -> NamedTuple{(:up, :down), _A} where _A<:Tuple{Any, Any}
Get HydroPumpedStorage
initial_storage
.
PowerSystems.get_operation_cost
— Methodget_operation_cost(value::HydroPumpedStorage) -> PowerSystems.OperationalCost
Get HydroPumpedStorage
operation_cost
.
PowerSystems.get_outflow
— Methodget_outflow(value::HydroPumpedStorage) -> Float64
Get HydroPumpedStorage
outflow
.
PowerSystems.get_prime_mover
— Methodget_prime_mover(value::HydroPumpedStorage) -> PrimeMovers
Get HydroPumpedStorage
prime_mover
.
PowerSystems.get_pump_efficiency
— Methodget_pump_efficiency(value::HydroPumpedStorage) -> Float64
Get HydroPumpedStorage
pump_efficiency
.
PowerSystems.get_ramp_limits
— Methodget_ramp_limits(value::HydroPumpedStorage) -> Union{Nothing, NamedTuple{(:up, :down), _A} where _A<:Tuple{Any, Any}}
Get HydroPumpedStorage
ramp_limits
.
PowerSystems.get_ramp_limits_pump
— Methodget_ramp_limits_pump(value::HydroPumpedStorage) -> Union{Nothing, NamedTuple{(:up, :down), _A} where _A<:Tuple{Any, Any}}
Get HydroPumpedStorage
ramp_limits_pump
.
PowerSystems.get_rating
— Methodget_rating(value::HydroPumpedStorage) -> Any
Get HydroPumpedStorage
rating
.
PowerSystems.get_rating_pump
— Methodget_rating_pump(value::HydroPumpedStorage) -> Any
Get HydroPumpedStorage
rating_pump
.
PowerSystems.get_reactive_power
— Methodget_reactive_power(value::HydroPumpedStorage) -> Any
Get HydroPumpedStorage
reactive_power
.
PowerSystems.get_reactive_power_limits
— Methodget_reactive_power_limits(value::HydroPumpedStorage) -> Union{Nothing, NamedTuple{(:min, :max), _A} where _A<:Tuple{Any, Any}}
Get HydroPumpedStorage
reactive_power_limits
.
PowerSystems.get_reactive_power_limits_pump
— Methodget_reactive_power_limits_pump(value::HydroPumpedStorage) -> Union{Nothing, NamedTuple{(:min, :max), _A} where _A<:Tuple{Any, Any}}
Get HydroPumpedStorage
reactive_power_limits_pump
.
PowerSystems.get_services
— Methodget_services(value::HydroPumpedStorage) -> Vector{Service}
Get HydroPumpedStorage
services
.
PowerSystems.get_storage_capacity
— Methodget_storage_capacity(value::HydroPumpedStorage) -> NamedTuple{(:up, :down), _A} where _A<:Tuple{Any, Any}
Get HydroPumpedStorage
storage_capacity
.
PowerSystems.get_storage_target
— Methodget_storage_target(value::HydroPumpedStorage) -> NamedTuple{(:up, :down), Tuple{Float64, Float64}}
Get HydroPumpedStorage
storage_target
.
PowerSystems.get_time_at_status
— Methodget_time_at_status(value::HydroPumpedStorage) -> Float64
Get HydroPumpedStorage
time_at_status
.
PowerSystems.get_time_limits
— Methodget_time_limits(value::HydroPumpedStorage) -> Union{Nothing, NamedTuple{(:up, :down), Tuple{Float64, Float64}}}
Get HydroPumpedStorage
time_limits
.
PowerSystems.get_time_limits_pump
— Methodget_time_limits_pump(value::HydroPumpedStorage) -> Union{Nothing, NamedTuple{(:up, :down), Tuple{Float64, Float64}}}
Get HydroPumpedStorage
time_limits_pump
.
PowerSystems.set_active_power!
— Methodset_active_power!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
active_power
.
PowerSystems.set_active_power_limits!
— Methodset_active_power_limits!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
active_power_limits
.
PowerSystems.set_active_power_limits_pump!
— Methodset_active_power_limits_pump!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
active_power_limits_pump
.
PowerSystems.set_available!
— Methodset_available!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
available
.
PowerSystems.set_base_power!
— Methodset_base_power!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
base_power
.
PowerSystems.set_bus!
— Methodset_bus!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
bus
.
PowerSystems.set_conversion_factor!
— Methodset_conversion_factor!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
conversion_factor
.
PowerSystems.set_ext!
— Methodset_ext!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
ext
.
PowerSystems.set_inflow!
— Methodset_inflow!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
inflow
.
PowerSystems.set_initial_storage!
— Methodset_initial_storage!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
initial_storage
.
PowerSystems.set_operation_cost!
— Methodset_operation_cost!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
operation_cost
.
PowerSystems.set_outflow!
— Methodset_outflow!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
outflow
.
PowerSystems.set_prime_mover!
— Methodset_prime_mover!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
prime_mover
.
PowerSystems.set_pump_efficiency!
— Methodset_pump_efficiency!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
pump_efficiency
.
PowerSystems.set_ramp_limits!
— Methodset_ramp_limits!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
ramp_limits
.
PowerSystems.set_ramp_limits_pump!
— Methodset_ramp_limits_pump!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
ramp_limits_pump
.
PowerSystems.set_rating!
— Methodset_rating!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
rating
.
PowerSystems.set_rating_pump!
— Methodset_rating_pump!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
rating_pump
.
PowerSystems.set_reactive_power!
— Methodset_reactive_power!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
reactive_power
.
PowerSystems.set_reactive_power_limits!
— Methodset_reactive_power_limits!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
reactive_power_limits
.
PowerSystems.set_reactive_power_limits_pump!
— Methodset_reactive_power_limits_pump!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
reactive_power_limits_pump
.
PowerSystems.set_services!
— Methodset_services!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
services
.
PowerSystems.set_storage_capacity!
— Methodset_storage_capacity!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
storage_capacity
.
PowerSystems.set_storage_target!
— Methodset_storage_target!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
storage_target
.
PowerSystems.set_time_at_status!
— Methodset_time_at_status!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
time_at_status
.
PowerSystems.set_time_limits!
— Methodset_time_limits!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
time_limits
.
PowerSystems.set_time_limits_pump!
— Methodset_time_limits_pump!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
time_limits_pump
.
PowerSystems.set_time_series_container!
— Methodset_time_series_container!(value::HydroPumpedStorage, val) -> Any
Set HydroPumpedStorage
time_series_container
.