Parameter definition
This file contains the definition of all parameters used in MESSAGEix.
In MESSAGEix, all parameters are understood as yearly values, not as per (multi-year) period.
This provides flexibility when changing the resolution of the model horizon (i.e., the set year
).
Parameters written in italics are auxiliary parameters
that are either generated automatically when exporting a message_ix.Scenario
to gdx
or that are computed during the pre-processing stage in GAMS.
General parameters of the MESSAGEix implementation
Parameter name |
Index dimensions |
Explanatory comments |
duration_period (\(|y|\)) |
year |
duration of multi-year period (in number of years) |
duration_time |
time |
duration of sub-annual time slices (relative to 1) |
duration_time_rel |
time | time |
relative duration between sub-annual time slices |
interestrate |
year |
economy-wide interest rate or social discount rate |
df_period |
year |
cumulative discount factor over period duration |
df_year |
year |
discount factor of the last year in the period |
Parameters of the Resources section
Parameter name |
Index dimensions |
resource_volume |
node | commodity | grade |
resource_cost |
node | commodity | grade | year |
resource_remaining |
node | commodity | grade | year |
bound_extraction_up |
node | commodity | level | year |
commodity_stock |
node | commodity | level | year |
historical_extraction |
node | commodity | grade | year |
Parameters of the Demand section
Parameter name |
Index dimensions |
demand [demand_fixed] |
node | commodity | level | year | time |
peak_load_factor |
node | commodity | year |
Parameters of the Technology section
Bounds on capacity and activity
The following parameters specify upper and lower bounds on new capacity, total installed capacity, and activity.
Parameter name |
Index names |
bound_new_capacity_up |
node_loc | tec | year_vtg |
bound_new_capacity_lo |
node_loc | tec | year_vtg |
bound_total_capacity_up |
node_loc | tec | year_act |
bound_total_capacity_lo |
node_loc | tec | year_act |
bound_activity_up |
node_loc | tec | year_act | mode | time |
bound_activity_lo |
node_loc | tec | year_act | mode | time |
The bounds on activity are implemented as the aggregate over all vintages in a specific period
(cf. Equation ACTIVITY_BOUND_UP
and ACTIVITY_BOUND_LO
).
Dynamic constraints on capacity and activity
The following parameters specify constraints on the growth of new capacity and activity, i.e., market penetration.
Parameter name |
Index names |
initial_new_capacity_up |
node_loc | tec | year_vtg |
growth_new_capacity_up |
node_loc | tec | year_vtg |
soft_new_capacity_up |
node_loc | tec | year_vtg |
initial_new_capacity_lo |
node_loc | tec | year_vtg |
growth_new_capacity_lo |
node_loc | tec_actual | year_vtg |
soft_new_capacity_lo |
node_loc | tec | year_vtg |
initial_activity_up |
node_loc | tec | year_act | time |
growth_activity_up |
node_loc | tec | year_act | time |
soft_activity_up |
node_loc | tec | year_act | time |
initial_activity_lo |
node_loc | tec | year_act | time |
growth_activity_lo |
node_loc | tec | year_act | time |
soft_activity_lo |
node_loc | tec | year_act | time |
Parameters for the add-on technologies
The implementation of MESSAGEix includes the functionality to introduce “add-on technologies” that are specifically
linked to parent technologies. This feature can be used to model mitigation options (scrubber, cooling).
Note, that no default addon_conversion is set, to avoid default conversion factors of 1 being set for technologies
with mutiple modes, of which only a single mode should be linked to the add-on technology.
Parameter name |
Index names |
addon_conversion |
node | tec | year_vtg | year_act | mode | time | type_addon |
addon_up |
node | tec | vintage | year | mode | time | type_addon |
addon_lo |
node | tec | vintage | year | mode | time | type_addon |
The upper bound of
Cost parameters for ‘soft’ relaxations of dynamic constraints
The implementation of MESSAGEix includes the functionality for ‘soft’ relaxations of dynamic constraints on
new-built capacity and activity (see Keppo and Strubegger, 2010 [3]).
Refer to the section Dynamic constraints on market penetration.
Parameter name |
Index names |
abs_cost_new_capacity_soft_up |
node_loc | tec | year_vtg |
abs_cost_new_capacity_soft_lo |
node_loc | tec | year_vtg |
level_cost_new_capacity_soft_up |
node_loc | tec | year_vtg |
level_cost_new_capacity_soft_lo |
node_loc | tec | year_vtg |
abs_cost_activity_soft_up |
node_loc | tec | year_act | time |
abs_cost_activity_soft_lo |
node_loc | tec | year_act | time |
level_cost_activity_soft_up |
node_loc | tec | year_act | time |
level_cost_activity_soft_lo |
node_loc | tec | year_act | time |
Historical capacity and activity values
Historical data on new capacity and activity levels are included in MESSAGEix for
correct accounting of the vintage portfolio and a seamless implementation of dynamic constraints from
historical years to model periods.
Parameter name |
Index names |
historical_new_capacity |
node_loc | tec | year_vtg |
historical_activity |
node_loc | tec | year_act | mode | time |
Auxiliary investment cost parameters and multipliers
Documentation not yet included.
Parameters of the Emission section
The implementation of MESSAGEix includes a flexible and versatile accounting of emissions across different
categories and species, with the option to define upper bounds and taxes on various (aggregates of) emissions
and pollutants), (sets of) technologies, and (sets of) years.
Parameter name |
Index dimensions |
historical_emission |
node | emission | type_tec | year |
emission_scaling |
type_emission | emission |
bound_emission |
node | type_emission | type_tec | type_year |
tax_emission |
node | type_emission | type_tec | type_year |
Parameters of the Land-Use model emulator section
The implementation of MESSAGEix includes a land-use model emulator, which draws on exogenous land-use scenarios
(provided by another model) to derive supply of commodities (e.g., biomass) and emissions
from agriculture and forestry.
Parameter name |
Index dimensions |
historical_land |
node | land_scenario | year |
land_cost |
node | land_scenario | year |
land_input |
node | land_scenario | year | commodity | level | time |
land_output |
node | land_scenario | year | commodity | level | time |
land_use |
node | land_scenario | year | land_type |
land_emission |
node | land_scenario | year | emission |
initial_land_scen_up |
node | land_scenario | year |
growth_land_scen_up |
node | land_scenario | year |
initial_land_scen_lo |
node | land_scenario | year |
growth_land_scen_lo |
node | land_scenario | year |
initial_land_up |
node | year | land_type |
dynamic_land_up |
node | land_scenario | year | land_type |
growth_land_up |
node | year | land_type |
initial_land_lo |
node | year | land_type |
dynamic_land_lo |
node | land_scenario | year | land_type |
growth_land_lo |
node | year | land_type |
Parameters of the Share Constraints section
Share constraints define the share of a given commodity to be active on a certain level
Parameter name |
Index dimensions |
share_commodity_up |
shares | node_share | year_act | time |
share_commodity_lo |
shares | node | year_act | time |
share_mode_up |
shares | node_loc | technology | mode | year_act | time |
share_mode_lo |
shares | node_loc | technology | mode | year_act | time |
Parameters of the Relations section
Generic linear relations are implemented in MESSAGEix.
This feature is intended for development and testing only - all new features should be implemented
as specific new mathematical formulations and associated sets & parameters.
Parameter name |
Index dimensions |
relation_upper |
relation | node_rel | year_rel |
relation_lower |
relation | node_rel | year_rel |
relation_cost |
relation | node_rel | year_rel |
relation_new_capacity |
relation | node_rel | year_rel | tec |
relation_total_capacity |
relation | node_rel | year_rel | tec |
relation_activity |
relation | node_rel | year_rel | node_loc | tec | year_act | mode |
Fixed variable values
The following parameters allow to set variable values to a specific value.
The value is usually taken from a solution of another model instance
(e.g., scenarios where a shock sets in later to mimick imperfect foresight).
The fixed values do not override any upper or lower bounds that may be defined,
so fixing variables to values outside of that range will yield an infeasible model.
Parameter name |
Index dimensions |
fixed_extraction |
node | commodity | grade | year |
fixed_stock |
node | commodity | level | year |
fixed_new_capacity |
node | technology | year_vtg |
fixed_capacity |
node | technology | year_vtg | year_act |
fixed_activity |
node | technology | year_vtg | year_act | mode | time |
fixed_land |
node | land_scenario | year |
Note that the variable \(STOCK\_CHG\) is determined implicitly by the \(STOCK\) variable
and therefore does not need to be explicitly fixed.