ConversionDynamic class

Extension of the conversion class with a more specific dynamic behavior. It includes ramping constraints, as well as minimum up-time or down-time constraints of the conversion component.

ConversionDynamic class description:

class conversionDynamic.ConversionDynamic(esM, name, physicalUnit, commodityConversionFactors, downTimeMin=None, upTimeMin=None, rampUpMax=None, rampDownMax=None, **kwargs)[source]

Extension of the conversion class with more specific ramping behavior

__init__(esM, name, physicalUnit, commodityConversionFactors, downTimeMin=None, upTimeMin=None, rampUpMax=None, rampDownMax=None, **kwargs)[source]

Constructor for creating a ConversionDynamic class instance. The ConversionDynamic component specific input arguments are described below. The Conversion specific input arguments are described in the Conversion class and the general component input arguments are described in the Component class.

Default arguments:

Parameters:
  • downTimeMin (None or integer value in range ]0,numberOfTimeSteps]) – if specified, indicates minimal down time of the component [number of time steps].
    * the default value is None

  • upTimeMin (None or integer value in range [0,numberOfTimeSteps]) – if specified, indicates minimal up time of the component [number of time steps].
    * the default value is None

  • rampUpMax (None or float value in range ]0.0,1.0]) – A maximum ramping rate to limit the increase in the operation of the component as share of the installed capacity.
    * the default value is None

  • rampDownMax (None or float value in range ]0.0,1.0]) – A maximum ramping rate to limit the decrease in the operation of the component as share of the installed capacity.
    * the default value is None

  • **kwargs (Check Conversion Class documentation.) – All other keyword arguments of the conversion class can be defined as well.

setTimeSeriesData(hasTSA)[source]

Function for setting the maximum operation rate and fixed operation rate depending on whether a time series analysis is requested or not.

Parameters:

hasTSA (boolean) – states whether a time series aggregation is requested (True) or not (False).

Inheritance diagram:

Inheritance diagram of ConversionDynamic

ConversionDynamicModel class description:

class conversionDynamic.ConversionDynamicModel[source]

A ConversionDynamicModel class instance will be instantly created if a ConversionDynamic class instance is initialized. It is used for the declaration of the sets, variables and constraints which are valid for the ConversionDynamic class instance. These declarations are necessary for the modeling and optimization of the energy system model. The ConversionDynamicModel class inherits from the ConversionModel class.

declareOpConstrSetMinDownTime(pyM, constrSetName)[source]

Declare set of locations and components for which downTimeMin is not None.

declareOpConstrSetMinUpTime(pyM, constrSetName)[source]

Declare set of locations and components for which upTimeMin is not None.

declareOpConstrSetMaxRampUp(pyM, constrSetName)[source]

Declare set of locations and components for which rampUpMax is not None.

declareOpConstrSetMaxRampDown(pyM, constrSetName)[source]

Declare set of locations and components for which rampDownMax is not None.

declareSets(esM, pyM)[source]

Declare sets and dictionaries: design variable sets, operation variable set, operation mode sets and linked components dictionary.

Parameters:
  • esM (esM - EnergySystemModel class instance) – EnergySystemModel instance representing the energy system in which the component should be modeled.

  • pyM (pyomo ConcreteModel) – pyomo ConcreteModel which stores the mathematical formulation of the model.

declareStartStopVariables(pyM)[source]

Declare start/stop variables.

Parameters:

pyM (pyomo Concrete Model) – pyomo ConcreteModel which stores the mathematical formulation of the model.

declareVariables(esM, pyM, relaxIsBuiltBinary, relevanceThreshold)[source]

Declare design and operation variables

Parameters:
  • esM (esM - EnergySystemModel class instance) – EnergySystemModel instance representing the energy system in which the component should be modeled.

  • pyM (pyomo ConcreteModel) – pyomo ConcreteModel which stores the mathematical formulation of the model.

  • relaxIsBuiltBinary – states if the optimization problem should be solved as a relaxed LP to get the lower bound of the problem.
    * the default value is False

  • relevanceThreshold (float (>=0) or None) – Force operation parameters to be 0 if values are below the relevance threshold.
    * the default value is None

minimumDownTime(pyM, esM)[source]

Ensure that conversion unit is not ramping up and down too often by implementing a minimum down time after ramping down.

Parameters:

pyM (pyomo Concrete Model) – pyomo ConcreteModel which stores the mathematical formulation of the model.

minimumUpTime(pyM, esM)[source]

Ensure that conversion unit is not ramping up and down too often by implementing a minimum up time after ramping up.

Parameters:

pyM (pyomo Concrete Model) – pyomo ConcreteModel which stores the mathematical formulation of the model.

rampUpMax(pyM, esM)[source]

Ensure that conversion unit is not ramping up too fast by implementing a maximum ramping rate as share of the installed capacity.

Parameters:

pyM (pyomo Concrete Model) – pyomo ConcreteModel which stores the mathematical formulation of the model.

rampDownMax(pyM, esM)[source]

Ensure that conversion unit is not ramping down too fast by implementing a maximum ramping rate as share of the installed capacity.

Parameters:

pyM (pyomo Concrete Model) – pyomo ConcreteModel which stores the mathematical formulation of the model.

declareComponentConstraints(esM, pyM)[source]

Declare time independent and dependent constraints.

Parameters:
  • esM (EnergySystemModel class instance) – EnergySystemModel instance representing the energy system in which the component should be modeled.

  • pyM (pyomo Concrete Model) – pyomo ConcreteModel which stores the mathematical formulation of the model.

Inheritance diagram:

Inheritance diagram of ConversionDynamicModel