openLCA に USLCI を入れました。SimaPro の「Export as Matrix」のように、データベースの全プロセスを行と列に並べた技術係数の行列(A 行列)と、機能単位あたりの環境フローの行列(B 行列)を取り出したいです。
製品システムを作って書き出すと、行列に入るのはデータベースの一部(300 ほど)のプロセスだけでした。.npz で書き出す機能も試しましたが、期待したものではありません。データベース全体を書き出す方法はあるのでしょうか。
1 件の回答
openLCA には、データベース全体をひとまとめにした行列はありません。行列は製品システムごとに書き出します。 openLCA のデータベースには、SimaPro や Brightway と違って、あらかじめモデル化されたライフサイクルのシステムが入っていません。そのため、データベース側に書き出す元の行列がありません。
openLCA では、製品システムを1つ作ると、それが1つのライフサイクルモデルになります。その製品システムごとに A 行列と B 行列を書き出せます。詳しい手順は openLCA のマニュアルにあります。
製品システムに全プロセスが入らないのは、USLCI の性質によるものです。 USLCI には、互いに繋がっていないプロセスの「島」がたくさんあります。そのため、作った製品システムにデータベースの全プロセスが入らないのが普通です。ecoinvent や EXIOBASE では、ほぼすべてのプロセスがどの製品システムにも入り、使われる度合いの違いが製品システムごとの結果の違いになります。
表としてなら、データベースの中身を丸ごと取り出せます。 たとえば openLCA の SQL ウィンドウで次を実行すると、データベースの全プロセスが返ります。
select * from tbl_processes- Exporting matrix of all processes in a databaseask.openLCA2026-02
