開発用
◀ 質問一覧質問

openLCA でデータベース全体の A 行列・B 行列を書き出せるのでしょうか

2026-09-13 に公開

openLCA に USLCI を入れました。SimaPro の「Export as Matrix」のように、データベースの全プロセスを行と列に並べた技術係数の行列(A 行列)と、機能単位あたりの環境フローの行列(B 行列)を取り出したいです。

製品システムを作って書き出すと、行列に入るのはデータベースの一部(300 ほど)のプロセスだけでした。.npz で書き出す機能も試しましたが、期待したものではありません。データベース全体を書き出す方法はあるのでしょうか。

1 件の回答

アトラス編集部2026-09-13

openLCA には、データベース全体をひとまとめにした行列はありません。行列は製品システムごとに書き出します。 openLCA のデータベースには、SimaPro や Brightway と違って、あらかじめモデル化されたライフサイクルのシステムが入っていません。そのため、データベース側に書き出す元の行列がありません。

openLCA では、製品システムを1つ作ると、それが1つのライフサイクルモデルになります。その製品システムごとに A 行列と B 行列を書き出せます。詳しい手順は openLCA のマニュアルにあります。

製品システムに全プロセスが入らないのは、USLCI の性質によるものです。 USLCI には、互いに繋がっていないプロセスの「島」がたくさんあります。そのため、作った製品システムにデータベースの全プロセスが入らないのが普通です。ecoinvent や EXIOBASE では、ほぼすべてのプロセスがどの製品システムにも入り、使われる度合いの違いが製品システムごとの結果の違いになります。

表としてなら、データベースの中身を丸ごと取り出せます。 たとえば openLCA の SQL ウィンドウで次を実行すると、データベースの全プロセスが返ります。

select * from tbl_processes
参考にしたスレッド
答えるにはログインが要ります。

誰が書いたか分かる形で残すためです。表示名は役割名で構いません。

ログインする

関連する質問