message_ix_models.model.transport.report.callback

message_ix_models.model.transport.report.callback(rep: Reporter, context: Context) None[source]

prepare_reporter() callback for MESSAGEix-Transport.

rep is extended with tasks for transport reporting. Among others, these include:

  1. Select subsets of transport technologies. For each input quantity in SELECT, for example CAP_NEW:*, tasks are added to compute:

    • CAP_NEW:*:transport all —selects only the technologies in t::transport all.

    • CAP_NEW:*:ldv —selects only the technologies in t::transport LDV.

    • CAP_NEW:*:non-ldv —selects only the technologies in t::transport P ex LDV.

  2. (Re) apply units. ixmp.report.operator.data_for_quantity() drops units for most data extracted from a MESSAGEix-GLOBIOM Scenario, because the data contain a mix of inconsistent units.

    For every item in UNITS, add a task to apply or assign units to selected subsets of data that are guaranteed to have those units.

  3. Aggregate in 3 stages, using key.agg.t and nl::world agg, t::transport modes 1, producing keys like emi:*:T. These values are aggregated by technology group and/or mode.

  4. Invoke misc().

  5. Invoke convert_iamc().

  6. Invoke convert_sdmx().

  7. Add plots from transport.plot using report.add_plots(). These appear at key.report.plot. If the scenario to be reported is not solved, only a subset of plots are added.

  8. Invoke transport.base.prepare_reporter().

  9. key.report.all which includes all of the above.