ThermalMultiStart

PowerSystems.ThermalMultiStartType
mutable struct ThermalMultiStart <: ThermalGen
    name::String
    available::Bool
    status::Bool
    bus::ACBus
    active_power::Float64
    reactive_power::Float64
    rating::Float64
    prime_mover_type::PrimeMovers
    fuel::ThermalFuels
    active_power_limits::MinMax
    reactive_power_limits::Union{Nothing, MinMax}
    ramp_limits::Union{Nothing, UpDown}
    power_trajectory::Union{Nothing, StartUpShutDown}
    time_limits::Union{Nothing, UpDown}
    start_time_limits::Union{Nothing, NamedTuple{(:hot, :warm, :cold), Tuple{Float64, Float64, Float64}}}
    start_types::Int
    operation_cost::OperationalCost
    base_power::Float64
    services::Vector{Service}
    time_at_status::Float64
    must_run::Bool
    dynamic_injector::Union{Nothing, DynamicInjection}
    ext::Dict{String, Any}
    time_series_container::InfrastructureSystems.TimeSeriesContainer
    internal::InfrastructureSystemsInternal
end

Data Structure for thermal generation technologies.

Arguments

  • name::String
  • available::Bool
  • status::Bool
  • bus::ACBus
  • active_power::Float64, validation range: active_power_limits, action if invalid: warn
  • reactive_power::Float64, validation range: reactive_power_limits, action if invalid: warn
  • rating::Float64: Thermal limited MVA Power Output of the unit. <= Capacity, validation range: (0, nothing), action if invalid: error
  • prime_mover_type::PrimeMovers: Prime mover technology according to EIA 923
  • fuel::ThermalFuels: Prime mover fuel according to EIA 923
  • active_power_limits::MinMax
  • reactive_power_limits::Union{Nothing, MinMax}
  • ramp_limits::Union{Nothing, UpDown}, validation range: (0, nothing), action if invalid: error
  • power_trajectory::Union{Nothing, StartUpShutDown}: Power trajectory the unit will take during the start-up and shut-down ramp process, validation range: (0, nothing), action if invalid: error
  • time_limits::Union{Nothing, UpDown}: Minimum up and Minimum down time limits in hours, validation range: (0, nothing), action if invalid: error
  • start_time_limits::Union{Nothing, NamedTuple{(:hot, :warm, :cold), Tuple{Float64, Float64, Float64}}}: Time limits for start-up based on turbine temperature in hours
  • start_types::Int: Number of start-up based on turbine temperature, validation range: (1, 3), action if invalid: error
  • operation_cost::OperationalCost
  • base_power::Float64: Base power of the unit in MVA, validation range: (0, nothing), action if invalid: warn
  • services::Vector{Service}: Services that this device contributes to
  • time_at_status::Float64
  • must_run::Bool
  • dynamic_injector::Union{Nothing, DynamicInjection}: corresponding dynamic injection device
  • ext::Dict{String, Any}
  • time_series_container::InfrastructureSystems.TimeSeriesContainer: internal time_series storage
  • internal::InfrastructureSystemsInternal: power system internal reference, do not modify
source