Skip to content

Appa LCA framework

The Appa LCA (Automatable, Portable and Parametric Life Cycle Assessment) framework has been developed to facilitate the use of screening LCA in any workflow or software, in the perspective of facilitating ecodesign initiatives. It aims to bring together the best of the LCA method, which is versatile, holistic and flexible, and the ad hoc impact assessment tools, which are easy to use and integrate. It is based on the creation and use of impact models, which can be seen as stand-alone, parametric and modular LCA templates that operate at the impact level, i.e. after the application of LCIA methods.

The main particularity of Appa LCA is that it divides the complexity of LCA into two different, asynchronous worlds, each with its own dedicated tool:

  • The LCA practitioner world, addressed in the Appa Build package.
  • The system designer world, addressed in the Appa Run package.

Appa Build produces impact models and offers several features that can be useful for an LCA practitioner. For example, Appa Build allows importing impact data from other LCA software in the perspective of using background datasets from any LCA database. Appa Run imports impact models and provides interfaces to run them easily from any workflow or software environment, as it is light, fast, requires only a few Python package dependencies with no major restrictions in terms of package versions and no LCA database dependencies.

Appa LCA framework

Appa LCA framework consists of two Python packages, Appa Build and Appa Run, which build and run impact models respectively.

What problems does it solve?

Commercial LCA tools are typically not easy to integrate into design workflows. They are quite heavy pieces of code, they require licenses for the software itself and for the LCI databases. They do not always provide an API to interface with other software. On the other hand, some tools can solve this problem, but they typically only calculate the carbon impact, and are not designed to be dynamically connected with an LCA. Appa Run intends to solve all of these problems.

On the LCA side, part of the complexity lies in the difficulty of doing the inventory, as LCI data is scarce and sometimes in databases that cannot be accessed by the same LCA software. Another source of complexity is that some data may not be representative enough. Appa Build intends to solve these problems by allowing data import at the impact level and by providing a powerful way to parameterize and model input LCI data.

When can Appa LCA be useful?

You may enjoy using Appa LCA if:

  • You want to integrate LCA into the workflow of a product designer
  • You want to present LCA results in an lightweight interactive web app
  • You want to automate screening LCA of product catalog
  • You want an alternative way to interact with Brightway and lca_algebraic

How does it work?

Appa Build is based on the excellent Brightway, a LCA Python library, and lca_algebraic, wich allows symbolic LCA calculation for Brightway. Appa Build relies on the bw2data package to import the LCI database, LCIA methods and elementary flows. Appa Build uses lca_algebraic for partial LCA calculation: each static activity (i.e. activity without parametric exchange) is calculated up to the impact level.

Appa Run executes impact models without needing any of these packages, nor LCI databases. Scipy and NumPy are used to run impact model's symbolic expressions.

How does an impact model look like?

Impact models are yaml files that are automatically generated by Appa Build and can be imported and executed by Appa Run. In a nushell they contain:

  • Metadata about the LCA behind the impact model
  • Information about the parameters needed to calculate the impacts
  • A set of symbolic expressions for each LCIA method, where the symbols are the parameters of the impact model.

Their contents and structure are described in details in the section impact models in depth.

Here is a simplified view of what an impact model may look like:

metadata:
  author:
    name: Maxime PERALTA
    organization: CEA
    mail: maxime.peralta@cea.fr
  report:
    link: https://github.com/appalca/appalca.github.io
    description: A Nvidia GPU-based AI accelerator chip. Manufacturing and use phase only.
    date: 03/11/2023
    version: '1'
    license: proprietary
    appalca_version: '0.1'
parameters:
- name: architecture
  default: Maxwell
  type: enum
  [...]
- name: cuda_core
  default: 512.0
  type: float
  [...]
- [...]
tree:
  name: nvidia_ai_gpu_chip
  models:
    EFV3_CLIMATE_CHANGE: 12500.0*architecture_Maxwell*(4.6212599075297227e-9*cuda_core
      + 7.37132179656539e-6) + 289.6776199311062*architecture_Maxwell*(0.009702834627645097*cuda_core
      + 1)**2/((1 - 0.6773699850611761*exp(-0.003779619385733156*cuda_core))**2*(70685.775/(0.1889809692866578*cuda_core
      + 19.47688243064738) - 106.7778184271516*sqrt(2)/sqrt(0.009702834627645097*cuda_core
      + 1))) + 12500.0*architecture_Pascal*(4.6891975579761074e-9*cuda_core + 7.808281424221127e-6)
      + 2626.882558417281*architecture_Pascal*(0.0060737847877931227*cuda_core + 1)**2/((1
      - 0.33777635255702983*exp(-0.0065923115776528474*cuda_core))**2*(70685.775/(0.13184623155305694*cuda_core
      + 21.707425626610416) - 101.14318001667067*sqrt(2)/sqrt(0.0060737847877931227*cuda_core
      + 1))) [...]
    EFV3_WATER_USE: [...]
  children:
  - name: ai_use_phase
    models:
      [...]
    amount: '1.0'
    children:
    - [...]
  - name: nvidia_gpu_chip_manufacturing
    models:
      [...]
    amount: '1.0'
    children:
    - [...]