cost¶
This module contains objective functions for the model. The objective function of the model is to minimize the net present value of the system's cost. This includes capital cost, fixed O&M cost, variable cost and fuel cost by cost type, technology cost, transmission line cost by the source of cost, and operation cost and planning cost by the source of cost.
The cost equations are defined as follows:
- class prepshot._model.cost.AddCostObjective(model)[source]¶
Bases:
objectObjective function class to determine the total cost of the model.
- Parameters
model (object) --
- __init__(model)[source]¶
The constructor for objective functions class.
- Parameters
model (object) -- Model to be solved.
- Return type
None
- carbon_cost_breakdown(y, z)[source]¶
Carbon-tax cost breakdown by year and zone.
Tax is applied to net zonal emissions (raw emissions minus purchased offsets), in line with the carbon-market accounting convention.
- Parameters
y (int) -- Year.
z (str) -- Zone.
- Returns
Carbon-tax cost at a given year and zone.
- Return type
poi.ExprBuilder
- carbon_cost_rule()[source]¶
Total carbon-tax cost over all years and zones.
- Returns
Total carbon-tax cost.
- Return type
poi.ExprBuilder
- carbon_offset_cost_breakdown(y, z)[source]¶
Cost of purchased carbon offsets by year and zone.
- Parameters
y (int) -- Year.
z (str) -- Zone.
- Returns
Carbon-offset cost at a given year and zone.
- Return type
poi.ExprBuilder
- carbon_offset_cost_rule()[source]¶
Total cost of purchased carbon offsets over all years and zones.
- Returns
Total carbon-offset cost.
- Return type
poi.ExprBuilder
- cost_fix_line_breakdown(y, z, z1)[source]¶
Fixed operation and maintenance cost breakdown of transmission lines.
- Parameters
y (int) -- Year.
z (str) -- Zone.
z1 (str) -- Zone.
- Returns
Fixed operation and maintenance cost of transmission lines at a given year, source and destination zone.
- Return type
poi.ExprBuilder
- cost_fix_tech_breakdown(y, z, te)[source]¶
Fixed operation and maintenance cost breakdown.
- Parameters
y (int) -- Year.
z (str) -- Zone.
te (str) -- Technology.
- Returns
Fixed operation and maintenance cost of technologies at a given year, zone and technology.
- Return type
poi.ExprBuilder
- cost_newline_breakdown(y, z, z1)[source]¶
New transmission line investment cost breakdown.
- Parameters
y (int) -- Year.
z (str) -- Zone.
z1 (str) -- Zone.
- Returns
Investment cost of new transmission lines at a given year, source and destination zone.
- Return type
poi.ExprBuilder
- cost_newtech_breakdown(y, z, te)[source]¶
New technology investment cost breakdown.
- Parameters
y (int) -- Year.
z (str) -- Zone.
te (str) -- Technology.
- Returns
Investment cost of new technologies at a given year, zone and technology.
- Return type
poi.ExprBuilder
- cost_var_line_breakdown(y, z, z1)[source]¶
Variable operation and maintenance cost breakdown of transmission lines.
- Parameters
y (int) -- Year.
z (str) -- Zone.
z1 (str) -- Zone.
- Returns
Variable operation and maintenance cost of transmission lines at a given year, source and destination zone.
- Return type
poi.ExprBuilder
- cost_var_tech_breakdown(y, z, te)[source]¶
Variable operation and maintenance cost breakdown.
- Parameters
y (int) -- Year.
z (str) -- Zone.
te (str) -- Technology.
- Returns
Variable operation and maintenance cost of technologies at a given year, zone and technology.
- Return type
poi.ExprBuilder
- define_objective()[source]¶
Objective function of the model, to minimize total cost.
- Return type
None
- fix_cost_rule()[source]¶
Fixed O&M cost of technologies and transmission lines.
- Returns
Total fixed O&M cost of technologies and transmission lines over all years, zones and technologies.
- Return type
poi.ExprBuilder
- fuel_cost_breakdown(y, z, te)[source]¶
Fuel cost breakdown of technologies.
- Parameters
y (int) -- Year.
z (str) -- Zone.
te (str) -- Technology.
- Returns
Fuel cost at a given year, zone and technology.
- Return type
poi.ExprBuilder
- income_rule()[source]¶
Income from water withdrawal. Reference: https://www.nature.com/articles/s44221-023-00126-0
- Returns
Income from water withdrawal.
- Return type
poi.ExprBuilder
- lns_cost_rule()[source]¶
VOLL penalty on the load-not-served slack, discounted to NPV.
Returns a zero ExprBuilder when
allow_load_sheddingis false, so callers can add it unconditionally.- Return type
ExprBuilder
- newline_cost_rule()[source]¶
Total investment cost of new transmission lines.
- Returns
Total investment cost of new transmission lines over all years, zones.
- Return type
poi.ExprBuilder