finance

Public-debt accounting and caps for new-build investment.

Each new-tech investment carries a public-debt obligation equal to public_debt_ratio[te] times its discounted investment cost. The module exposes that obligation as an indexed expression public_debt_newtech[y, z, te] and (optionally) caps the public debt taken on each year, system-wide and per-zone:

\[ \begin{align}\begin{aligned}{\rm{public\_debt}}_{y,z,te} = {\rm{cost\_newtech}}_{y,z,te} \times r^{\rm{public}}_{te}\\\sum_{z, te} {\rm{public\_debt}}_{y,z,te} \le \overline{D^{\rm{sys}}_{y}}\quad\forall y\\\sum_{te} {\rm{public\_debt}}_{y,z,te} \le \overline{D^{\rm{zone}}_{y, z}}\quad\forall y, z\end{aligned}\end{align} \]

This module is OFF unless the user provides public_debt_ratio; the optional caps default to +inf (no constraint added).

class prepshot._model.finance.AddFinanceConstraints(model)[源代码]

基类:object

Public-debt expressions and (optional) cap constraints.

参数

model (object) --

__init__(model)[源代码]

Initialize the class and add expressions / constraints.

Reads model.cost_newtech_breakdown (built by AddCostObjective), so this must run AFTER AddCostObjective.

参数

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

返回类型

None

public_debt_max_system_rule(y)[源代码]

System-wide upper bound on public debt taken in year y.

Missing entry or +inf skips the constraint.

参数

y (int) -- Year.

返回

The cap constraint, or None if uncapped.

返回类型

poi.ConstraintIndex or None

public_debt_max_zone_rule(y, z)[源代码]

Per-zone upper bound on public debt taken in year y.

参数
  • y (int) -- Year.

  • z (str) -- Zone.

返回

The cap constraint, or None if uncapped.

返回类型

poi.ConstraintIndex or None

public_debt_newtech_rule(y, z, te)[源代码]

Public-debt obligation incurred by a new-tech investment.

参数
  • y (int) -- Year.

  • z (str) -- Zone.

  • te (str) -- Technology.

返回

Discounted public-debt obligation for (y, z, te).

返回类型

poi.ExprBuilder