Internals - EnergyModelsInvestment extension
Index
EnergyModelsBase.objective_investEnergyModelsBase.variables_ext_dataEnergyModelsGeography.constraints_capacity_installedEnergyModelsInvestments.get_var_instEnergyModelsInvestments.has_investmentEnergyModelsInvestments.investment_data
EnergyModelsGeography
Methods
EnergyModelsGeography.constraints_capacity_installed — Method
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.
EnergyModelsBase
Methods
EnergyModelsBase.objective_invest — Function
EMB.objective_invest(
m,
ℒᵗʳᵃⁿˢ::Vector{Transmission},
𝒯ᴵⁿᵛ::TS.AbstractStratPers,
modeltype::AbstractInvestmentModel,
)Create a JuMP expression indexed over the investment periods 𝒯ᴵⁿᵛ for the capital expenditures contribution of the TransmissionModes within the Transmission corridors. They are not discounted and do not take the duration of the investment periods into account.
The expression includes the sum of the capital expenditures for all TransmissionModes within the Transmission corridors whose method of the function has_investment returns true.
EnergyModelsBase.variables_ext_data — Method
EMB.variables_ext_data(m, _::Type{SingleInvData}, ℳᴵⁿᵛ::Vector{<:TransmissionMode}, 𝒯, 𝒫, modeltype::AbstractInvestmentModel)Create variables for the capital costs for the investments in transmission modes.
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
EnergyModelsInvestments
Methods
EnergyModelsInvestments.get_var_inst — Function
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.
EnergyModelsInvestments.has_investment — Function
EMI.has_investment(tm::EMG.TransmissionMode)For a given transmission mode tm, checks that it contains the required investment data.
EnergyModelsInvestments.investment_data — Function
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.