博 士 ( 理 学 ) 森 川 靖 大
学 位 論 文 題 名
惑星大気大循環モデルの設計と開発 学位論文内容の要旨
研究の背景と目的
大気大循 環モデ ル(GCNDと は惑星 大気の全 球規模の 大気循 環を表現 する数値モデルである.現在太 陽系外にも惑星が発見され,惑星気候の多様性に関する知見の有用性が高まりつっある中で,惑星大気 の多様性 をGCMに よって 探ること は有意 義と言え る.こ の実験に 際しては惑星半径や大気成分などの 大気構造に影響するパラメタを様々な仮想的条件に設定して実施することとなる.このような数値実験 を通じて,惑星大気の循環構造をバラメ夕空間に位置づけて解の分岐構造を把握し,多様性をもたらす 機構に関 する知見 が得ら れること が期待 される. 一方でGCMは本 来観測データとの比較によりその妥 当性を担 保してき たが, 仮想的条 件にお いてはそ れが困 難である .この場合のGCMの計算結果の妥当 性の考察を行う方法のーつとして,複雑度の異なる他の数値モデル,すなわち雲の生成消滅を陽に解く 2,3次元雲 解像モ デルや放 射の効果 を精密 に解く鉛 直1次元の放 射対流モデル等との比較考察が考え られる.
本研究では,複雑度の異なるモデル同士の計算結果の比較を円滑に行うため,これらモデル群を階層 的に整備した,惑星大気階層モデル群という概念を提唱した.この階層モデル群は,デー夕入出カやプロ グラム構造などの,従来の気象分野のモデルではモデルごとに異なってしまうプログラム技法的な方式 について共通化することを目指すものである.これにより研究作業のうち,物理的理解や離散化手法と いったものを除いたプログラム技法的な部分については,モデル群につbゝてどれかーっを習熟するだけ で他モデルの掌握をたやすく行うことが可能となる.
本研究で はプロ グラム技法に関する共通化を目指し,従来開発や策定が行われてきた1)デー夕入出 カライブラリ2)プログラム解説文書自動生成システム,3)可読的ソースコード書法,4)可変的プロ.グ ラ ム 構 造 , に つ い てGCMへ の適 用 性 の検 証 と ,適 用 性 が不 十 分 な点 に 関 し てGCMへ適 用 可 能な よ う改 善 を 行っ た . その 上 で それ ら の 手法 のGCMへ の 適用と 有効性に 関する 検証を行 った,GCMとい う階層モデル群として想定するモデルの中でも物理的に,またプログラム構造的にハイエンドなモデル を対象とし,その適用性を検証することによって惑星大気階層モデル群の実現可能性を探ることとなる.
デー夕入出カライブラりの設計と開発
地球惑星流体現象を表現する数値モデルの入出カデー夕形式および入出カインターフェースを統一す べ く 開発 さ れ たGto014 Fortran 90ツール/ ライブ ラリ(Toyoda et al.,2002)のGCMへの 適用性 を 検討 した.そ の結果 現行のイ ンター フェース ではGCMのよう に多数の ファイルを出カするモデルに関 しては,外部ファイルによる出力設定の変更のための処理により出カイン夕一フェースの共通化が妨げ られることが示された.本研究では外部ファイルによる出力設定の変更処理をライブラりに内包すぺく Toyoda et al. (2002)を機能拡張したGto015 Fortran90/95ライプラりを設計および開発した.これに より出カファイルの多寡にかかわらず,複雑度の異なるモデルの出カインターフェースの共通化が可能 となった.
プログラム解説文書自動生成システムの構築
プログラ ム解説 文書生成の定型化を目的として開発された解説文書自動生成ツールf90doc (Er血,
1997),母0tohtml田iedleretal.,1998),および気候モデルフレームワークF1exibleM0deHngSystem くBalajietal.,2002)におけ る珊乢 を用いた 解説文書自動生成システムについて,本研究のGCMの プログラム解説文書生成システムヘの導入を検討した.その結果,Fortran90の言語要素の解析機能も
−1188−
しくは生成される文書の情報量が不十分,例えばモジュール中の変数が公開されるものか否かといった 情 報を解 析できな い,ま た生成さ れるHTML文 書にハイ パーリ ンクや見 出しや 箇条書きといった構造 を もった 文書が作 成でき ないこと が示された.本研究ではオプジェクト指向スクリプト言語Rubyのド キ ュメン ト生成シ ステム .RDocのFortran 90/95解析 機能を強化し,規格上の言語要素全ての解釈を 行 う こ と を可 能 と した . こ の解 析 機 能とRDocが 本 来有 し て い るH rML文 書生成機 能によ り,GCM のプログラム解説文書生成の定型化と自動化が可能となった.
数式的表現カの高いプログラム書法の策定
階層的 スペクト ルモデル集SPMODEL (Takehiro et al.,2006)において提案される,配列関数を積極 的に活 用した数 式的表 現カの高 いソー スコード 書法のGCMへの 適用性を検証した結果,複数の物理素 過程が組み合わさり多数の変数から成る計算式の表現,および差分法により連続系と離散系の表記が大 きく異なる計算式の表現については,数式的表現カが低下することが示された.本研究では関数とサプ ルーチンの使い方を区分するとともに,ソースコード上の変数名と数式上の変数名を対応付けた文書を 用意する方法を提案し,これにより物理素過程ごとにソースコードを適切に区分し,それぞれの物理素 過程内において高い数式的表現カを維持することが可能となった.
オプジェクト指向プログラミングによる可変性向上の試み
Numaguti (1992)に よる ,Fortran 77で記 述 され た可変 的なプロ グラム構 造を有 したGCMである AGCM5における変数名競合問題を,Fortran 90でのオプジェクト指向プログラミングくToyoda et al., 2002; Akin,2003)によ って解 決すべく ,GCMの実装と可変性に関する検証を行った.パラメ夕等の全 ての変数の局所化には成功し変数名競合問題を解決したものの,コンストラクタとしてのサプルーチン 呼出の引数が非常に大きくぬるとともに,オプジェクト型のモジュールの作成や維持管理に高度な知識 の必要性が生じ,結果として数値モデルとして扱いづらいものとなることが示された.そこで変数名競 合問題に関してはモジュールごとに変数を独立管理し,これを利用する際に変数名競合が生じる場合に は仮 称指定を 用いる ことでこ れを回 避するこ ととした .本研 究ではNumaguti (1992)のプログラム構 造を 基本とし つつ, これを全 てFortran 90に置き換え,全ての物理素過程をモジュール化するプログ ラム構造を提案した.これによルプログラムとしての過度な高度化と複雑化を避けつつ,プログラム的 には他の物理素過程と独立に変更や着脱が可能となった.
大気大循環モデルの実装
上 記 の 手 法 を 導 入 し たGCMで あ る ` `dcpam5 (Dennou Club Planetary AtmosphericModel version5)¨を開発し,いくつかの基礎実験を実施した.これにより,まずGt0015F0rtran90/95ライブ ラりに よってGCMの入 出カに必 要な外 部ファイ ルの処 理の隠蔽 がなされ ,多数ファイルの出カに耐え うる 機能を有 するこ とが確認 された .次にRDocFortran90′95解 析機能 強化版に よって ,Fortranソ ースコードとしての読みやすさを損なうことなく解説文書の完全な自動生成が行えることが確認された.
最後に ,3次 元GCMと2次 元軸対称 モデル の比較実 験を通 じ,両者 におい てソースコードの数式的表現 カ を高 く 維 持で き , また 両 者 を切 り 替 える た め の 設定 変更 はUSE文1行 分の書換 のみで済 ませら れ ることが確認された.
惑星大気階層モデル群の実現可能性について
本研究では,デー夕入出カライブラリ,プログラム解説文書生成方式,ソースコード書法,プログラム 構 造 の4点 の プロ グ ラ ム技 法 に 着目 し ,こ れらを1〜3次元の 大気モデ ルにおし ゝて共 通化した 惑星 大気 階層モデ ル群の 姿を模索 すべく ,プログ ラム技法 に関す る考察, およびGCMの実装と基礎実験を 通じ た検証を 行った .結果と してこの4点に関して共通化可能であること,すなわち惑星大気階層モデ ル群 が実現可 能であ ることが 示唆された.これにより仮想的条件でのGCMの妥当性の考察に際しての,
比較 に用いる 複雑度 の異なる モデル の分だけ 必要とさ れたモ デル把握 の労カ をほぽモデル1つ分に圧 縮す ることが可能となった,これを以って,惑星大気パラメタスタディのためのツールセットとしての モデル群のプ口グラム的な基本構造が確立されたと言えよう,
今後 の課題および展開として,まずソースコード書法に関して,数式的表現カを向上するために用い た関 数の実行性能への影響の調査と検討が挙げられる.次に,プログラム構造に関しては物理素過程の 独立 性のさらなる向上を目的とした,放射や積雲過程などの実装の異なる複数のスキームが存在するも のに 対してそのスキームの交換を容易にするための物理素過程間のインターフェースの策定が挙げられ
―1189―
る.最後に,.本研究のGCMは従来の地球大気のモデルをプログラム技法的に全面改訂したものであり,
使用されているスキームのほと んどは地球大気用のものであるため,今後惑星大気階層モデル群として 実際に機能していくためには, 本研究において示されたプログラム技法に則った惑星大気用のスキーム の導入と蓄積が必要となるだろ う.
‑ 1190―
学位論文審査の要旨 主査 准教授 石渡正樹 副査 教 授 渡部 重十 副査 教 授 倉本 圭
副査 教授 林 祥介(神戸大学大学院 理学研究科)
学 位 論 文 題 名
惑星大気大循環モデルの設計と開発
近 年 、 大 気大 循 環モ デル を用 いた 惑 星大 気に 関す る理 論 研究 が盛 んに 行 われ てい る. しか し 、 広 範 な バ ラ メー 夕 実験 を実 施す る、 あ るい は仮 想的 な惑 星 大気 設定 にお け る数 値計 算結 果の 妥 当 性 に 関 す る 検討 す るの に適 した 大気 モ デル が開 発さ れて い ると は言 い難 い ,こ れに 対し て、 本 論 文 は モ デ ル 設定 の 変更 がし やす く、 ス タイ ルの そろ った 異 なる 複雑 度を も つモ デル を階 層的 に 整 備 す る こ と を目 指 して 、デ ー夕 入出 カ イン ター フェ ース の 設計 およ び解 説 文書 整備 の方 法の 策 定 を行い、これを大 気大循環モデルヘの実装を行 ったものである.
デ ー 夕 入 出カ の イン ター フェ ース は 、こ れま で大 気大 循 環モ デル のよ う に比 較的 複雑 で大 規 模 な モ デ ル と 簡単 な モデ ルと では 共通 化 され てこ なか った 。 なぜ なら 、大 気 大循 環モ デル にお い て 必 要 と さ れ る並 列 化や 出力 設定 の動 的 変更 (プ ログ ラム を 再コ ンバ イル せ ずに 変数 ごと の出 カ の オン / オフ や時 間間 隔等 の 変更 を行 うこ と )の 処理 に関 して は、従来はモデルごとにソー スコード を 有 し 、 そ の上 に 各自 でイ ンタ ーフ ェ ース を用 意す ると い う方 法が 一般 的 だっ たた めで ある 。 本 研 究 で は 、 並列 化 およ び出 力設 定の 動 的変 更は 大気 に関 す る様 々な モデ ル に共 通の 処理 とし て 、 そ の た め の 汎用 ラ イブ ラり を整 備し て イン ター フェ ース を 共通 化す る方 法 を提 案し た。 そし て そ れを実現するため のソフトウェアとして、gto014 Fortran90′roolsiLibrary(′royoda et al.,2002) を発展、改良したgto015ライプラりの開発を行 った。
プ 口 グ ラ ム の 使 用 方 法 や 支 配 方 程 式 中 の 変 数 と ソ ー ス コ ー ド中 の変 数 の対 応に 関す る解 説 文 書 は プ 口 グ ラム に 追随 して 同時 に変 更 され ねば なら ない が 、こ れを 逐次 行 うこ とは 現実 的に 困 難 で あ る 。Rubyな ど の プ 口 グ ラ ミ ン グ 言 語 で は 、RDocと い っ た ラ イ ブ ラ1」 に よ り 、 ソ ー ス コ ー ド 内 の ク ラス や メソ ッド など の文 法 を解 釈す ると とも に 、付 随す るコ メ ント 文と を併 合し 、 そ れ ら か らWebプ ラ ウ ザ で 参 照 可 能 なH′I丶ML文 書 を 作 成 す る 。 こ の 方 法 は ソ ー ス コ ー ドと 解 説 文 書2度 書 き す る 必 要 が な く 、 少 な い 負 担 感 で 解 説 文 書 の 整 備 が 可 能 で あ る 。 し か し なが ら 従 来 の 手 法 に は 、Fortranと い う 言 語 に 則 し た 形 態 で あ り 、 さ ら に 数 式 を 表 現 可 能 なHTML文 書 を 作 成 で き る も の は 見 当 た ら な い 。 本 研 究 で は 、Fortranソ ー ス コ ー ド 内 の サ ブ ル ー チン や そ の 引 数 な ど を 自 動 解 釈 す る と と も に 、 ソ ー ス コ ー ド 上 でTeX書 式 で 記 述 し た 文 書 をWebプ ラ ウ ザ 上 で 数 式と し て表 現可 能な 形式 へ 変換 する 手法 を提 案 した 。そ して 、 これ を実 現す るた め に Rubyに よ る ド キ ュ メ ン ト 生 成 ラ イ プ ラ リRDocのFortran 90/95解 析 ツ ー ル の 大 幅 な 改 良 を 行った(Morikawa et al.,2007)。
更 に 、上 記を 基礎 とし て 、惑 星大 気階 層 モデ ルの プロ トタ イプとなる大気大循環モデル として、
dcpam5の 設 計 と 開 発 を 行 っ た 。dcpam5は 、Fortran 77で 記 述 さ れ た 大 気 大 循 環 モ デ ル
‑ 1191−
AGCM5 (Numaguchi,1992)に お い て実装さ れてい る球面3次元プ リミテ イブ方程 式であ るカ 学過程と 放射や 積雲パラ メタリゼ ーショ ンなどの物理過程をFortran 90/95で新たに書き直す 形で実装を行った。実装に際しては、上記の手法に加え、これまでに試みられてきたTakehiro et al. (2006)などの手法を効果的にモデルヘと適用するためにプログラミングガイドラインを設け た。基礎実験として水惑星実験を行い、それと並行して、解析データの出カに対して上記で提案 した手法 をgto015ライプラりによって実現可能であるかを検証した。同時に、力学過程や物理 過程に関 連する 解説文書の管理手法についてもRDoc Fortran 90/95解析機能強化版によって実 現可能であるかを検証した。その結果、並列化や出カの動的設定の有無にかかわらず入出カイン ターフェースを共通化すること、そして大気大循環モデルを構成する全てのプログラムにおいて 解説文書をソースコードと一緒に、かつその可読性を向上する形で管理すること、さらにそれら か ら 数 式 を 表 現 可 能 なHTML文 書 を 自 動 的 に 生 成 可 能 で あ る こ と が 示 さ れ た 。 これを要するに、著者は、比較惑星大気科学に供せられる惑星大気階層モデル群のプロトタイ プとしての大気大循環モデルを提案したものであり、惑星大気構造の理解に対して貢献するとこ ろ大なるものがある。
よ っ て著 者 は 、北 海 道 大学 博 士 (理 学 ) の 学位 を 授 与さ れ る 資格 あ る もの と 認 める 。
―1192−