SHAPE (project.shape)

SHAPE Logo

“Sustainable development pathways achieving Human well-being while safeguarding the climate And Planet Earth”

The SHAPE project introduces the new term Sustainable Development Pathway or SDP for its scenarios, roughly analogous to SSPs. The SDPs simultaneously achieve the Sustainable Development Goals in 2030, maintain sustainable development thereafter, and meet the climate targets set out in the Paris Agreement.

Uses:

  • m-data:/model/buildings

  • m-data:/reference/model/material

  • m-data:/reference/model/transport

Project information

  • Website: http://shape-project.org

  • Part of AXIS, an ERA-NET initiated by JPI Climate and funded by DLR/BMBF (DE, Grant No. 01LS1907A-B-C), Formas (SE), FFG/BMWFW (AT), NWO (NL) and RCN (NO) with co-funding by the European Union (Grant No. 776608).

  • Project period: 2019-09 to 2022-08.

​Data

data/shape/ contains common data for constructing scenarios. These data quantify the SDP narratives (see link above) as future projections for certain quantities. Modeling tools [1] should use exo_data.prepare_computer() to configure SHAPE to retrieve these quantities and select an appropriate scenario’s data for model setup calculations.

The files include:

gdp_v*.mif, gdp_v*.xlsx

Gross Domestic Product.

Generated by Bjoern Soergel at PIK, using stylized GDP/capita growth rate modifications to represent three narratives from the “Economic paradigm, growth, inequality and finance” section of the SHAPE description. The narratives are identified by codes for the IAMC “Scenario” dimension:

  • “innovation”: “Cornucopia (market-driven innovation)”

  • “service”: “Human Service Economy (managing the global commons)”

  • “society”: “A New Public Economy (resilient communities)”

The files have multiple versions:

  • “v1p0” version 1.0.

  • “v1p1” version 1.1.

The extension .mif apparently means “modeling interchange file”; this is a CSV file with semicolon (;) delimiters.

population_v*.mif, population_v*.xlsx

Population.

The values are the same across all SDPs; the single code “all_SHAPE_SDPs” is used for the “Scenario” dimension.

The values are identical to the SSP1 population projection.

Todo

This is may not be true, because the data differ in some (unspecified) way between version 1.0 and 1.1. Locate an accurate description for these data.

Note

If true, this would imply that the same population data could be retrieved with SSPOriginal and underlying files, also stored in the message_data repository; so the files data/shape/population_* are duplicates.

gini_v*.csv:

Gini coefficients. Generated by Jihoon Min.

  • Normative Gini trajectories that will achieve SDG1 (No poverty) and SDG11 (Reduced inequalities) for most countries under the corresponding GDP projections (above), also in a stylized way.

  • Same dimensions as the GDP data.

  • v1.1 uses a slower rate of maximum Gini decrease to alleviate concerns about feasibility.

urbanization.csv

Generated by Alessio Mastrucci.

Three different codes are used for the “Scenario” dimension:

  • “urb_distr”

  • “urb_green”

  • “urb_tech”

Todo

Describe what these values represent.

Code reference

Handle data from the SHAPE project.

message_ix_models.project.shape.data.INFO: dict[str, Info] = {'gdp': {'latest': '1.2', 'suffix': '.mif', 'variable': 'GDP|PPP'}, 'gini': {'drop': ['tgt.achieved', 'Base gini imputed', 'Share of final consumption among GDP imputed'], 'latest': '1.1', 'suffix': '.csv', 'variable': 'Gini'}, 'population': {'latest': '1.2', 'suffix': '.mif', 'variable': 'Population'}, 'urbanisation': {'drop': ['Notes'], 'latest': '1.0', 'suffix': '.csv', 'variable': 'Population|Urban|Share'}}

Information about data file version, suffixes, “variable” codes, and extra columns to drop.

class message_ix_models.project.shape.data.SHAPE(*args, **kwargs)[source]

Provider of exogenous data from the SHAPE project data source.

class Options(aggregate: bool = True, interpolate: bool = True, measure: str = '', name: str = '', dims: tuple[str, ...] = ('n', 'y'), version: str = 'latest', scenario: str = '')[source]
measure: str = ''

Must be one of the keys of INFO.

scenario: str = ''

One of the SHAPE “SDP” scenario names.

version: str = 'latest'

Version of the data, either “latest” or a string like “1.2”.

get() :data:`~genno.core.quantity.AnyQuantity`[source]

Load the data.

  1. Read the file. Use “;” for .mif files; set columns as index on load.

  2. Drop columns “Model” (meaningless); others from info.

  3. Drop empty columns (final column in .mif files).

  4. Convert column labels to integer.

  5. Stack to long format.

  6. Apply final column names.

options: Options

Instance of the Options class.

A concrete class that overrides Options should redefine this attribute, to facilitate type checking.

where: list[str | 'Path'] = ['private']

where keyword argument to path_fallback(). See _where().

message_ix_models.project.shape.data.UNITS = {'%': '', 'NA': 'dimensionless', 'billion $2005/yr': 'GUSD_2005 / year'}

Convert unit forms appearing in files to pint-compatible expressions.