HydroPumpTurbine
PowerSystems.HydroPumpTurbine — Typemutable struct HydroPumpTurbine <: HydroGen
name::String
available::Bool
bus::ACBus
active_power::Float64
reactive_power::Float64
rating::Float64
active_power_limits::MinMax
reactive_power_limits::Union{Nothing, MinMax}
active_power_limits_pump::MinMax
outflow_limits::Union{Nothing, MinMax}
head_reservoir::HydroReservoir
tail_reservoir::HydroReservoir
powerhouse_elevation::Float64
ramp_limits::Union{Nothing, UpDown}
time_limits::Union{Nothing, UpDown}
base_power::Float64
operation_cost::Union{HydroGenerationCost, MarketBidCost}
active_power_pump::Float64
efficiency::TurbinePump
transition_time::TurbinePump
minimum_time::TurbinePump
conversion_factor::Float64
must_run::Bool
prime_mover_type::PrimeMovers
services::Vector{Service}
dynamic_injector::Union{Nothing, DynamicInjection}
ext::Dict{String, Any}
internal::InfrastructureSystemsInternal
endA hydropower pumped turbine that needs to be attached to two reservoir, suitable for modeling independent pumped hydro with reservoirs.
Arguments
name::String: Name of the component. Components of the same type (e.g.,PowerLoad) must have unique names, but components of different types (e.g.,PowerLoadandACBus) can have the same nameavailable::Bool: Indicator of whether the component is connected and online (true) or disconnected, offline, or down (false). Unavailable components are excluded during simulationsbus::ACBus: Bus that this component is connected toactive_power::Float64: Initial active power set point of the turbine unit in MW. 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 usedreactive_power::Float64: Initial reactive power set point of the unit (MVAR), validation range:reactive_power_limitsrating::Float64: Maximum output power rating of the unit (MVA), validation range:(0, nothing)active_power_limits::MinMax: Minimum and maximum stable active power levels (MW) for the turbine, validation range:(0, nothing)reactive_power_limits::Union{Nothing, MinMax}: Minimum and maximum reactive power limits. Set toNothingif not applicableactive_power_limits_pump::MinMax: Minimum and maximum stable active power levels (MW) for the pump, validation range:(0, nothing)outflow_limits::Union{Nothing, MinMax}: Turbine/Pump outflow limits in m3/s. Set toNothingif not applicablehead_reservoir::HydroReservoir: Head reservoir that this component is connected totail_reservoir::HydroReservoir: Tail reservoir that this component is connected topowerhouse_elevation::Float64: Height level in meters above the sea level of the powerhouse on which the turbine is installed., validation range:(0, nothing)ramp_limits::Union{Nothing, UpDown}: ramp up and ramp down limits in MW/min, validation range:(0, nothing)time_limits::Union{Nothing, UpDown}: Minimum up and Minimum down time limits in hours, validation range:(0, nothing)base_power::Float64: Base power of the unit (MVA) for per unitization, validation range:(0, nothing)operation_cost::Union{HydroGenerationCost, MarketBidCost}: (default:HydroGenerationCost(nothing))OperationalCostof generationactive_power_pump::Float64: (default:0.0) Initial active power set point of the pump unit in MW. 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 usedefficiency::TurbinePump: (default:(turbine = 1.0, pump = 1.0)) Turbine/Pump efficiency [0, 1.0]transition_time::TurbinePump: (default:(turbine = 0.0, pump = 0.0)) Transition time in hours to switch into the specific mode.minimum_time::TurbinePump: (default:(turbine = 0.0, pump = 0.0)) Minimum operating time in hours for the specific mode.conversion_factor::Float64: (default:1.0) Conversion factor from flow/volume to energy: m^3 -> p.u-hrmust_run::Bool: (default:false) Set totrueif the unit is must runprime_mover_type::PrimeMovers: (default:PrimeMovers.PS) Prime mover technology according to EIA 923. Options are listed hereservices::Vector{Service}: (default:Device[]) Services that this device contributes todynamic_injector::Union{Nothing, DynamicInjection}: (default:nothing) corresponding dynamic injection deviceext::Dict{String, Any}: (default:Dict{String, Any}()) An extra dictionary for users to add metadata that are not used in simulation.internal::InfrastructureSystemsInternal: (Do not modify.) PowerSystems.jl internal reference
InfrastructureSystems.get_name — Methodget_name(value::HydroPumpTurbine) -> String
Get HydroPumpTurbine name.
PowerSystems.get_active_power — Methodget_active_power(value::HydroPumpTurbine) -> Any
Get HydroPumpTurbine active_power.
PowerSystems.get_active_power_limits — Methodget_active_power_limits(
value::HydroPumpTurbine
) -> NamedTuple{(:min, :max), <:Tuple{Any, Any}}
Get HydroPumpTurbine active_power_limits.
PowerSystems.get_active_power_limits_pump — Methodget_active_power_limits_pump(
value::HydroPumpTurbine
) -> NamedTuple{(:min, :max), <:Tuple{Any, Any}}
Get HydroPumpTurbine active_power_limits_pump.
PowerSystems.get_active_power_pump — Methodget_active_power_pump(value::HydroPumpTurbine) -> Any
Get HydroPumpTurbine active_power_pump.
PowerSystems.get_available — Methodget_available(value::HydroPumpTurbine) -> Bool
Get HydroPumpTurbine available.
PowerSystems.get_base_power — Methodget_base_power(value::HydroPumpTurbine) -> Float64
Get HydroPumpTurbine base_power.
PowerSystems.get_bus — Methodget_bus(value::HydroPumpTurbine) -> ACBus
Get HydroPumpTurbine bus.
PowerSystems.get_conversion_factor — Methodget_conversion_factor(value::HydroPumpTurbine) -> Float64
Get HydroPumpTurbine conversion_factor.
PowerSystems.get_dynamic_injector — Methodget_dynamic_injector(
value::HydroPumpTurbine
) -> Union{Nothing, DynamicInjection}
Get HydroPumpTurbine dynamic_injector.
PowerSystems.get_efficiency — Methodget_efficiency(
value::HydroPumpTurbine
) -> @NamedTuple{turbine::Float64, pump::Float64}
Get HydroPumpTurbine efficiency.
PowerSystems.get_ext — Methodget_ext(value::HydroPumpTurbine) -> Dict{String, Any}
Get HydroPumpTurbine ext.
PowerSystems.get_head_reservoir — Methodget_head_reservoir(
value::HydroPumpTurbine
) -> HydroReservoir
Get HydroPumpTurbine head_reservoir.
PowerSystems.get_minimum_time — Methodget_minimum_time(
value::HydroPumpTurbine
) -> @NamedTuple{turbine::Float64, pump::Float64}
Get HydroPumpTurbine minimum_time.
PowerSystems.get_must_run — Methodget_must_run(value::HydroPumpTurbine) -> Bool
Get HydroPumpTurbine must_run.
PowerSystems.get_operation_cost — Methodget_operation_cost(
value::HydroPumpTurbine
) -> Union{HydroGenerationCost, MarketBidCost}
Get HydroPumpTurbine operation_cost.
PowerSystems.get_outflow_limits — Methodget_outflow_limits(
value::HydroPumpTurbine
) -> Union{Nothing, @NamedTuple{min::Float64, max::Float64}}
Get HydroPumpTurbine outflow_limits.
PowerSystems.get_powerhouse_elevation — Methodget_powerhouse_elevation(value::HydroPumpTurbine) -> Float64
Get HydroPumpTurbine powerhouse_elevation.
PowerSystems.get_prime_mover_type — Methodget_prime_mover_type(value::HydroPumpTurbine) -> PrimeMovers
Get HydroPumpTurbine prime_mover_type.
PowerSystems.get_ramp_limits — Methodget_ramp_limits(
value::HydroPumpTurbine
) -> Union{Nothing, NamedTuple{(:up, :down), <:Tuple{Any, Any}}}
Get HydroPumpTurbine ramp_limits.
PowerSystems.get_rating — Methodget_rating(value::HydroPumpTurbine) -> Any
Get HydroPumpTurbine rating.
PowerSystems.get_reactive_power — Methodget_reactive_power(value::HydroPumpTurbine) -> Any
Get HydroPumpTurbine reactive_power.
PowerSystems.get_reactive_power_limits — Methodget_reactive_power_limits(
value::HydroPumpTurbine
) -> Union{Nothing, NamedTuple{(:min, :max), <:Tuple{Any, Any}}}
Get HydroPumpTurbine reactive_power_limits.
PowerSystems.get_services — Methodget_services(value::HydroPumpTurbine) -> Vector{Service}
Get HydroPumpTurbine services.
PowerSystems.get_tail_reservoir — Methodget_tail_reservoir(
value::HydroPumpTurbine
) -> HydroReservoir
Get HydroPumpTurbine tail_reservoir.
PowerSystems.get_time_limits — Methodget_time_limits(
value::HydroPumpTurbine
) -> Union{Nothing, @NamedTuple{up::Float64, down::Float64}}
Get HydroPumpTurbine time_limits.
PowerSystems.get_transition_time — Methodget_transition_time(
value::HydroPumpTurbine
) -> @NamedTuple{turbine::Float64, pump::Float64}
Get HydroPumpTurbine transition_time.
PowerSystems.set_active_power! — Methodset_active_power!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine active_power.
PowerSystems.set_active_power_limits! — Methodset_active_power_limits!(
value::HydroPumpTurbine,
val
) -> Any
Set HydroPumpTurbine active_power_limits.
PowerSystems.set_active_power_limits_pump! — Methodset_active_power_limits_pump!(
value::HydroPumpTurbine,
val
) -> Any
Set HydroPumpTurbine active_power_limits_pump.
PowerSystems.set_active_power_pump! — Methodset_active_power_pump!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine active_power_pump.
PowerSystems.set_available! — Methodset_available!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine available.
PowerSystems.set_base_power! — Methodset_base_power!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine base_power.
PowerSystems.set_bus! — Methodset_bus!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine bus.
PowerSystems.set_conversion_factor! — Methodset_conversion_factor!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine conversion_factor.
PowerSystems.set_efficiency! — Methodset_efficiency!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine efficiency.
PowerSystems.set_ext! — Methodset_ext!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine ext.
PowerSystems.set_head_reservoir! — Methodset_head_reservoir!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine head_reservoir.
PowerSystems.set_minimum_time! — Methodset_minimum_time!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine minimum_time.
PowerSystems.set_must_run! — Methodset_must_run!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine must_run.
PowerSystems.set_operation_cost! — Methodset_operation_cost!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine operation_cost.
PowerSystems.set_outflow_limits! — Methodset_outflow_limits!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine outflow_limits.
PowerSystems.set_powerhouse_elevation! — Methodset_powerhouse_elevation!(
value::HydroPumpTurbine,
val
) -> Any
Set HydroPumpTurbine powerhouse_elevation.
PowerSystems.set_prime_mover_type! — Methodset_prime_mover_type!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine prime_mover_type.
PowerSystems.set_ramp_limits! — Methodset_ramp_limits!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine ramp_limits.
PowerSystems.set_rating! — Methodset_rating!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine rating.
PowerSystems.set_reactive_power! — Methodset_reactive_power!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine reactive_power.
PowerSystems.set_reactive_power_limits! — Methodset_reactive_power_limits!(
value::HydroPumpTurbine,
val
) -> Any
Set HydroPumpTurbine reactive_power_limits.
PowerSystems.set_services! — Methodset_services!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine services.
PowerSystems.set_tail_reservoir! — Methodset_tail_reservoir!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine tail_reservoir.
PowerSystems.set_time_limits! — Methodset_time_limits!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine time_limits.
PowerSystems.set_transition_time! — Methodset_transition_time!(value::HydroPumpTurbine, val) -> Any
Set HydroPumpTurbine transition_time.