EDITS (project.edits)

“Energy Demand changes Induced by Technological and Social innovations (EDITS)”

Project information

  • Website: https://iiasa.ac.at/projects/edits

  • Acknowledgement:

    [Work] was supported by funding from the Energy Demand changes Induced by Technological and Social innovations (EDITS) project, which is part of the initiative coordinated by the Research Institute of Innovative Technology for the Earth (RITE) and International Institute for Applied Systems Analysis (IIASA), and funded by the Ministry of Economy, Trade, and Industry (METI), Japan.

  • The EDITS project funds many activities, only a few of which are related to message_ix_models. This code, data, and documentation concern only this subset; at the moment, specifically the Model Complementarity Exercise (MCE) activity related to transportation and involving the three models:

    • PASTA —operated by the International Transport Forum.

    • MESSAGEix-Transport —operated by IIASA.

    • DNE21+ —operated by RITE.

Usage

The code requires:

  1. A file named pasta.csv. This file contains projected activity data from the PASTA ‘demand’ components.

    To place this file in the right location, run:

    $ mix-models config show
    

    The output should include lines like:

    Configuration path: /home/username/.local/share/ixmp/config.json
    
    {
      ...
      "message_local_data": "/home/username/path/to/local/data",
      ...
    }
    

    …where path/to/local/data is some directory on your system containing local data. If you do not have such a directory, you can create one (wherever you like) and run mix-models config set message_local_data /home/username/path/to/local/data to store it in your configuration.

    The file pasta.csv goes in a subdirectory named edits/.

Then use the command line:

$ mix-models edits --help
Usage: mix-models edits [OPTIONS] COMMAND [ARGS]...

  EDITS project.

  https://docs.messageix.org/projects/models/en/latest/project/edits.html

Options:
  --help  Show this message and exit.

Commands:
  _debug  Development/debugging code.

Currently edits _debug runs read_pasta_data(). See the function documentation.

Code reference

message_ix_models.project.edits.DATA_MAP = {'PKM': ('passenger activity', 'km'), 'TKM': ('freight activity', 'km'), 'VKM': ('vehicle activity', 'km')}

Mapping from OECD.ITF “Data” codes to message_ix_models quantity names and units.

message_ix_models.project.edits.PASTA_DIMS = ['Region', 'Vehicle_type', 'Data', 'Sector', 'Scope', 'Scenario', 'Year']

Dimensions of the PASTA activity data (= columns in CSV file in long format).

message_ix_models.project.edits.coords_to_codelists(qty: AnyQuantity, *, id_transform: ~collections.abc.Callable | None = <method 'upper' of 'str' objects>, **kwargs) list['Codelist'][source]

Convert the coordinates of qty to a collection of Codelist.

Todo

Move upstream, to genno.

message_ix_models.project.edits.gen_demand(context: Context) None[source]

Generate MESSAGEix-Transport demand data from PASTA.

Todo

Convert an ExoDataSource class; connect to the genno.Computer used for MESSAGEix-Transport.

message_ix_models.project.edits.generate_pasta_structures(data: AnyQuantity | None = None) StructureMessage[source]

Generate SDMX data structures for the PASTA activity data flows.

The file [message_local_data]/edits/pasta-structures.xml is created or updated.

message_ix_models.project.edits.pasta_native_to_sdmx() AnyQuantity[source]

Read PASTA activity data from [message_local_data]/edits/pasta.csv.

The file [message_local_data]/edits/pasta-data.xml is created with an SDMX-ML formatted version of the data set.

Returns:

with dimensions DIMS.

Return type:

Quantity