PluginLCA

The PluginLCA is used to export the material quantities and their cost groups according to DIN276. Its the most basic Plugin currently. The result are two .csv file that hold information about the used materials quantities in volume and mass and lie the foundation for a later analysis with LCA databases. We are planning to automate this link so a complete automated LCA can be carried out based on the IFC data.

How to install?

Step by step

To install PluginLCA: you need to do the following (in the root directory of the repo, here is the pyproject.toml file)

pip install -e '.[PluginLCA]'

The bim2sim core installation needs to be done before.

Test install

Structure of the plugin

The following figure shows the structure of the LCA plugin. Here you see which tasks are used and how they are combined.

        ---
title: plugin LCA
---
flowchart TB
    
subgraph taskLoadIFC["task LoadIFC"]
 subgraph "" 

  tLoadIFC["bim2sim > tasks > common >  
 LoadIFC"]
  extLoadIFC(" Load all IFC files from PROJECT. " )
 end

stateLoadIFC[("state
 (reads/touches)")]
    
tLoadIFC -- ifc_files --> stateLoadIFC

end
    
subgraph taskCreateElements["task CreateElements"]
 subgraph "" 

  tCreateElements["bim2sim > tasks > common >  
 CreateElements"]
  extCreateElements(" Create bim2sim elements based on information in
IFC. " )
 end

stateCreateElements[("state
 (reads/touches)")]
    
stateCreateElements -- ifc_files --> tCreateElements

tCreateElements -- elements, ifc_files --> stateCreateElements

end
    
subgraph taskBindStoreys["task BindStoreys"]
 subgraph "" 

  tBindStoreys["bim2sim > tasks > common >  
 BindStoreys"]
  extBindStoreys(" None. " )
 end

stateBindStoreys[("state
 (reads/touches)")]
    
stateBindStoreys -- elements --> tBindStoreys

tBindStoreys -- elements --> stateBindStoreys

end
    
subgraph taskVerifyLayersMaterials["task VerifyLayersMaterials"]
 subgraph "" 

  tVerifyLayersMaterials["bim2sim > tasks > bps >  
 VerifyLayersMaterials"]
  extVerifyLayersMaterials(" Verifies if layers and materials and their
properties are meaningful. " )
 end

stateVerifyLayersMaterials[("state
 (reads/touches)")]
    
stateVerifyLayersMaterials -- elements --> tVerifyLayersMaterials

tVerifyLayersMaterials -- invalid --> stateVerifyLayersMaterials

end
    
subgraph taskEnrichMaterial["task EnrichMaterial"]
 subgraph "" 

  tEnrichMaterial["bim2sim > tasks > bps >  
 EnrichMaterial"]
  extEnrichMaterial(" Enriches material properties that were recognized
as invalid LOD. " )
 end

stateEnrichMaterial[("state
 (reads/touches)")]
    
stateEnrichMaterial -- elements, invalid --> tEnrichMaterial

tEnrichMaterial -- elements --> stateEnrichMaterial

end
    
subgraph taskExportLCA["task ExportLCA"]
 subgraph "" 

  tExportLCA["bim2sim > plugins > PluginLCA > 
bim2sim_lca > task >  
 ExportLCA"]
  extExportLCA(" Exports a CSV file with all relevant quantities of
the BIM model. " )
 end

stateExportLCA[("state
 (reads/touches)")]
    
stateExportLCA -- ifc_files, elements --> tExportLCA
direction RL
end
    taskLoadIFC --> taskCreateElements 
taskCreateElements --> taskBindStoreys 
taskBindStoreys --> taskVerifyLayersMaterials 
taskVerifyLayersMaterials --> taskEnrichMaterial 
taskEnrichMaterial --> taskExportLCA 
    

This figure is generated by the script template_mermaid.py (see Visualization of bim2sim plugin structure).

How to create a project?

How to load an IFC file?

How to configure my project?

Simulation settings

Configuration file

Default tasks

Additional templates

How to run the project?

How to run the simulation?

How to analyze the project?

What kind of results exist?

What programs/tools to use for further analysis?