假设我想要对汽车使用生态发明过程,该过程模型包括对汽车生产、维护、道路维护、燃料等的影响。假设我想模拟没有燃料的汽车,因为我想模拟不同燃料的使用。我可以告诉Brightway计算汽车减去燃料后的影响吗?
发布于 2016-03-17 06:03:39
至少有两种方法可以获得您想要的结果。假设您的库存数据集如下所示:
[
{
'code': 'car',
'database': 'example',
'exchanges': [{
'input': ('database', 'fuel'),
'amount': 1
}]
}, {
'code': 'fuel',
'database': 'example',
}
]然后,您可以构建一个新的数据集,并减去燃料:
{
'code': 'car w/out fuel',
'database': 'example',
'exchanges': [{
'input': ('example', 'car'),
'amount': 1
}, {
'input': ('example', 'fuel'),
'amount': -1
}
}]
}然后将此数据集用作您的功能单元。或者,您可以直接在传递给LCA类的功能单元中减去燃料输入:
LCA({('example', 'car'): 1, ('example', 'fuel'): -1)})您还可以将修改后的功能单元保存在calculation setup中。
对于关于操作数据集的简单性的评论,并没有真正简单的方法。很难定义使用库存数据集的通用规则,因为不同行业的输入结构非常不同。要回答特定的评论,您可以这样做:
from brightway2 import *
db = Database("ecoinvent 3.2 cutoff")
car = db.search('transport, passenger car, large size, diesel')[0]
new_car = car.copy()
for exc in new_car.exchanges():
if 'diesel, low-sulfur' in exc.input['name']:
exc.delete()但这需要你手动检查搜索词,以确保你得到你想要的行为。在理想的情况下,我们应该有一种特定于领域的语言,用于以简单的方式操作数据集,但我还不知道这会是什么样子。
https://stackoverflow.com/questions/36047348
复制相似问题