API Reference
Table of Contents
- Device Models
- Decision Models
- Emulation Models
- Service Models
- Simulation Models
- Variables
- Constraints
- Parameters
Device Models
List of structures and methods for Device models
PowerSimulations.DeviceModel
— TypeDeviceModel(
+ ::Type{D},
+ ::Type{B},
+ feedforwards::Vector{<:AbstractAffectFeedforward}
+ use_slacks::Bool,
+ duals::Vector{DataType},
+ services::Vector{ServiceModel}
+ attributes::Dict{String, Any}
+)
Establishes the model for a particular device specified by type. Uses the keyword argument feedforward to enable passing values between operation model at simulation time
Arguments
::Type{D} where D<:PSY.Device
: Power System Device Type::Type{B} where B<:AbstractDeviceFormulation
: Abstract Device Formulationfeedforward::Array{<:AbstractAffectFeedforward} = Vector{AbstractAffectFeedforward}()
: use to pass parameters between modelsuse_slacks::Bool = false
: Add slacks to the device model. Implementation is model dependent and not all models feature slacksduals::Vector{DataType} = Vector{DataType}()
: use to pass constraint type to calculate the duals. The DataType needs to be a valid ConstraintTypetime_series_names::Dict{Type{<:TimeSeriesParameter}, String} = get_default_time_series_names(D, B)
: use to specify time series names associated to the device`attributes::Dict{String, Any} = get_default_attributes(D, B)
: use to specify attributes to the device
Example
thermal_gens = DeviceModel(ThermalStandard, ThermalBasicUnitCommitment)
Formulations
Refer to the Formulations Page for each Abstract Device Formulation.
Problem Templates
Refer to the Problem Templates Page for available ProblemTemplate
s.
Problem Templates
Refer to the Problem Templates Page for available ProblemTemplate
s.
Service Models
List of structures and methods for Service models
PowerSimulations.ServiceModel
— TypeEstablishes the model for a particular services specified by type. Uses the keyword argument use_service_name
to assign the model to a service with the same name as the name in the template. Uses the keyword argument feedforward to enable passing values between operation model at simulation time
Arguments
-::Type{D}
: Power System Service Type -::Type{B}
: Abstract Service Formulation
Accepted Key Words
feedforward::Array{<:AbstractAffectFeedforward}
: use to pass parameters between modelsuse_service_name::Bool
: use the name as the name for the service
Example
reserves = ServiceModel(PSY.VariableReserve{PSY.ReserveUp}, RangeReserve)
Decision Models
PowerSimulations.DecisionModel
— TypeDecisionModel{M}(
+ template::ProblemTemplate,
+ sys::PSY.System,
+ jump_model::Union{Nothing, JuMP.Model}=nothing;
+ kwargs...) where {M<:DecisionProblem}
Build the optimization problem of type M with the specific system and template.
Arguments
::Type{M} where M<:DecisionProblem
: The abstract operation model typetemplate::ProblemTemplate
: The model reference made up of transmission, devices, branches, and services.sys::PSY.System
: the system created using Power Systemsjump_model::Union{Nothing, JuMP.Model}
: Enables passing a custom JuMP model. Use with carename = nothing
: name of model, string or symbol; defaults to the type of template converted to a symbol.optimizer::Union{Nothing,MOI.OptimizerWithAttributes} = nothing
: The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.horizon::Int = UNSET_HORIZON
: Manually specify the length of the forecast Horizonwarm_start::Bool = true
: True will use the current operation point in the system to initialize variable values. False initializes all variables to zero. Default is truesystem_to_file::Bool = true:
: True to create a copy of the system used in the model.initialize_model::Bool = true
: Option to decide to initialize the model or not.initialization_file::String = ""
: This allows to pass pre-existing initialization values to avoid the solution of an optimization problem to find feasible initial conditions.deserialize_initial_conditions::Bool = false
: Option to deserialize conditionsexport_pwl_vars::Bool = false
: True to export all the pwl intermediate variables. It can slow down significantly the build and solve time.allow_fails::Bool = false
: True to allow the simulation to continue even if the optimization step fails. Use with care.optimizer_solve_log_print::Bool = false
: Uses JuMP.unset_silent() to print the optimizer's log. By default all solvers are set to MOI.Silent()detailed_optimizer_stats::Bool = false
: True to save detailed optimizer stats log.calculate_conflict::Bool = false
: True to use solver to calculate conflicts for infeasible problems. Only specific solvers are able to calculate conflicts.direct_mode_optimizer::Bool = false
: True to use the solver in direct mode. Creates a JuMP.direct_model.store_variable_names::Bool = false
: to store variable names in optimization model. Decreases the build times.rebuild_model::Bool = false
: It will force the rebuild of the underlying JuMP model with each call to update the model. It increases solution times, use only if the model can't be updated in memory.initial_time::Dates.DateTime = UNSET_INI_TIME
: Initial Time for the model solve.time_series_cache_size::Int = IS.TIME_SERIES_CACHE_SIZE_BYTES
: Size in bytes to cache for each time array. Default is 1 MiB. Set to 0 to disable.
Example
template = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)
+OpModel = DecisionModel(MockOperationProblem, template, system)
DecisionModel(
+ ::Type{M<:PowerSimulations.DecisionProblem},
+ template::ProblemTemplate,
+ sys::System;
+ ...
+) -> DecisionModel
+DecisionModel(
+ ::Type{M<:PowerSimulations.DecisionProblem},
+ template::ProblemTemplate,
+ sys::System,
+ jump_model::Union{Nothing, JuMP.Model};
+ kwargs...
+) -> DecisionModel
+
Build the optimization problem of type M with the specific system and template
Arguments
::Type{M} where M<:DecisionProblem
: The abstract operation model typetemplate::ProblemTemplate
: The model reference made up of transmission, devices, branches, and services.sys::PSY.System
: the system created using Power Systemsjump_model::Union{Nothing, JuMP.Model}
= nothing: Enables passing a custom JuMP model. Use with care.
Example
template = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)
+problem = DecisionModel(MyOpProblemType, template, system, optimizer)
Builds an empty decision model. This constructor is used for the implementation of custom decision models that do not require a template.
Arguments
::Type{M} where M<:DecisionProblem
: The abstract operation model typesys::PSY.System
: the system created using Power Systemsjump_model::Union{Nothing, JuMP.Model}
= nothing: Enables passing a custom JuMP model. Use with care.
Example
problem = DecisionModel(system, optimizer)
DecisionModel(
+ directory::AbstractString,
+ optimizer::MathOptInterface.OptimizerWithAttributes;
+ jump_model,
+ system
+) -> Any
+
Construct an DecisionProblem from a serialized file.
Arguments
directory::AbstractString
: Directory containing a serialized modeljump_model::Union{Nothing, JuMP.Model}
= nothing: The JuMP model does not get serialized. Callers should pass whatever they passed to the original problem.optimizer::Union{Nothing,MOI.OptimizerWithAttributes}
= nothing: The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.system::Union{Nothing, PSY.System}
: Optionally, the system used for the model. If nothing and systofile was set to true when the model was created, the system will be deserialized from a file.
PowerSimulations.DecisionModel
— MethodDecisionModel(
+ ::Type{M<:PowerSimulations.DecisionProblem},
+ template::ProblemTemplate,
+ sys::System;
+ ...
+) -> DecisionModel
+DecisionModel(
+ ::Type{M<:PowerSimulations.DecisionProblem},
+ template::ProblemTemplate,
+ sys::System,
+ jump_model::Union{Nothing, JuMP.Model};
+ kwargs...
+) -> DecisionModel
+
Build the optimization problem of type M with the specific system and template
Arguments
::Type{M} where M<:DecisionProblem
: The abstract operation model typetemplate::ProblemTemplate
: The model reference made up of transmission, devices, branches, and services.sys::PSY.System
: the system created using Power Systemsjump_model::Union{Nothing, JuMP.Model}
= nothing: Enables passing a custom JuMP model. Use with care.
Example
template = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)
+problem = DecisionModel(MyOpProblemType, template, system, optimizer)
PowerSimulations.DecisionModel
— MethodDecisionModel(
+ directory::AbstractString,
+ optimizer::MathOptInterface.OptimizerWithAttributes;
+ jump_model,
+ system
+) -> Any
+
Construct an DecisionProblem from a serialized file.
Arguments
directory::AbstractString
: Directory containing a serialized modeljump_model::Union{Nothing, JuMP.Model}
= nothing: The JuMP model does not get serialized. Callers should pass whatever they passed to the original problem.optimizer::Union{Nothing,MOI.OptimizerWithAttributes}
= nothing: The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.system::Union{Nothing, PSY.System}
: Optionally, the system used for the model. If nothing and systofile was set to true when the model was created, the system will be deserialized from a file.
PowerSimulations.build!
— Methodbuild!(
+ model::DecisionModel;
+ output_dir,
+ recorders,
+ console_level,
+ file_level,
+ disable_timer_outputs
+)
+
Build the Decision Model based on the specified DecisionProblem.
Arguments
model::DecisionModel{<:DecisionProblem}
: DecisionModel objectoutput_dir::String
: Output directory for resultsrecorders::Vector{Symbol} = []
: recorder names to registerconsole_level = Logging.Error
:file_level = Logging.Info
:disable_timer_outputs = false
: Enable/Disable timing outputs
PowerSimulations.solve!
— Methodsolve!(
+ model::DecisionModel;
+ export_problem_results,
+ console_level,
+ file_level,
+ disable_timer_outputs,
+ serialize,
+ kwargs...
+) -> RunStatus
+
Default solve method for models that conform to the requirements of DecisionModel{<: DecisionProblem}.
This will call build!
on the model if it is not already built. It will forward all keyword arguments to that function.
Arguments
model::OperationModel = model
: operation modelexport_problem_results::Bool = false
: If true, export ProblemResults DataFrames to CSV files. Reduces solution times during simulation.console_level = Logging.Error
:file_level = Logging.Info
:disable_timer_outputs = false
: Enable/Disable timing outputsserialize::Bool = true
: If true, serialize the model to a file to allow re-execution later.
Examples
results = solve!(OpModel)
+results = solve!(OpModel, export_problem_results = true)
Emulation Models
PowerSimulations.EmulationModel
— TypeEmulationModel{M}(
+ template::ProblemTemplate,
+ sys::PSY.System,
+ jump_model::Union{Nothing, JuMP.Model}=nothing;
+ kwargs...) where {M<:EmulationProblem}
Build the optimization problem of type M with the specific system and template.
Arguments
::Type{M} where M<:EmulationProblem
: The abstract Emulation model typetemplate::ProblemTemplate
: The model reference made up of transmission, devices, branches, and services.sys::PSY.System
: the system created using Power Systemsjump_model::Union{Nothing, JuMP.Model}
: Enables passing a custom JuMP model. Use with carename = nothing
: name of model, string or symbol; defaults to the type of template converted to a symbol.optimizer::Union{Nothing,MOI.OptimizerWithAttributes} = nothing
: The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.warm_start::Bool = true
: True will use the current operation point in the system to initialize variable values. False initializes all variables to zero. Default is truesystem_to_file::Bool = true:
: True to create a copy of the system used in the model.initialize_model::Bool = true
: Option to decide to initialize the model or not.initialization_file::String = ""
: This allows to pass pre-existing initialization values to avoid the solution of an optimization problem to find feasible initial conditions.deserialize_initial_conditions::Bool = false
: Option to deserialize conditionsexport_pwl_vars::Bool = false
: True to export all the pwl intermediate variables. It can slow down significantly the build and solve time.allow_fails::Bool = false
: True to allow the simulation to continue even if the optimization step fails. Use with care.calculate_conflict::Bool = false
: True to use solver to calculate conflicts for infeasible problems. Only specific solvers are able to calculate conflicts.optimizer_solve_log_print::Bool = false
: Uses JuMP.unset_silent() to print the optimizer's log. By default all solvers are set to MOI.Silent()detailed_optimizer_stats::Bool = false
: True to save detailed optimizer stats log.direct_mode_optimizer::Bool = false
: True to use the solver in direct mode. Creates a JuMP.direct_model.store_variable_names::Bool = false
: True to store variable names in optimization model.rebuild_model::Bool = false
: It will force the rebuild of the underlying JuMP model with each call to update the model. It increases solution times, use only if the model can't be updated in memory.initial_time::Dates.DateTime = UNSET_INI_TIME
: Initial Time for the model solve.time_series_cache_size::Int = IS.TIME_SERIES_CACHE_SIZE_BYTES
: Size in bytes to cache for each time array. Default is 1 MiB. Set to 0 to disable.
Example
template = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)
+OpModel = EmulationModel(MockEmulationProblem, template, system)
PowerSimulations.EmulationModel
— MethodEmulationModel(
+ ::Type{M<:PowerSimulations.EmulationProblem},
+ template::ProblemTemplate,
+ sys::System;
+ ...
+) -> EmulationModel
+EmulationModel(
+ ::Type{M<:PowerSimulations.EmulationProblem},
+ template::ProblemTemplate,
+ sys::System,
+ jump_model::Union{Nothing, JuMP.Model};
+ kwargs...
+) -> EmulationModel
+
Build the optimization problem of type M with the specific system and template
Arguments
::Type{M} where M<:EmulationProblem
: The abstract Emulation model typetemplate::ProblemTemplate
: The model reference made up of transmission, devices, branches, and services.sys::PSY.System
: the system created using Power Systemsjump_model::Union{Nothing, JuMP.Model}
: Enables passing a custom JuMP model. Use with care
Example
template = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)
+problem = EmulationModel(MyEmProblemType, template, system, optimizer)
PowerSimulations.EmulationModel
— MethodEmulationModel(
+ directory::AbstractString,
+ optimizer::MathOptInterface.OptimizerWithAttributes;
+ jump_model,
+ system,
+ kwargs...
+) -> Any
+
Construct an EmulationProblem from a serialized file.
Arguments
directory::AbstractString
: Directory containing a serialized model.optimizer::MOI.OptimizerWithAttributes
: The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.jump_model::Union{Nothing, JuMP.Model}
= nothing: The JuMP model does not get serialized. Callers should pass whatever they passed to the original problem.system::Union{Nothing, PSY.System}
: Optionally, the system used for the model. If nothing and systofile was set to true when the model was created, the system will be deserialized from a file.
PowerSimulations.build!
— Methodbuild!(
+ model::EmulationModel;
+ executions,
+ output_dir,
+ recorders,
+ console_level,
+ file_level,
+ disable_timer_outputs
+)
+
Implementation of build for any EmulationProblem
PowerSimulations.run!
— Methodrun!(
+ model::EmulationModel;
+ export_problem_results,
+ console_level,
+ file_level,
+ disable_timer_outputs,
+ serialize,
+ kwargs...
+) -> RunStatus
+
Default run method for problems that conform to the requirements of EmulationModel{<: EmulationProblem}
This will call build!
on the model if it is not already built. It will forward all keyword arguments to that function.
Arguments
model::EmulationModel = model
: Emulation modeloptimizer::MOI.OptimizerWithAttributes
: The optimizer that is used to solve the modelexecutions::Int
: Number of executions for the emulator runexport_problem_results::Bool
: If true, export ProblemResults DataFrames to CSV files.output_dir::String
: Required if the model is not already built, otherwise ignoredenable_progress_bar::Bool
: Enables/Disable progress bar printingserialize::Bool
: If true, serialize the model to a file to allow re-execution later.
Examples
status = run!(model; optimizer = GLPK.Optimizer, executions = 10)
+status = run!(model; output_dir = ./model_output, optimizer = GLPK.Optimizer, executions = 10)
Simulation Models
Refer to the Simulations Page to explanations on how to setup a Simulation, with Sequencing and Feedforwards.
PowerSimulations.SimulationModels
— TypeSimulationModels(
+ decision_models::Vector{<:DecisionModel},
+ emulation_models::Union{Nothing, EmulationModel}
+)
Stores the OperationProblem definitions to be used in the simulation. When creating the SimulationModels, the order in which the models are created determines the order on which the simulation is executed.
Arguments
decision_models::Vector{<:DecisionModel}
: Vector of decision models.emulation_models::Union{Nothing, EmulationModel}
: Optional argument to include
an EmulationModel in the Simulation
Example
template_uc = template_unit_commitment()
+template_ed = template_economic_dispatch()
+my_decision_model_uc = DecisionModel(template_1, sys_uc, optimizer, name = "UC")
+my_decision_model_ed = DecisionModel(template_ed, sys_ed, optimizer, name = "ED")
+models = SimulationModels(
+ decision_models = [
+ my_decision_model_uc,
+ my_decision_model_ed
+ ]
+)
PowerSimulations.SimulationSequence
— TypeSimulationSequence(
+ models::SimulationModels,
+ feedforward::Dict{String, Vector{<:AbstractAffectFeedforward}}
+ ini_cond_chronology::InitialConditionChronology
+)
Construct the simulation sequence between decision and emulation models.
Arguments
models::SimulationModels
: Vector of decisions and emulation models.feedforward = Dict{String, Vector{<:AbstractAffectFeedforward}}()
: Optional dictionary to specify how information
and variables are exchanged between decision and emulation models.
ini_cond_chronology::nitialConditionChronology = InterProblemChronology()
: TODO
Example
template_uc = template_unit_commitment()
+template_ed = template_economic_dispatch()
+my_decision_model_uc = DecisionModel(template_1, sys_uc, optimizer, name = "UC")
+my_decision_model_ed = DecisionModel(template_ed, sys_ed, optimizer, name = "ED")
+models = SimulationModels(
+ decision_models = [
+ my_decision_model_uc,
+ my_decision_model_ed
+ ]
+)
+# The following sequence set the commitment variables (`OnVariable`) for `ThermalStandard` units from UC to ED.
+sequence = SimulationSequence(;
+ models = models,
+ feedforwards = Dict(
+ "ED" => [
+ SemiContinuousFeedforward(;
+ component_type = ThermalStandard,
+ source = OnVariable,
+ affected_values = [ActivePowerVariable],
+ ),
+ ],
+ ),
+)
PowerSimulations.Simulation
— TypeSimulation(
+ sequence::SimulationSequence,
+ name::String,
+ steps::Int
+ models::SimulationModels,
+ simulation_folder::String,
+ initial_time::Union{Nothing, Dates.DateTime}
+)
Construct the Simulation structure to run the sequence of decision and emulation models specified.
Arguments
-sequence::SimulationSequence
: Simulation sequence that specify how the decision and emulation models will be executed. -name::String
: Name of the Simulation -steps::Int
: Number of steps on which the sequence of models will be executed -models::SimulationModels
: List of Decision and Emulation Models -simulation_folder::String
: Folder on which results will be stored -initial_time::Union{Nothing, Dates.DateTime} = nothing
: Initial time of which the simulation starts. If nothing it will default to the first timestamp of time series of the system.
Example
template_uc = template_unit_commitment()
+template_ed = template_economic_dispatch()
+my_decision_model_uc = DecisionModel(template_1, sys_uc, optimizer, name = "UC")
+my_decision_model_ed = DecisionModel(template_ed, sys_ed, optimizer, name = "ED")
+models = SimulationModels(
+ decision_models = [
+ my_decision_model_uc,
+ my_decision_model_ed
+ ]
+)
+# The following sequence set the commitment variables (`OnVariable`) for `ThermalStandard` units from UC to ED.
+sequence = SimulationSequence(;
+ models = models,
+ feedforwards = Dict(
+ "ED" => [
+ SemiContinuousFeedforward(;
+ component_type = ThermalStandard,
+ source = OnVariable,
+ affected_values = [ActivePowerVariable],
+ ),
+ ],
+ ),
+)
+
+sim = Simulation(
+ sequence = sequence,
+ name = "Sim",
+ steps = 5,
+ models = models,
+ simulation_folder = mktempdir(cleanup=true),
+)
PowerSimulations.Simulation
— MethodSimulation(directory::AbstractString, model_info::Dict)
+
Constructs Simulation from a serialized directory. Callers should pass any kwargs here that they passed to the original Simulation.
Arguments
directory::AbstractString
: the directory returned from the call to serializemodel_info::Dict
: Two-level dictionary containing model parameters that cannot be serialized. The outer dict should be keyed by the problem name. The inner dict must contain 'optimizer' and may contain 'jump_model'. These should be the same values used for the original simulation.
PowerSimulations.build!
— Methodbuild!(
+ sim::Simulation;
+ recorders,
+ console_level,
+ file_level,
+ serialize,
+ partitions,
+ index
+) -> BuildStatus
+
Build the Simulation, problems and the related folder structure.
Arguments
sim::Simulation
: simulation objectrecorders::Vector{Symbol} = []
: recorder names to registerserialize::Bool = true
: serializes the simulation objects in the simulationconsole_level = Logging.Error
:file_level = Logging.Info
:
PowerSimulations.execute!
— Methodexecute!(sim::Simulation; kwargs...) -> RunStatus
+
Solves the simulation model for sequential Simulations.
Arguments
sim::Simulation=sim
: simulation object created by Simulation()
The optional keyword argument exports
controls exporting of results to CSV files as the simulation runs. Refer to export_results
for a description of this argument.
Example
sim = Simulation("Test", 7, problems, "/Users/folder")
+execute!(sim::Simulation; kwargs...)
Variables
For a list of variables for each device refer to its Formulations page.
Common Variables
PowerSimulations.ActivePowerVariable
— TypeStruct to dispatch the creation of Active Power Variables
Docs abbreviation: $Pg$
PowerSimulations.ReactivePowerVariable
— TypeStruct to dispatch the creation of Reactive Power Variables
Docs abbreviation: $Qg$
PowerSimulations.PieceWiseLinearCostVariable
— TypeStruct to dispatch the creation of piecewise linear cost variables for objective function
Docs abbreviation: TODO
Thermal Unit Variables
PowerSimulations.OnVariable
— TypeStruct to dispatch the creation of a binary commitment status variable
Docs abbreviation: $u$
PowerSimulations.StartVariable
— TypeStruct to dispatch the creation of Binary Start Variables
Docs abbreviation: TODO
PowerSimulations.StopVariable
— TypeStruct to dispatch the creation of Binary Stop Variables
Docs abbreviation: TODO
PowerSimulations.TimeDurationOn
— TypeAuxiliary Variable for Thermal Generation Models to keep track of time elapsed on
PowerSimulations.TimeDurationOff
— TypeAuxiliary Variable for Thermal Generation Models to keep track of time elapsed off
PowerSimulations.HotStartVariable
— TypeStruct to dispatch the creation of Hot Start Variable for Thermal units with temperature considerations
Docs abbreviation: TODO
PowerSimulations.WarmStartVariable
— TypeStruct to dispatch the creation of Warm Start Variable for Thermal units with temperature considerations
Docs abbreviation: TODO
PowerSimulations.ColdStartVariable
— TypeStruct to dispatch the creation of Cold Start Variable for Thermal units with temperature considerations
Docs abbreviation: TODO
PowerSimulations.PowerAboveMinimumVariable
— TypeStruct to dispatch the creation of Active Power Variables above minimum power for Thermal Compact formulations
Docs abbreviation: $\hat{Pg}$
Storage Unit Variables
PowerSimulations.ReservationVariable
— TypeStruct to dispatch the creation of binary storage charge reservation variable
Docs abbreviation: $r$
Branches and Network Variables
PowerSimulations.FlowActivePowerVariable
— TypeStruct to dispatch the creation of bidirectional Active Power Flow Variables
Docs abbreviation: $P$
PowerSimulations.FlowActivePowerFromToVariable
— TypeStruct to dispatch the creation of unidirectional Active Power Flow Variables
Docs abbreviation: $\overrightarrow{P}$
PowerSimulations.FlowActivePowerToFromVariable
— TypeStruct to dispatch the creation of unidirectional Active Power Flow Variables
Docs abbreviation: $\overleftarrow{P}$
PowerSimulations.FlowReactivePowerFromToVariable
— TypeStruct to dispatch the creation of unidirectional Reactive Power Flow Variables
Docs abbreviation: $\overrightarrow{Q}$
PowerSimulations.FlowReactivePowerToFromVariable
— TypeStruct to dispatch the creation of unidirectional Reactive Power Flow Variables
Docs abbreviation: $\overleftarrow{Q}$
PowerSimulations.PhaseShifterAngle
— TypeStruct to dispatch the creation of Phase Shifters Variables
Docs abbreviation: TODO
PowerSimulations.HVDCLosses
— TypeStruct to dispatch the creation of HVDC Losses Auxiliary Variables
Docs abbreviation: TODO
PowerSimulations.HVDCFlowDirectionVariable
— TypeStruct to dispatch the creation of HVDC Flow Direction Auxiliary Variables
Docs abbreviation: TODO
PowerSimulations.VoltageMagnitude
— TypeStruct to dispatch the creation of Voltage Magnitude Variables for AC formulations
Docs abbreviation: TODO
PowerSimulations.VoltageAngle
— TypeStruct to dispatch the creation of Voltage Angle Variables for AC/DC formulations
Docs abbreviation: TODO
Regulation and Services Variables
PowerSimulations.ActivePowerReserveVariable
— TypeStruct to dispatch the creation of Active Power Reserve Variables
Docs abbreviation: $Pr$
Missing docstring for ServiceRequirementVariable
. Check Documenter's build log for details.
Missing docstring for DeltaActivePowerUpVariable
. Check Documenter's build log for details.
Missing docstring for DeltaActivePowerDownVariable
. Check Documenter's build log for details.
Missing docstring for AdditionalDeltaActivePowerUpVariable
. Check Documenter's build log for details.
Missing docstring for AdditionalDeltaActivePowerDownVariable
. Check Documenter's build log for details.
Missing docstring for AreaMismatchVariable
. Check Documenter's build log for details.
Missing docstring for SteadyStateFrequencyDeviation
. Check Documenter's build log for details.
Missing docstring for SmoothACE
. Check Documenter's build log for details.
Missing docstring for SystemBalanceSlackUp
. Check Documenter's build log for details.
Missing docstring for SystemBalanceSlackDown
. Check Documenter's build log for details.
Missing docstring for ReserveRequirementSlack
. Check Documenter's build log for details.
Constraints
Common Constraints
Missing docstring for PieceWiseLinearCostConstraint
. Check Documenter's build log for details.
Network Constraints
Missing docstring for AreaDispatchBalanceConstraint
. Check Documenter's build log for details.
Missing docstring for AreaParticipationAssignmentConstraint
. Check Documenter's build log for details.
Missing docstring for BalanceAuxConstraint
. Check Documenter's build log for details.
Missing docstring for CopperPlateBalanceConstraint
. Check Documenter's build log for details.
Missing docstring for FrequencyResponseConstraint
. Check Documenter's build log for details.
Missing docstring for NodalBalanceActiveConstraint
. Check Documenter's build log for details.
Missing docstring for NodalBalanceReactiveConstraint
. Check Documenter's build log for details.
Power Variable Limit Constraints
Missing docstring for ActivePowerVariableLimitsConstraint
. Check Documenter's build log for details.
Missing docstring for ReactivePowerVariableLimitsConstraint
. Check Documenter's build log for details.
Missing docstring for ActivePowerVariableTimeSeriesLimitsConstraint
. Check Documenter's build log for details.
Missing docstring for InputActivePowerVariableLimitsConstraint
. Check Documenter's build log for details.
Missing docstring for OutputActivePowerVariableLimitsConstraint
. Check Documenter's build log for details.
Regulation and Services Constraints
Missing docstring for ParticipationAssignmentConstraint
. Check Documenter's build log for details.
Missing docstring for RegulationLimitsConstraint
. Check Documenter's build log for details.
Missing docstring for RequirementConstraint
. Check Documenter's build log for details.
Missing docstring for ReserveEnergyCoverageConstraint
. Check Documenter's build log for details.
Missing docstring for ReservePowerConstraint
. Check Documenter's build log for details.
Thermal Unit Constraints
Missing docstring for ActiveRangeICConstraint
. Check Documenter's build log for details.
Missing docstring for CommitmentConstraint
. Check Documenter's build log for details.
Missing docstring for DurationConstraint
. Check Documenter's build log for details.
Missing docstring for RampConstraint
. Check Documenter's build log for details.
Missing docstring for RampLimitConstraint
. Check Documenter's build log for details.
Missing docstring for StartupInitialConditionConstraint
. Check Documenter's build log for details.
Missing docstring for StartupTimeLimitTemperatureConstraint
. Check Documenter's build log for details.
Renewable Unit Constraints
Missing docstring for EqualityConstraint
. Check Documenter's build log for details.
Branches Constraints
Missing docstring for AbsoluteValueConstraint
. Check Documenter's build log for details.
Missing docstring for FlowLimitFromToConstraint
. Check Documenter's build log for details.
Missing docstring for FlowLimitToFromConstraint
. Check Documenter's build log for details.
Missing docstring for FlowRateConstraint
. Check Documenter's build log for details.
Missing docstring for FlowRateConstraintFromTo
. Check Documenter's build log for details.
Missing docstring for FlowRateConstraintToFrom
. Check Documenter's build log for details.
Missing docstring for HVDCDirection
. Check Documenter's build log for details.
Missing docstring for HVDCLossesAbsoluteValue
. Check Documenter's build log for details.
Missing docstring for HVDCPowerBalance
. Check Documenter's build log for details.
Missing docstring for NetworkFlowConstraint
. Check Documenter's build log for details.
Missing docstring for RateLimitConstraint
. Check Documenter's build log for details.
Missing docstring for RateLimitConstraintFromTo
. Check Documenter's build log for details.
Missing docstring for RateLimitConstraintToFrom
. Check Documenter's build log for details.
Missing docstring for PhaseAngleControlLimit
. Check Documenter's build log for details.
Feedforward Constraints
Missing docstring for FeedforwardSemiContinousConstraint
. Check Documenter's build log for details.
Missing docstring for FeedforwardIntegralLimitConstraint
. Check Documenter's build log for details.
Missing docstring for FeedforwardUpperBoundConstraint
. Check Documenter's build log for details.
Missing docstring for FeedforwardLowerBoundConstraint
. Check Documenter's build log for details.
Missing docstring for FeedforwardEnergyTargetConstraint
. Check Documenter's build log for details.
Parameters
Time Series Parameters
PowerSimulations.ActivePowerTimeSeriesParameter
— TypeParameter to define active power time series
PowerSimulations.ReactivePowerTimeSeriesParameter
— TypeParameter to define reactive power time series
PowerSimulations.RequirementTimeSeriesParameter
— TypeParamter to define requirement time series
Variable Value Parameters
PowerSimulations.UpperBoundValueParameter
— TypeParameter to define variable upper bound
PowerSimulations.LowerBoundValueParameter
— TypeParameter to define variable lower bound
PowerSimulations.OnStatusParameter
— TypeParameter to define unit commitment status
Missing docstring for EnergyLimitParameter
. Check Documenter's build log for details.
PowerSimulations.FixValueParameter
— TypeParameter to FixValueParameter
Missing docstring for EnergyTargetParameter
. Check Documenter's build log for details.
Objective Function Parameters
PowerSimulations.CostFunctionParameter
— TypeParameter to define cost function coefficient