Methods - EnergyModelsInvestment extensions

Index

EnergyModelsGeography

Methods

EnergyModelsGeography.update_objectiveMethod
EMG.update_objective(m, 𝒯, ℳ, modeltype::EMB.AbstractInvestmentModel)

Create objective function overloading the default from EnergyModelsBase for AbstractInvestmentModel.

Maximize Net Present Value from revenues, investments (CAPEX) and operations (OPEX)

TODO:

* consider passing expression around for updating

* consider reading objective and adding terms/coefficients (from model object m)

source
EnergyModelsGeography.constraints_capacity_installedMethod
EMG.constraints_capacity_installed(
    m,
    tm::TransmissionMode,
    𝒯::TimeStructure,
    modeltype::EMB.AbstractInvestmentModel,
)

When the modeltype is an investment model, the function introduces the related constraints for the capacity expansion. The investment mode and lifetime mode are used for adding constraints.

The default function only accepts nodes with SingleInvData. If you have several capacities for investments, you have to dispatch specifically on the function.

source
EnergyModelsGeography.variables_trans_capexMethod
EMG.variables_trans_capex(m, 𝒯, ℳ,, modeltype::EMB.AbstractInvestmentModel)

Create variables for the capital costs for the investments in transmission.

Additional variables for investment in capacity:

  • :trans_cap_capex - CAPEX costs for increases in the capacity of a transmission mode
  • :trans_cap_current - installed capacity for storage in each strategic period
  • :trans_cap_add - added capacity
  • :trans_cap_rem - removed capacity
  • :trans_cap_invest_b - binary variable whether investments in capacity are happening
  • :trans_cap_remove_b - binary variable whether investments in capacity are removed
source

EnergyModelsInvestments

Methods

EnergyModelsInvestments.get_var_instFunction
EMI.get_var_inst(m, prefix::Symbol, tm::EMG.TransmissionMode)

When the transmission mode tm is used as conditional input, it extracts only the variable for the specified transmission mode.

source
EnergyModelsInvestments.investment_dataFunction
EMI.investment_data(tm::EMG.TransmissionMode)
EMI.investment_data(tm::EMG.TransmissionMode, field::Symbol)

Return the InvestmentData of the transmission mode tm or if field is specified, it returns the InvData for the corresponding capacity.

source