首页 > 解决方案 > Brightway 中的 LCI 计算和对 CF 的访问

问题描述

我在一个 Brightway 项目中导入了 ecoinvent 3.7.1,我按照一些教程来了解 Brightway 的设置程序和用法。

我想使用 Brightway 对某些过程的清单数据进行计算(特别是我想将 CO2、CH4、N2O 的所有排放量相加。

我试过:

for exc in process.biosphere():
    for k,v in exc.items():
        print("\n",k,v)

但我在 bioshpere 数据中发现的不是生态发明清单,而是普遍定期审议。我如何访问 LCI 结果?

编辑:我还尝试在执行 lci() 和 lcia() 后实例化一个 lca 并查询相关的生物圈对象,但我总是找到 UPR 数据

eidb = bw.Database('ecoinvent 3.7.1_cutoff_ecoSpold02') #seleziono il db 

process = eidb.search("diesel, burned in agricultural machinery")
method = ('IPCC 2013', 'climate change', 'GWP 100a')

lca = LCA({process[0]:1},method)
lca.lci()
lca.lcia()
lca.biosphere_dict
lca.biosphere_matrix

在此之后,我需要访问这些元素的 CF(我感兴趣的方法是 IPCC 2013,GWP100a 指标)。是否可以以任何方式访问此方法/物质的 CF?

标签: brightway

解决方案


您在同一个问题中问了几件事,但我会尽力回答。

让我们以您使用的查询为例。如果我跑

searchquery = eidb.search("diesel, burned in agricultural machinery")

我得到两个结果。市场和转型活动,例如我选择转型活动。

您可以循环该活动的生物圈交换并查看它们的一些属性:

for exc in transf_act.biosphere():
   print(exc.input,exc.amount,exc.unit)

如果您想计算 LCI(例如,考虑到整个生命周期,每公斤柴油燃烧会排放多少 N2O:

lca = bw.LCA(demand={transf_act:1}) # you don't need a method unless you want LCIA results
lca.lci()
lca.inventory

清单是一个稀疏矩阵,其中生物圈流量为行,活动为列,其常用符号为 $B\cdot diag(s)$。使用它并不是很直接,但如果你真的需要深入研究这个矩阵,你可以问一个更具体的问题。

获得农业机械燃烧柴油的 LCA 的 CO2eq 分数

lca = bw.LCA(demand={transf_act:1},
   method=('IPCC 2013', 'climate change', 'GWP 100a'))
lca.lci()
lca.lcia()
lca.score

看一下 IPCC 方法的表征因素:

cfs = bw.Method(('IPCC 2013', 'climate change', 'GWP 100a')).load()

推荐阅读