Constraints

We define the following methods to provide a compositional approach toward defining common constraints used in coupled gas-power models. These methods should always be defined over AbstractGasPowerModel.

GasPowerModels.constraint_heat_rateMethod

Constraint for coupling the production of power at natural gas generators with the gas consumption required to produce this power. The full nonconvex constraint is stated as

\[fl = e \rho \sum_{i \in \Gamma} (h_{i}^{0} pg_{i}^2 + h_{i}^{1} pg_{i} + h_{i}^{2}),\]

where $h$ is a quadratic function used to convert MW ($pg$) into Joules consumed per second (J/s). $h$ is in units of (J/MW^2, J/MW, J). This is then converted to mass flow, $fl$, (kg/s) of gas consumed to produce this energy. Here, $e$ is an energy factor (m^3/J) and $\rho$ is standard density (kg/m^3). This constraint can be relaxed to a convex quadratic of the form

\[fl \geq e \rho \sum_{i \in \Gamma} (h_{i}^{0} pg_{i}^2 + h_{i}^{1} pg_{i} + h_{i}^{2}),\]

source
GasPowerModels.constraint_heat_rate_on_offMethod

Constraint for coupling the production of power at dispatchable natural gas generators with the gas consumption required to produce this power. The full nonconvex constraint is stated as

\[fl = e \rho \sum_{i \in \Gamma} (h_{i}^{0} pg_{i}^2 + h_{i}^{1} pg_{i} + h_{i}^{2} z_{i}),\]

where $h$ is a quadratic function used to convert MW ($pg$) into Joules consumed per second (J/s). $h$ is in units of (J/MW^2, J/MW, J). This is then converted to mass flow, $fl$, (kg/s) of gas consumed to produce this energy. Here, $e$ is an energy factor (m^3/J) and $\rho$ is standard density (kg/m^3). $z$ is a discrete variable indicating the status of the generator. This constraint can be relaxed to a convex quadratic of the form

\[fl \geq e \rho \sum_{i \in \Gamma} (h_{i}^{0} pg_{i}^2 + h_{i}^{1} pg_{i} + h_{i}^{2} z_{i}),\]

source
GasPowerModels.constraint_pressure_priceMethod

Constraint that is used to compute the cost for pressure in a zone. Since the cost of pressure typically appears in the objective function or is bounded, the constraints do not compute the price directly. Rather they act as a lower bound on the price of pressure, which is implictly tight when this term only appears in the objective function:

\[pc_z \ge p_z[1] * \pi_z^2 + cp_z[2] * \pi_z + cp_z[3],\]

where $pc_z$ is the maximum pressure price in zone $z$ and $p_z$ is a quadratic function of the maximum pressure in $z$.

source
GasPowerModels.constraint_zone_demandMethod

Auxiliary constraint that computes the total consumed gas in a zone. This constraint takes the form of

\[fl_{z} = \sum_{k \in z} fl_k,\]

where $fl_{z}$ is the total consumed gas in zone $z$ and $fl_k$ is gas consumed at delivery $k$ in the zone.

source
GasPowerModels.constraint_zone_demand_priceMethod

Constraint that is used to compute cost for gas in a zone. Since the cost of gas typically appears in the objective function or is bounded, these constraints do not compute the price directly. Rather, they place a lower bound on the price of gas. There are two constraints stated here. The first constraint is

\[cost_{z} \ge q_z[1] * (fl_z * \frac{1.0}{\rho})^2 + q_z[2] * fl_z * \frac{1.0}{\rho} + q_z[3].\]

The second constraint is

\[m_z * fl_z * \frac{1.0}{\rho},\]

where $cost_{z}$ is the daily (24-hour) cost of gas in zone $z$. $q$ is the quadratic cost of gas as function of gas consumed in the zone, $fl_z.$ $\rho$ is standard density. $m$ is the minimum cost of gas in terms kg/s.

source
GasPowerModels.constraint_zone_pressureMethod

Constraint that is used to compute the maximum pressure in a price zone. Since the maximum pressure typically appears in a minimization objective function, the max is modeled as a lower bound of the form

\[\pi_z \ge \pi_i \forall i \in z.\]

source