FFTR Constraints Table

To correctly handle fully-flexible time resolution (FFTR), we must explicitly state how the constraints are constructed. For each constraint, three things need to be considered:

  1. The type of constraint balance:
    • power: highest resolution
    • energy: lowest resolution (multiplied by durations)
  2. How the resolution is determined (regardless of whether it is highest or lowest):
    • the incoming flows
    • the outgoing flows
    • or a combination of both
  3. How the related parameters are aggregated:
    • sum
    • mean

Below is the table outlining the details for each type of constraint.

Before reading the table consider this:

To calculate the resolution of the constraints we use the min function to determine which is the highest resolution in the constraint, and the max function to determine the lowest resolution in the constraint. For example, the consumer balance is defined as power type, and it involves the inputs and outputs, then the constraint resolution must be the minimum resolution among them to ensure it is on the highest resolution. Then, if you have an input of 1h resolution and an output of 2h resolution; then the resolution of the constraint must be 1h (i.e., min(1h,2h)).

NameVariables involvedProfile involvedConstraint typeResolution of the constraintsProfile aggregation
Consumer Balanceinputs, outputsdemandpowermin(incoming flows, outgoing flows)mean
Storage Balanceinputs, outputs, storage levelinflowsenergymax(asset, min(incoming flows, outgoing flows))sum
Hub Balanceinputs, outputs-powermin(incoming flows, outgoing flows)-
Conversion Balanceinputs, outputs [1]-energymax(incoming flows, outgoing flows)-
Producers Capacity Constraintsoutputsavailabilitypowermin(outgoing flows)mean
Storage Capacity Constraints (outgoing)outputs-powermin(outgoing flows)-
Conversion Capacity Constraints (outgoing)outputs-powermin(outgoing flows)-
Conversion Capacity Constraints (incoming)inputs-powermin(incoming flows)-
Storage Capacity Constraints (incoming)inputs-powermin(incoming flows)-
Transport Capacity Constraints (upper bounds)flowavailabilitypowerif it connects two hubs or demands then max(hub a,hub b), otherwise its ownmean
Transport Capacity Constraints (lower bounds)flowavailabilitypowerif it connects two hubs or demands then max(hub a,hub b), otherwise its ownmean
Maximum Energy Limits (outgoing)outputsmax_energyenergyDetermine by timeframe partitions. The default value is for each period in the timeframesum
Minimum Energy Limits (outgoing)outputsmin_energyenergyDetermine by timeframe partitions. The default value is for each period in the timeframesum
Maximum Output Flow with Unit Commitmentoutputs, units_onavailabilitypowermin(outgoing flows, units_on)mean
Minimum Output Flow with Unit Commitmentoutputs, units_onavailabilitypowermin(outgoing flows, units_on)mean
Maximum Ramp Up Flow with Unit Commitmentoutputs, units_onavailabilitypowermin(outgoing flows, units_on)mean
Maximum Ramp Down Flow with Unit Commitmentoutputs, units_onavailabilitypowermin(outgoing flows, units_on)mean
Maximum Ramp Up Flow without Unit Commitmentoutputsavailabilitypowermin(outgoing flows)mean
Maximum Ramp Down Flow without Unit Commitmentoutputsavailabilitypowermin(outgoing flows)mean
DC-OPF Constraintflow, electricity_angle-powermin(neighboring assets, flow)-
Flows relationshipsflow 1, flow 2-energymax(flow1, flow2)-
  • 1Only inputs or outputs with conversion coefficient $\geq 0$ are considered to determine the resolution of the conversion balance constraint.