message_ix_models.project.engage.workflow

ENGAGE workflow pieces for reuse with message_ix_models.Workflow.

These functions emulate the collective behaviour of message_data.engage.runscript_main, message_data.engage.scenario_runner and the associated configuration, but are adapted to be reusable, particularly in the Workflow pattern used in e.g. project.navigate.

Functions

add_steps(workflow, base, config[, name])

Add steps to workflow for running ENGAGE scenarios on base.

calc_budget(context, scenario, bdgt, method)

Calculate and apply budget.

calc_hist_cum_CO2(context, scen, info)

Calculate historic CO2 emissions.

retr_CO2_price(scen)

Retrieve PRICE_EMISSION data and transform for use as tax_emission.

step_0(context, scenario, **kwargs)

Preparation for the ENGAGE climate policy workflow.

step_1(context, scenario, config)

Step 1 of the ENGAGE climate policy workflow.

step_2(context, scenario, config)

Step 2 of the ENGAGE climate policy workflow.

step_3(context, scenario, config)

Step 3 of the ENGAGE climate policy workflow.

Classes

PolicyConfig(demand_scenario, ...)

Configuration for the 3-step ENGAGE workflow for climate policy scenarios.

ScenarioRunner()