Internal API

PowerSimulations.add_feedforward_constraints!Method
    add_feedforward_constraints(container::PSI.OptimizationContainer,
                    model::PSI.DeviceModel,
                    devices,
                    ff::ReservoirLimitFeedforward)

Constructs a parameterized integral limit constraint to implement feedforward from other models. The Parameters are initialized using the upper boundary values of the provided variables.

sum(variable[var_name, t] for t in 1:affected_periods)/affected_periods <= param_reference[var_name]

LaTeX

$\sum_{t} x \leq param^{max}$

Arguments

  • container::PowerSimulations.OptimizationContainer : the optimization_container model built in PowerSimulations
  • model::PowerSimulations.DeviceModel : the device model
  • devices::IS.FlattenIteratorWrapper{T} : list of devices
  • ff::ReservoirLimitFeedforward : a instance of the Reservoir Limit Feedforward
source
PowerSimulations.add_feedforward_constraints!Method
    add_feedforward_constraints(
        container::PSI.OptimizationContainer,
        ::PSI.DeviceModel,
        devices::IS.FlattenIteratorWrapper{T},
        ff::ReservoirTargetFeedforward,
    ) where {T <: PSY.Component}

Constructs a equality constraint to a fix a variable in one model using the variable value from other model results.

variable[var_name, t] + slack[var_name, t] >= param[var_name, t]

LaTeX

$x + slack >= param$

Arguments

  • container::PSI.OptimizationContainer : the optimization_container model built in PowerSimulations
  • model::PowerSimulations.DeviceModel : the device model
  • devices::IS.FlattenIteratorWrapper{T} : list of devices
  • ff::ReservoirTargetFeedforward : a instance of the ReservoirTarget Feedforward
source