co2

This module contains the constraints and expressions related to carbon emissions. The model computes the carbon emissions for each year, based on the sum of carbon emissions from each zone, and from each technology as follows:

\[{\rm{carbon}}_y=\sum_{e\in\mathcal{E}}\sum_{z\in\mathcal{Z}} \sum_{m\in\mathcal{M}}\sum_{h\in\mathcal{H}} \left({{\rm{CARBON}}}_{y,z,e}\times {\rm{gen}}_{h,m,y,z,e}\right)\quad\forall y\]

The calculated carbon emission for each year lower than its upper bound, as follows:

\[{\rm{carbon}}_y\le{\overline{{\rm{CARBON}}}}_y\quad\forall y\]
class prepshot._model.co2.AddCo2EmissionConstraints(model)[source]

Bases: object

Class for carbon emission constraints and calculations.

Parameters

model (object) --

__init__(model)[source]

Initialize the class.

Parameters

model (object) -- Model object depending on the solver.

Return type

None

carbon_breakdown(y, z, te)[source]

Carbon emission cost breakdown.

Parameters
  • y (int) -- Year.

  • z (str) -- Zone.

  • te (str) -- Technology.

Returns

The expression of the model.

Return type

poi.ExprBuilder

carbon_offset_limit_rule(y, z)[source]

Limit purchased carbon offsets to a fraction of raw zonal emissions.

carbon_offset[y,z] <= rate * raw_emissions[y,z]

where raw_emissions = carbon_capacity + carbon_offset (i.e. the emissions before offsets are deducted).

Parameters
  • y (int) -- Planned year.

  • z (str) -- Zone.

Returns

A constraint of the model.

Return type

poi.ConstraintIndex

emission_calc_by_zone_rule(y, z)[source]

Calculation of annual net carbon emissions by zone, after subtracting purchased carbon offsets.

Parameters
  • y (int) -- Planned year.

  • z (str) -- Zone.

Returns

An expression for net zonal emissions.

Return type

poi.ExprBuilder

emission_calc_rule(y)[source]

Calculation of annual carbon emission across all zones and technologies.

Parameters

y (int) -- Planned year.

Returns

A constraint of the model.

Return type

poi.ConstraintIndex