メール (目次) >>(次頁) (Up)
CommonMP
を利用した 遠海洋での物質循環、経済循環モデル作成
(遠海洋でのCO2吸収、CO2排出権のシミュレーションモデル)
<概要>
陸地から遠く離れた、貧栄養海域である水深3000m以上の深海域において、「海洋施肥」を行うことで、植物プランクトンを育て、海洋の大気中のCO2吸収メカニズムのひとつである「生物ポンプ」を活性化させるとともに、上位生態系の魚を育てる「海洋牧場」の産業を新たに興すことも可能と思われます。
これらの「構想」の成否をシミュレーション等によって検証する事が重要ですが、そのためには多くの研究者がお互いに検証しあえる「海洋モデル」を作成する必要があります。下図に海洋モデル構想を描いてみます。
図 海洋開発の構想をモデル化する
上記モデルに於いて、海中では人間による海洋施肥を含めた生態系モデルが動作します。遠洋で栽培した植物プランクトンを土台とする生態系モデルは、大気中からCO2を取り込み最終的にデトリタスとして海底に蓄積されるまでの炭素の循環を計算します。
一方で、遠洋で植物プランクトンを栽培するという事業を経済面から継続させる要因を経済モデルとして動作させます。 それらを融合した数値モデル上で、CO2吸収が有効でかつ経済的にも継続可能であるように調整し、検証していきます。
ところで、水理・水文現象等の複合現象に関して国土交通省 国土技術政策総合研究所 から「CommonMP 」(Common Modeling Platform for water-material
circulation analysis)という共通のシミュレーション用基盤ソフトウェア(ソース含む)が公開されており、適切な申請を行えばそれらを自由に使用できます。
「シミュレーション用基盤ソフトウェア」と記述されている通り、CommonMPの仕様に従ってモデルを作成すれば、自作のモデルをその上で動作させたり、他の方々が作成したモデルと接続して(あるいは入れ替えて)モデルを発展させることができます。
そこで、CommonMPに必要と思われる機能等を追加し、「海洋モデル」の型紙を作成してみましたので、本ホームページにて順次公開してみたいと思います。
(興味があればご自由にダウンロードして下さい。) 但し、筆者自身は「海洋」や「経済」についての専門家ではない為、現象を示す論理部分は、プログラムの参考用としてご利用ください。
本ホームページで作成したCommonMP要素モデルの全サンプルプログラム : CommonMPOceanSample.zip
<---★:α版です(2022/08/30現在)
また、以降の頁から モデルの作成方法等を詳しく説明する予定です >>(
次頁)
下図に、作成したモデル(サンプル)を示します。
図 CommonMPで作成した海洋モデルの例
図に示すように、モデル全体は、それを構成する要素(要素モデルと呼びます)と、それらの接続によって構成されます。この様に全体モデルを「要素モデル」に分割することで、モデル全体の構造が直感的に理解できるようになります。
各要素モデルは、自作した要素モデルや他者が作成した要素モデルと入れ替えることが可能です。また、要素モデル間の接続を自由に変更することが可能です。
図の中段にある要素モデル「大気圏」より下に存在する要素モデル群は「海中の生態系」をシミュレートしており、「大気圏」より上に存在する要素モデル群は、海洋への施肥行為と、海洋からの収穫(CO2の吸収、漁獲等)に関連した「経済」をシミュレートしております。 全体モデルが複雑な場合には、下に示すように部分に分割して表すことが可能です。
図 海中生態系モデルと海上経済モデルに分離して示した図
図 海中生態系モデル部分
図 経済モデル部分
CommonMPの正式ホームページへのリンクは下記にあります。 CommonMP本体のダウンロード、詳しいCommonMPの説明や解説ドキュメント、初心者向けの説明等があります。
CommonMPのホームページへ
( ↑ ここから、CommonMP本体のダウンロードが行えます。)
CommonMPを利用したモデルの開発の例は 下記でも紹介しています。
初心者向け 水理要素モデルの開発例 , (トップページ)
初心者向け 色々な要素モデルの開発サンプル
CommonMPの概要
シミュレーションの多くは、「シミュレーションに使用する情報の入力」−「計算」−「計算結果の出力」を繰り返す という手順を踏む事が多いと思います。
CommonMPはこの一連の動作を 「要素モデル」として組み込み、 それらを CommonMPフレームワーク内で結合させて、一つの事象だけではなく、それらを連動させ複合的シミュレーションを可能とするものです。
CommonMPはオブジェクト指向で制作されており、その上で動作する「要素モデル」は、CommonMPフレームワークが提供する親クラスの派生として制作する必要があります。
CommonMP 概念図
★CommonMPの特徴
・ 独自のモデルは「要素モデル」という形で開発し、提供します。
・ 各要素モデルの間を接続することで、要素モデル間で情報交換が可能です。
このため、要素モデル開発者の専門分野だけでなく、異なる分野の知見も取り入れた、複合的モデルの構築が容易に行えます。
・ 全体のモデル構造を変更せずに、一部の要素モデルのみを他の要素モデルの交換することが可能です。
このため、要素モデルのバージョンアップ対応や、異なるアルゴリズムで作成された要素モデルの比較が簡単に行えます。
・ CommonMP本体はフリーで使用できます。 また、要素モデルの独自開発が行えます(開発環境は MicroSoft
Visual
C# を想定)。
・ オブジェクト指向で開発されており、画面の動作、ツールとの接続等は、フレームワークが提供しているため、要素モデルの開発者は、計算論理と入力情報取り込み部分と、計算結果の出力方法の論理を組み込むだけで、他の要素モデル間の接続等が行えるようになります。
・簡単な入出力用の「ファイル入出力要素モデル」、「グラフ表示要素モデル」が標準で用意されており、自作した「要素モデル」はそれらに接続することで、情報入力や結果出力処理を作成する手間が省けます。
・ 要素モデル間の接続設定は、CommonMPのGUI上から行うことが可能です。
・ 独自の評価画面等が必要となる場合には、独自画面を自作し、アドオンすることが可能です。
CommonMPはフリーで使用できるモデル動作プラットフォームであり、そこで使用するモデル(要素モデルと言う)を自作する開発環境も整っています。 また、モデルの解析結果をグラフ化したりするツールを自作できます。 これらの開発には、 Microsoft社製の「Microsoft
Visutal Studio」を使用して行えます。
>>(次頁)
初版:2022/05/01 |