このリポジトリには、ecoinvent ライフ サイクル インベントリ データベースに必要な、世界 (地方、国、州) の一貫したトポロジを構築するために必要なスクリプトとデータが含まれています。カスタムの場所を生成するレシピを定義する機能も含まれています。
リポジトリは、SQL、bash スクリプト、Python が混在しています。実行内容とその理由の手順とジャーナルについては、ファイル「topology-journal.rst」を参照してください。
このリポジトリは、 constructive_geometries
Python ライブラリではありません。あの人はここに住んでいます。
Python コードは Python 3.4 以上と互換性があります。次のライブラリが必要です。
最新バージョンの Postgresql がインストールされており、 postgis
利用可能であることを確認してください (自動的にアクティブ化されます)。 ecoinvent
ユーザーを作成します。
createuser --superuser ecoinvent -U postgres
次に、基本データをインポートします。
./create_db.sh
スクリプト./build_recipes.sh
を実行します。これはcreate_db.sh
の実行時に自動的に呼び出されることに注意してください。
#。短い名前と長い名前が必要です。指定されていない場合は作成します。 #。新しい UUID を作成します: python python/new_uuid.py
#。ファイルdata/config/uuid-mapping.json
を編集し、新しい場所を適切なセクションに追加します。既存のスタイルに従い、生成した名前、短縮名、UUID を指定します。新しいセクションの末尾にカンマが含まれていることを確認してください。 #。スクリプトpython python/reindent_uuids.py
を実行して、構文が正しいことを確認します。エラーがあれば修正します。 #。ファイルdata/config/recipes.json
を編集し、 name
( shortname
ではなく) と含まれる領域のリストを使用して新しいレシピを追加します。国の一部のみを含める必要がある場合 (ロシア、中国、ブラジル、インドなど) には必ず州を含めてください。必要に応じて国全体を含めることもできます。 #。スクリプトpython python/reindent_recipes.py
を実行して、構文が正しいことを確認します。エラーがあれば修正します。 #。スクリプトbuild_recipes.sh
を実行します。 #。必要に応じて、 docs/index.rst
内のドキュメントを更新します。必ず変更ログに変更を記録してください。ドキュメントを作成し ( make html
)、Web サーバーと同期します ( sync.sh
)。 #。選択したジオメトリをエクスポートします。このコマンドを変更して、必要な名前を取得します。
psql -U ecoinvent -d eigeo -c "COPY (SELECT uuid, name, shortname, ST_AsKML(geom) as geom, isotwolettercode, longitude, isothreelettercode, latitude FROM final WHERE name = 'Europe without Switzerland and Austria') TO STDOUT WITH CSV;" > output/all.csv
#。エクスポートを XML に変換します。
python python/write_xml.py
#。 Geoinvent データベース マネージャーにGeographies.xml
ファイルを電子メールで送信します。