プロキシとして機能するデータベース(この場合はecoinvent)から既存のデータセットを「再コンテキスト化」するアクティビティを作成したいと考えています。たとえば、ケベック州のヒートポンプは、スイスのヒートポンプに基づいて作成しますが、電気の原点は変更します。Brightway2で既存のecoinventアクティビティに基づいて新しいアクティビティを作成する
私の問題は、thisの質問で@MPaによって提起された問題と非常に似ていますが、詳細はわかりません。これは私がやったことです:
1)私は私のecoinvent 3.3データベースからプロキシとして使用したいプロセスを見つける:
hp_ch=Database('ei_33consequential').search("heat-pump production air-water",
filter={'location':'ch'},
)[0]
2)
hp_qc=hp_ch.copy()
3活性のコピーを作成します)場所を変更する
hp_qc['location']='CA-QC'
4)交換金額を格納する元のフローを消去する
for exc in hp_qc.exchanges():
if 'electricity, low voltage' in exc['name']:
amnt=(exc.amount)
exc.delete()
5)は、ここで新しいフロー(ケベックからの電気のこの場合は、同じ量)
を追加し、私は失われています場所です。私はその流れを生成するプロセス( '44389eae7d62fa9d4ea9ea2b9fc2f609')を見つける方法を知っていますが、私はそれを私の "hp_qc"プロセスへの交換としてどのように追加するか分かりません。 ユニークな識別子コード(UUID)も変更する必要があります。そうでなければ、同じUUIDを持つデータベースで2つのアクティビティを持つことになります。これは問題の可能性があります。血統行列の「地理的代表性」スコアも変更する必要がありますが、この時点でBrightway 2がこれらのスコアを実際に使用しているかどうかはわかりません。
[EDIT]、@MPaの提案次のIは、以下でした
#electricity low voltage quebec
elw_qc=Database('ei_33consequential').get('44389eae7d62fa9d4ea9ea2b9fc2f609')
elect_to_hp = [exc for exc in hp_qc.technosphere() if 'electricity, low voltage' in exc['name']][0]
elect_to_hp.input = qc_elect
elec_to_hp.save()
hp_qc.save() #necessary?
およびIは、共通の影響評価方法で試験:Iが、
fu1={hp_qc:1}
lca1=LCA(fu1,('IMPACT 2002+ (Endpoint)', 'resources', 'total'))
lca1.lci()
lca1.lcia()
lca1.score
fu2={hp_ch:1}
lca2=LCA(fu2,('IMPACT 2002+ (Endpoint)', 'resources', 'total'))
lca2.lci()
lca2.lcia()
lca2.score
両方のスコアが異なっていますスイスのヒートポンプのマイナスのスコアを得る。これはちょっと変わったけど、可能であれば、の再調和とはまったく関係ないと思う。できます!
私は見る!そのため、それを生成するプロセスと呼ばれる "技術的なフロー"を特定することができます。それはただ一つの "参照製品"を持っていると仮定します。これは、LCA専門用語では、単一の出力単位プロセスで機能します。私は今、[Chris Mutel](https://chris.mutel.org/brightway-dev-diary-1.html)がこれをより柔軟なやり方でどのように行うことができるのかを理解しています。私はドキュメンテーションで*系図なしのスケールを参照することはできませんでした。あなたが開発しているbw_utilsパッケージの一部ですか? – Nabla
あなたの 'Exchange'を辞書、つまり' exchange.as_dict() 'としてチェックするならば、 '血統なしの縮尺'が表示されるはずです。 – MPa
私は上記で共有したコードに問題があると思います。使用する前にちょっと待ってください。どういうわけか、元の活動の交換*も変更されます...私はこれを理解しようとしています。 – MPa