mirror of
https://github.com/ANL-CEEESA/UnitCommitment.jl.git
synced 2025-12-08 09:08:52 -06:00
storage units
This commit is contained in:
@@ -9,6 +9,7 @@ mutable struct Bus
|
||||
thermal_units::Vector
|
||||
price_sensitive_loads::Vector
|
||||
profiled_units::Vector
|
||||
storage_units::Vector
|
||||
end
|
||||
|
||||
mutable struct CostSegment
|
||||
@@ -83,6 +84,26 @@ mutable struct ProfiledUnit
|
||||
cost::Vector{Float64}
|
||||
end
|
||||
|
||||
mutable struct StorageUnit
|
||||
name::String
|
||||
bus::Bus
|
||||
min_level::Vector{Float64}
|
||||
max_level::Vector{Float64}
|
||||
simultaneous_charge_and_discharge::Vector{Bool}
|
||||
charge_cost::Vector{Float64}
|
||||
discharge_cost::Vector{Float64}
|
||||
charge_efficiency::Vector{Float64}
|
||||
discharge_efficiency::Vector{Float64}
|
||||
loss_factor::Vector{Float64}
|
||||
min_charge_rate::Vector{Float64}
|
||||
max_charge_rate::Vector{Float64}
|
||||
min_discharge_rate::Vector{Float64}
|
||||
max_discharge_rate::Vector{Float64}
|
||||
initial_level::Float64
|
||||
min_ending_level::Float64
|
||||
max_ending_level::Float64
|
||||
end
|
||||
|
||||
Base.@kwdef mutable struct UnitCommitmentScenario
|
||||
buses_by_name::Dict{AbstractString,Bus}
|
||||
buses::Vector{Bus}
|
||||
@@ -103,6 +124,8 @@ Base.@kwdef mutable struct UnitCommitmentScenario
|
||||
reserves::Vector{Reserve}
|
||||
thermal_units_by_name::Dict{AbstractString,ThermalUnit}
|
||||
thermal_units::Vector{ThermalUnit}
|
||||
storage_units_by_name::Dict{AbstractString,StorageUnit}
|
||||
storage_units::Vector{StorageUnit}
|
||||
time::Int
|
||||
time_step::Int
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user