| シットコム | |
|---|---|
| 原作者 | ルイス・モレシ(モナシュ大学) |
| 初回リリース | 1990年代初頭 |
| 安定版リリース | 2.2 / 2007年3月27日 (2007年3月27日) |
| 書かれた | C |
| ライセンス | GNU一般公衆利用許諾契約書 |
| Webサイト | geodynamics.org/cig/software/citcomcu/ |
CitCom(California Institute of Technology Convection in the Mantleの略)は、地球のマントルに関連する熱対流問題を解くために設計された有限要素コードで、 GNU General Public Licenseに基づいて公開されています。C言語で記述されたこのコードの最新バージョンであるCitComSは、共有メモリプラットフォームや分散メモリプラットフォームを含む、さまざまな並列処理コンピュータで動作します。
歴史
CitComは、1990年代初頭にモナシュ大学のルイス・モレシ氏によって開発されました。3次元問題用のコードは当初から組み込まれていましたが、初期のバージョンでは2次元直交座標領域における時間依存対流問題のみを解くことができました。モレシ氏のオリジナルコードは、非常にモジュール化されており、容易に拡張できることが分かりました。その結果、ルイス氏が作成した基本的な有限要素法のインフラストラクチャは現在も活用されており、現在のリリースに含まれるコードの多くを支えています。
1990 年代半ば、Moresi は 3 次元直交座標領域内の方程式を解くコードのバージョンを作成しました。その後、Shijie Zhong (コロラド大学ボルダー校) が、限定公開の Intel スーパーコンピュータ上でメッセージ パッシング ルーチンを使用して CitCom の並列化に成功しました。その後、Zhong は球面バージョンのコードを作成し、CitComS と名付けました。Lijie Han (惑星科学研究所) は CitComS の地域バージョンと、任意の数のプロセッサに対応するメッセージ パッシングの代替バージョンを作成しました。Clint Conrad (ジョンズ ホプキンス大学) がコードの最初の Beowulf 実装を作成し、その後 Conrad と Eh Tan ( Computational Infrastructure for Geodynamics ) が完全な球面バージョンのメッセージ パッシングを再コード化し、任意の数のプロセッサで実行される問題も解けるようにしました。CitCom のさまざまなバージョンが、カリフォルニア工科大学および世界中の コンピュータ上に多数存在しています。
その結果、2002年までにコードのバージョンが非常に多くなり、合理化が必要となりました。ソフトウェアはバージョン管理システムに移行され、Eh Tan氏とEun-seo Choi氏(Caltech)は、それぞれCitcomSFullとCitcomSRegionalという、完全な球面モデルまたは領域モデルを生成するCitComSのバージョンを作成しました。CitComSは、以前のGeoFrameworkプロジェクトを通じてバージョン1.0と1.1としてコミュニティにリリースされました。
2004年までに、CitComSの機能性を高めるため、開発者たちはコードをオブジェクト指向環境へと再設計し始めました。特にPythonベースのモデリングフレームワークであるPyreと連携できるようにしたのです。現在CitComS.pyと名付けられたこのソフトウェアのリリースは、本質的にこれらの再設計作業の成果です。CitComS.pyの主任開発者はEh Tan氏で、Eun-seo Choi氏とMichael Aivazis氏(Caltech)の多大な協力を得ました。
CitComSは、カリフォルニア工科大学の先端計算研究センター(CACR)[1]と地震学研究所[2]、そしてオーストラリアの先端計算のためのビクトリア州パートナーシップ[3]との共同研究である、以前のGeoFrameworkプロジェクトに含まれる大規模なソフトウェアコレクションの一部です。GeoFrameworkプロジェクトは、地球科学の問題におけるマルチスケール変形をモデル化するためのツールスイートを開発しました。この取り組みは、プレートテクトニクスの長期的な進化と、地震中および地震間の断層の発達といった短期的なプロセスとの相互作用を理解する必要性から生まれました。2005年から2006年にかけて、GeoFrameworkによって開発された残りのソフトウェアの多くはGPLライセンスの下でリリースされ、Computational Infrastructure for Geodynamics(CIG)[4]から利用可能になりました。
CitComSの2回目のメジャーリリース(2.0)では、ソフトウェアフレームワークPyre、自由表面モデリング手法、および上面と下面の応力境界条件が組み込まれました。2005年夏、2.0.1リリースの一環として、CIGは従来のビルド手順をGNUビルドシステムに置き換えました。その後のリリースであるバージョン2.0.2では、64ビットシステムでのコンパイルと実行が可能になりました。
CitComSの3回目のメジャーリリース(2.1)では、新機能が追加されました。最も重要なのは、HDF5(階層型データフォーマットの並列版)の採用です。HDF5形式により、本番環境で生成される膨大なデータ出力を処理できます。このバージョンでは、入力として.cfgファイルに対応し、作成と読み込みが容易になりました。
その他の改良点としては、以前のリリースでは省略されていたジオイド計算の組み込みや、 Generic Mapping Tools (GMT) [6]および OpenDX [7]に加えて、 MayaVi2 [5]で結果を視覚化できるようにする新しいスクリプトが含まれています。このバージョンを一部の NSF TeraGrid サイトにプリインストールされたパッケージとして使用する方法についての説明が提供されました。
CitComSの最新リリース(2.2、2007年3月27日)には、流れの中の粒子を追跡する機能が組み込まれています。このトレーサーコードは、Allen McNamaraとShijie Zhongによって2004年に開発され、2007年初頭にCIGに寄贈されました。このトレーサーコードは、マントル対流において幅広い応用が可能です。受動粒子の軌跡を追跡したり、沈み込んだスラブの上部境界を描画して低粘性ウェッジを定義したり、化学組成場の変化を追跡したりすることができます。
参考文献
- ^ “Center for Advanced Computing Research (CACR)”. 2008年12月23日時点のオリジナルよりアーカイブ。2020年7月22日閲覧。
- ^ 地震学研究所
- ^ ビクトリア州先端コンピューティングパートナーシップ
- ^ 地球力学計算インフラストラクチャ (CIG)
- ^ マヤVi2
- ^ “Generic Mapping Tools (GMT)”. 2013年8月13日時点のオリジナルよりアーカイブ。2022年3月5日閲覧。
- ^ “OpenDX”. 2006年12月5日時点のオリジナルよりアーカイブ。2019年7月3日閲覧。
外部リンク
- CitComS ユーザーマニュアル