如何在Brightway2中使用horizo​​ntal_tagged_databases函数

时间:2018-10-22 21:17:51

标签: python-3.x brightway

我想知道如何在Brightway2中使用transverse_tagged_database方法。从文档对我来说还不是很清楚。例如,我们可以使用产品系统模型中活动的isic代码来汇总影响吗?

1 个答案:

答案 0 :(得分:1)

简短的答案是肯定的,您可以使用traverse_tagged_databases来完成ISIC代码对前台产品系统模型的影响汇总。

traverse_tagged_databases函数利用以下事实:您可以向Brightway中的活动添加任意key:value对,以使您可以根据自己的喜好在前景模型中对活动进行分类。

例如,假设您的活动如下:

('example_database', 'code_for_bread'):{ 'name': 'Bread', 'code': 'code_for_bread', 'categories':[], 'exchanges':[...], 'location':'GLO' 'unit':'kg', 'database':'example_database', 'isic_code':'1071' 'isic_classifier':'Manufacture of bakery products' },

您可以告诉traverse_tagged_databases在数据库中查找给定的密钥(标签),例如'isic_code''isic_classifier',然后根据这些标签汇总影响。

>

假设您要对奶酪三明治进行建模,则模型中可以包含以下ISIC代码:

三明治:1079(其他非食品生产)

面包:1071(制造烘焙产品)

奶酪:1050(乳制品生产)

黄油:1050(乳制品生产)

您可以使用traverse_tagged_databases查看乳制品(奶酪和黄油)与面包店(面包)的总体影响。

您可以通过与LCA函数类似的方式使用它,方法是将功能单元指定为dict,将方法指定为tuple,并附加一个tag论点。像这样:

fu = {('example_database', 'code_for_sandwich'):1} m = ('IPCC 2013', 'climate change', 'GWP 100a') result, tree = traverse_tagged_databases(fu, m, 'isic_classifier')

该函数返回两个对象(在上一行中指定为resulttree

对于此分析,您的result如下所示:

defaultdict(int, {'Manufacture of other food products n.e.c.': 0, 'Manufacture of bakery products': 0.1875, 'Manufacture of dairy products': 0.55})

这就是说,前景模型中的乳制品的总影响为0.55千克二氧化碳当量,而烘焙食品的总影响为0.1875千克二氧化碳当量。

通过一些后期处理,您可以将这些数据转换为饼图,堆积的条形图等。

您还将获得一个tree,它看起来像这样:

[{'activity': 'Sandwich' (kg, GLO, []), 'amount': 1, 'tag': 'Manufacture of other food products n.e.c.', 'impact': 0, 'biosphere': [], 'technosphere': [{'activity': 'Bread' (kg, GLO, []), 'amount': 0.75, 'tag': 'Manufacture of bakery products', 'impact': 0, 'biosphere': [{'amount': 0.1875, 'impact': 0.1875, 'tag': 'Manufacture of bakery products'}], 'technosphere': []}, {'activity': 'Butter' (kg, GLO, []), 'amount': 0.05, 'tag': 'Manufacture of dairy products', 'impact': 0, 'biosphere': [{'amount': 0.05, 'impact': 0.05, 'tag': 'Manufacture of dairy products'}], 'technosphere': []}, {'activity': 'Cheese' (kg, GLO, []), 'amount': 0.25, 'tag': 'Manufacture of dairy products', 'impact': 0, 'biosphere': [{'amount': 0.5, 'impact': 0.5, 'tag': 'Manufacture of dairy products'}], 'technosphere': []}]}]

乍一看似乎很难解析,但实际上是一组嵌套字典,从根活动(功能单元=三明治)开始,显示techosphere与其他活动的交换,以及{{ 1}}交换排放。

这里的树看起来像这样(每个产品的biosphere位于括号中)

amount

同样,通过一些后期处理,您可以将这些数据转换为诸如sankey图或SimaPro中获得的那种影响树图之类的东西。