Skip to content

brightway-lca/simapro_ecoinvent_elementary_flows

Repository files navigation

simapro_ecoinvent_elementary_flows

This repository is a openly-developed and openly-available mapping of the elementary flow lists of ecoinvent 3.7 and SimaPro 9.4.

Table of Contents

Background

Translating across nomenclature lists is an eternal problem in many problem domains, including life cycle assessment. There have been many ad hoc mapping files and file formats over the years, but recently a large working group produced the GLAD Elementary Flow Resources repository; we will use its data formats for both input files and flow mappings:

Our objective is to improve on the UNEP workflow by making the process of creating the mappings transparent and open to any one who wants to contribute. In addition to other benefits, this should also make future updates easier.

Status

Current status is reported in status.md

Methodology

Simapro Context values

To the best of our understanding, the elementary flow list provided by PRé uses a different model for the Context value than what is used in ecoinvent. For one thing, they have one UUID for flows, regardless of the subcategory Context values. Indeed, the master data list includes only the base Category values, namely:

  • 'Airborne emissions'
  • 'Economic issues'
  • 'Emissions to soil'
  • 'Final waste flows'
  • 'Non material emissions'
  • 'Raw materials'
  • 'Social issues'
  • 'Waterborne emissions'

They also use slightly different names for these base Context values, e.g. for Airborne emissions:

  • In the master flow list: Airborne emissions
  • In an LCI file: Emissions to air
  • In an LCIA file: Air

We use the LCI file version, as this is the most common use case for data conversion. These are (again, to the best of our knowledge):

  • Emissions to air
  • Economic issues
  • Emissions to soil
  • Final waste flows
  • Non material emissions
  • Resources
  • Social issues
  • Emissions to water

Context mapping

Here is our current mapping for different base Context values

Resources

ecoinvent context Simapro context Match condition (Simapro to ecoinvent)
natural resource/land Resources/land =
natural resource/unspecified Resources/(unspecified) =
natural resource/biotic Resources/biotic =
natural resource/in ground Resources/in ground =
natural resource/in air Resources/in air =
natural resource/in water Resources/in water =
natural resource/in water Resources/fossil well ~

Water

ecoinvent context Simapro context Match condition (Simapro to ecoinvent)
water/fossil well Emissions to water/fossilwater ~
water/ground- Emissions to water/groundwater =
water/ground-, long-term Emissions to water/groundwater, long-term =
water/ocean Emissions to water/ocean =
water/surface water Emissions to water/lake <
water/surface water Emissions to water/river <
water/surface water Emissions to water/river, long-term <
water/unspecified Emissions to water/(unspecified) =

Air

ecoinvent context Simapro context Match condition (Simapro to ecoinvent)
air/indoor Emissions to air/indoor =
air/low population density, long-term Emissions to air/low. pop., long-term =
air/lower stratosphere + upper troposphere Emissions to air/stratosphere ~
air/lower stratosphere + upper troposphere Emissions to air/stratosphere + troposphere ~
air/non-urban air or from high stacks Emissions to air/low. pop. =
air/unspecified Emissions to air/(unspecified) =
air/urban air close to ground Emissions to air/high. pop. =

Soil

ecoinvent context Simapro context Match condition (Simapro to ecoinvent)
soil/agricultural Emissions to soil/agricultural =
soil/forestry Emissions to soil/forestry =
soil/industrial Emissions to soil/industrial =
soil/industrial Emissions to soil/urban, non industrial ~
soil/unspecified Emissions to soil/(unspecified) =

Contributing

Your contributions are welcome! This effort, and indeed consistent, high-quality LCA results, are only possible when we work together.

You will need a Github account.

We follow the Github Flow, a workflow based around pull requests, and use Github actions to do quality assurance. The Github flow documentation covers the basics; to make a contribution here you will need to: So, if you want to contribute you need to:

  • Write some code to create CSVs following the Output flow mapping format. You can also do mappings manually, though we would prefer you to automate this as much as possible, so that we can easily change or regenerate the mappings if needed. The repo includes a template for doing matching, and the folder Notebooks includes matching notebooks that have been incorporated into the current data.
  • However you generate it, you must create a CSV with new mappings in the Contribute directory.
  • Create a pull request, using the new_mapping template. Make sure you have done the tasks given in the template; you can always update your pull request with new commits! A contributor forks this repository and adds their mapping contribution as a new CSV file in the Contribute directory. Ideally these contributions will be generated programmatically, either via a Jupyter Notebook (added to Notebooks) or a script (added to Scripts).
  • They create a pull request, which triggers Github Actions which check the validity of their mapping file, and checks whether the new mappings contradict existing mappings. If there are errors, an error log is created and attached to the pull request.
  • If the pull request is accepted, a separate set of Github Actions are run which merge the new mappings into Mapping/Output/Mapped_files, and updates the README.md file and status reports.

Authors

Maintainers

License

About

Utilities and correspondence lists for working with SimaPro

Resources

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published