appabuild.config.lca#

Module containing all the classes and methods to load and validate LCA configurations.

Classes#

FunctionalUnit

Information about the functional unit corresponding to the activity that produces the reference flow.

LCAConfig

An LCA configuration, contains information about the LCA and its corresponding impact model.

Model

Contain information about an impact model, like its metadata, the name of the output file

Scope

Scope of an LCA of the corresponding impact model, define the main characteristics of it.

Module Contents#

class appabuild.config.lca.FunctionalUnit#

Bases: pydantic.BaseModel

Information about the functional unit corresponding to the activity that produces the reference flow. The functional unit should be stored in the foreground database.

Attributes:

name: name of the functional unit to use, make sure that the name is unique. database: name of the database (defined in the Appa LCA configuration) the functional unit will be loaded from.

database: str#
name: str#
class appabuild.config.lca.LCAConfig#

Bases: pydantic.BaseModel

An LCA configuration, contains information about the LCA and its corresponding impact model. One LCA configuration is needed per LCA performed.

Attributes:

scope: the scope of the LCA. model: information about the corresponding impact model.

static from_yaml(lca_conf_path: str) LCAConfig#

Load an LCA config from its yaml file. If the config is invalid, raise a ValidationError.

model: Model#
scope: Scope#
class appabuild.config.lca.Model#

Bases: pydantic.BaseModel

Contain information about an impact model, like its metadata, the name of the output file or the free parameters needed by the functional unit used in the impact model.

Attributes:

name: name of the yaml file corresponding to the impact model (do not include file extension). path: output folder for saving impact model. compile: if True, precompute the symbolic expressions needed by Appa Run and store them in the impact model. metadata: information about the impact model, meant to help the user of it to better understand the LCA leading to the impact model. parameters: information about all free parameters needed by the functional unit of the impact model.

dump_parameters() List[dict]#
classmethod eval_exprs(parameters: List[apparun.parameters.ImpactModelParam]) List[apparun.parameters.ImpactModelParam]#
classmethod parse_parameters(parameters: List[dict]) List[apparun.parameters.ImpactModelParam]#
compile: bool#
metadata: apparun.impact_model.ModelMetadata | None = None#
name: str#
parameters: List[apparun.parameters.ImpactModelParam] | None = []#
path: str | None = '.'#
class appabuild.config.lca.Scope#

Bases: pydantic.BaseModel

Scope of an LCA of the corresponding impact model, define the main characteristics of it.

Attributes:

fu: functional unit used in this scope. methods: LCIA methods to cover. Appa LCA uses a mapping between short keys and full LCIA method names as available in Brightway.

fu: FunctionalUnit#
methods: List[str]#