2

自動車に ecoinvent プロセスを使用したいとします。プロセス モデルには、自動車の生産、メンテナンス、道路のメンテナンス、燃料などへの影響が含まれています。異なる燃料の使用をモデル化します。自動車から燃料を差し引いた影響を計算するようブライトウェイに指示できますか?

4

1 に答える 1

2

必要な結果を得るには、少なくとも 2 つの方法があります。インベントリ データセットが次のようになっているとします。

[
    {
        '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)})

この変更された機能単位を計算設定に保存することもできます。

データセットの操作の容易さに関するコメントに応えて、実際には簡単な方法はありません。入力の構造は業界ごとに大きく異なるため、インベントリ データセットを操作するための一般的なルールを定義することは非常に困難です。特定のコメントに答えるには、次のようなことができます。

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()

ただし、これでは、検索用語を手動で調べて、目的の動作が得られることを確認する必要があります。理想的な世界では、データセットを簡単な方法で操作するためのドメイン固有言語が必要ですが、それがどのようになるかはまだわかりません。

于 2016-03-16T22:03:39.193 に答える