Brightway2-获得LCA立即交流的分数

时间:2018-07-05 17:41:36

标签: brightway

关于Brightway2对我的LCA结果进行后处理分析时遇到一些问题。运行LCA计算后,例如,如果我键入top_activities(),我将获得一堆活动及其关联分数的列表,但是,没有一个活动/分数是与我的功能单元直接相关的(它们看起来像是我的交流中的一些交流...)。

在构建职能部门时,如何获得我定义的交易所(技术圈和生物圈)的LCA分数?

谢谢!

2 个答案:

答案 0 :(得分:3)

我发现在Brightway中为前景模型获取汇总结果的最佳方法是使用bw2analyzer.traverse_tagged_databases()函数而不是top_activities()。文档中的详细信息为here

它旨在计算前景模型元素的上游影响,然后基于在活动中找到的tag汇总影响。例如如果将'tag':'use phase''tag':'processing'添加到活动中,则可以按生命周期阶段汇总影响结果。

但是您可以更改其查找的默认标签,因此您可以让它代替tag来查找name-这将为您提供各个活动的汇总上游影响您的前景模型。它返回一个字典,其中标签的名称为键,而影响为值。它还会返回您的前景系统的图形,可用于创建一些很酷的树形/ bullseye图表-有关格式,请参见docs

这是您需要的功能:

results, graph = recurse_tagged_databases(functional_unit, method, label='name')

以下是使用数据recurse_tagged_databases为您提供的各种可视化示例:

结果字典中的瀑布图示例 Waterfall chart example

带标记图的舷窗图示例 Waterfall chart example

答案 1 :(得分:1)

手动遍历供应链非常容易,而且每个人都想以一种略有不同的方式来做,因此还没有内置到Brightway中。这是一个简单的示例:

from brightway2 import *

func_unit = Database("ecoinvent 3.4 cutoff").random()

lca = LCA({func_unit: 1}, methods.random())
lca.lci()
lca.lcia()

print(func_unit)

for exc in func_unit.technosphere():
    lca.redo_lcia({exc.input: exc['amount']})
    print(exc.input, exc['amount'], lca.score)