next up previous
: 3. 力学過程 : dcpam5 コード解説 : 1. この文書について


2. コードの概要


2.1 変数の命名法について

モデル中の主要な変数の命名法について述べる. これはコードと本稿の理解に必 要である. 下記の命名法は Takehiro et al. (2006) に倣い, また 大気大循環モデルで用いるために多少の拡張をおこなったものである.

2.1.1 基本ルール

配列型の変数名の基本形は以下のようにする.

     (次元情報に関する接頭詞)_(物理的意味)(時間方向添字)

配列ではない変数名の基本形は以下のようにする.
     (物理的意味)(時間方向添字)

時間方向に変化しない変数は (時間方向添字) を記述しない. 次元情報に関する接頭詞, 物理的意味, 時間方向添字の付け方については以下で 説明する.

2.1.2 次元情報に関する接頭詞・接尾詞

次元情報に関する接頭詞・接尾詞には, 以下の文字を用いる.

     x  格子点データ(x / 経度座標)
     y  格子点データ(y / 緯度座標)
     z  格子点データ(z / 動径座標)
     r  格子点データ半整数レベル(z / 動径座標)
     w  球面調和関数展開スペクトルデータ
     a  上記以外の座標

2.1.3 時間方向添字

時間方向の添え字には大文字を用いる. 未来のタイムステップを表すには A を, 現在のタイムステップを表すには N を, 過去のタイムステップを表すに B を用いる.


2.1.4 物理的意味

基本的なルールは以下の通りである.


2.1.5 変数の例

上記の規則に基づく変数の例を示す.



2.2 メインプログラムの流れ

Fig.2.1 にメインプログラムとその直接の下請ルーチンから見た モデルの構造の概要を示す. さらに入出力に関連する部分も書き加えた. dcpam5が必要とする入力ファイルは初期値ファイルと 地表面に関する境界値, 地形ファイル である. 但し, 初期値ファイル以外は省略して, デフォルトまたは陽に指定した 一定値を用いることが出来る. 出力ファイルとしては, 結果を残すためのヒストリーファイル と時間積分を延長するためのリスタートファイルが出力される. 後者は延長積分時に初期値ファイルとして使われる.

モデルは初期化部分と時間積分のメインループの二つの部分に分けることが できる. 前者は初期値の読み込みと若干の定数の設定を行う. 後者が言うまでもなくモデルの主要部分である. 境界値, 地形ファイルの読み込みはループに組み込まれてはいるが, 現在のところ最初の一回しか読み込まれないので時間変化しない.

図 2.1: dcpam5の構造の概要. アルファベット太字で書かれているの はメインプログラム dcpam_main (dcpam_main.F90) 中で呼ばれているサブルーチンである. 骨格を把握する上で冗長なものはひとまとめにしてあり, 個別のサブルーチン名は記載していない. MainInit およびMainTerminate は メインプログラムファイル中に内部副プログラムとして 定義されるサブルーチンである. 破線は, メインループの初回でのみ呼ばれることを示す. 図中では, 地表面ファイル入力がその一例として示されている. 診断量であるヒストリデータは, その出力の初期化と 終了処理は主プログラムのMainInitおよび MainTerminateで行い, 出力自体は各所で行う.
\begin{figure}\begin{center}
\Depsf[160mm]{general/mainstruct.eps}
\end{center} \end{figure}

時間積分にはリープフロッグのセミインプリシット法が用いられているので, 時 間の流れは単純ではない. 例えば $ \Delta t = 10$ 分として, ある時刻 $ t = 90(t-\Delta t), 100 (t)$ の値を用いて $ t = 110 (t+\Delta t)$ の値を計算した場合, この $ t = 110 $の値をそのまま用いる のではなく, 時間フィルター (Fig.2.1 の TimeFilter) を用いてこの 3 レベルの値から $ t = 100 $の 値を修正する. 次のステップでは, $ t = 100 (t-\Delta t), 110 (t)$ の値を用い, 次の ステップの値を計算することとなる.

モデルの時間積分はリープフロッグスキームのセミインプリシット法により行わ れる. 物理過程で計算された時間変化項は力学過程に引き渡され, 時間積分は力 学過程の中で行われる. ただし, 物理過程のうち, 降水過程などの調節過程は時 間積分後に適用される.

2.3 参考文献

Takehiro, S., Odaka, M., Ishioka, K., Ishiwatari, M., Hayashi, Y.-Y., 2006: SPMODEL: A Series of Hierarchical Spectral Models for Geophyiscal Fluid Dynamics, Nagare Multimedia 2006, http://www.nagare.or.jp/mm/2006/spmodel/



... ものに関しては記述的名称を省略したものを用いる2.1
混同のしやすさに関しての明確な基準は設けていない

next up previous
: 3. 力学過程 : dcpam5 コード解説 : 1. この文書について
Yasuhiro MORIKAWA 平成21年3月6日