message_ix_models.project.navigate.CLIMATE_POLICY

message_ix_models.project.navigate.CLIMATE_POLICY: dict[str | None, Config] = {'1000 Gt': PolicyConfig(demand_scenario={}, reserve_margin=False, solve={'model': 'MESSAGE', 'solve_options': {'barcrossalg': 2}, 'max_adjustment': 0.1}, label='1000 Gt', steps=[1], budget=2449, tax_emission_scenario={}, step_3_type_emission=['TCE_non-CO2']), '15C': PolicyConfig(demand_scenario={}, reserve_margin=False, solve={'model': 'MESSAGE', 'solve_options': {'barcrossalg': 2}, 'max_adjustment': 0.1}, label='15C', steps=[1, 2, 3], budget=1190, tax_emission_scenario={}, step_3_type_emission=['TCE_non-CO2']), '1600 Gt': PolicyConfig(demand_scenario={}, reserve_margin=False, solve={'model': 'MESSAGE', 'solve_options': {'barcrossalg': 2}, 'max_adjustment': 0.1}, label='1600 Gt', steps=[1], budget=4162, tax_emission_scenario={}, step_3_type_emission=['TCE_non-CO2']), '2000 Gt': PolicyConfig(demand_scenario={}, reserve_margin=False, solve={'model': 'MESSAGE', 'solve_options': {'barcrossalg': 2}, 'max_adjustment': 0.1}, label='2000 Gt', steps=[1], budget=5320, tax_emission_scenario={}, step_3_type_emission=['TCE_non-CO2']), '20C T6.2': PolicyConfig(demand_scenario={}, reserve_margin=False, solve={'model': 'MESSAGE', 'solve_options': {'barcrossalg': 2}, 'max_adjustment': 0.1}, label='20C', steps=[3], budget='calc', tax_emission_scenario={'scenario': '2C-Default ENGAGE_20C_step-2'}, step_3_type_emission=['TCE']), '20C': PolicyConfig(demand_scenario={}, reserve_margin=False, solve={'model': 'MESSAGE', 'solve_options': {'barcrossalg': 2}, 'max_adjustment': 0.1}, label='20C', steps=[1, 2, 3], budget=2585, tax_emission_scenario={}, step_3_type_emission=['TCE_non-CO2']), 'NPi': PolicyConfig(demand_scenario={}, reserve_margin=False, solve={'model': 'MESSAGE', 'solve_options': {'barcrossalg': 2}, 'max_adjustment': 0.1}, label='NPi', steps=[], budget='calc', tax_emission_scenario={}, step_3_type_emission=['TCE_non-CO2']), None: Config(demand_scenario={}, reserve_margin=False, solve={'model': 'MESSAGE', 'solve_options': {'barcrossalg': 2}, 'max_adjustment': 0.1})}

Mapping of climate policy labels to engage.workflow.PolicyConfig objects.

  • Some of the budget values were originally from message_data/projects/engage/config.yaml, but have been updated using, variously:

    • The results of diagnostic runs like Ctax-ref with various values for the –ctax= parameter.

    • The Excel-based ENGAGE budget calculator in projects/engage/doc/v4.1.7_T4.5_budget_calculation_r3.1.xlsx.

    • The interpolate_budget() function via “mix-models navigate check-budget”.

  • In the engage/config.yaml, values for low_dem_scen (a scenario name only) appear to form a “waterfall”, with each successively lower budget referencing the previous, which seems to preclude running lower budgets without first running every larger budget. In the NAVIGATE workflow, the demand_scenario values (scenario info style, a dict of model name, scenario name, and optional version) are set in .navigate.workflow.generate().