[GFD Dennou Club | deepconv Project] [deepconv Reference Manual]
この文書は deeoconv/arare の利用の手引である. ここでは インストール の手引 により, すでにソースコードのコンパイル と実行プログラムのインストールは終了しているものとし, デフォルトの設定 での実行と目的に応じて設定を変更し実行する方法について簡単に解説する.
実行プログラムはソースツリーディレクトリ (ここでは /work/deepconv に展開されているとする) 直下の bin ディレクトリ以下にあるとする.
deepconv/arare の計算設定を行う NAMELIST ファイルの雛型として 以下の 5 つが用意されている.
2 次元地球大気設定用 : arare-earth.conf 2 次元木星大気設定用 : arare-jupiter.conf arare-jupiter2.conf 2 次元火星主成分凝結対流設定用 : arare-mmc.conf 3 次元火星乾燥対流設定用 : arare_3d.conf
使用したい NAMELIST ファイルを arare.conf としてコピーする.
ここでは arare-earth.conf を作業ディ レクトリ(データ出力先のディレクトリ, ここでは sample01 とする)に arare.conf としてコピーし, デフォルト設定の計算を実行することとする.
$ cd /work $ mkdir sample01 $ cd sample01 $ cp /work/deepconv/arare-earth.conf arare.conf
設定ファイルを保存したら, プログラムを実行する. 地球計算の場合
$ /work/deepconv/bin/arare
とする.
標準出力および標準エラー出力を保存する場合は, 例えばシェルが bash の場合 には,
$ /work/deepconv/bin/arare > arare.log 2> arare_error.log
とする. ここで, 標準出力を arare.log, 標準エラー出力を arare_error.log に保存した.
実行プログラム bin/arare は引数に何も指定しないと, 作業ディレクトリ内の arare.conf を NAMELIST ファイルとして読み込む. また, 実行時には以下の オプションを与えることができる.
-N=(NAMELIST ファイルのパス) または --namelist=(NAMELIST ファイルのパス) NAMELIST ファイルを陽に指定する. -D または --debug デバッグメッセージを出力する. -H または --help ヘルプメッセージを表示して終了する.
以下のデータファイルが作業ディレクトリに作成される. リスタートファイル, 基本場変数, 水平平均診断量を除き, 1 変数 1 データファイルである.
arare-earth-restart.nc リスタートファイル arare-earth_BasicZ.nc 基本場変数 arare-earth_Exner.nc 無次元圧力関数 arare-earth_H2O-g.nc 水蒸気混合比 arare-earth_H2O-s-Cloud.nc 雲水混合比 arare-earth_H2O-s-Rain.nc 雨水混合比 arere-earth_Kh.nc 乱流拡散係数(運動量) arere-earth_Km.nc 乱流拡散係数(スカラー量) arare-earth_PotTemp.nc 温位 arare-earth_VelX.nc 速度(X 成分) arare-earth_VelZ.nc 速度(Z 成分) arare-earth_Zprof.nc 水平平均診断量
計算が終了したら描画用のツールで絵を表示してみる. 例えば gpview などを使うと良いだろう. gpview の使用例は以下の通り.
$ gpview arare-earth_PotTemp.nc@PotTemp --animate t
gpview の使用方法は GPhys コマンドチュートリアル などを参照されたい.
ここでは地球用の arare-earth.conf を例に NAMELIST ファイルの設定内容を概観する. 設定を変更して計算したい場合には, データ出力先ディレクトリにコピーした arare.conf ファイルを適宜修正すれば良い.
デバッグ出力を行うかどうかの設定を行う. 論理変数 DebugOn を .true. にすると, 実行時にデバッグ用のメッセージ出力が行われるようになる. この NAMELIST 変数は debugset モジュール で読み込まれる.
!!! !!!デバグ設定 !!! &debugset DebugOn = .true. ! デバグ出力スイッチ /
この NAMELIST 変数は fileset モジュール で読み込まれる. 入出力ファイルに関する NAMELIST 変数のうち, HistoryFile と ReStartFile は必ず値を指定しなければならない. InitFile を指定しない場合には, デフォ ルトの初期値が用いられる. RandomFile はデフォルトの初期値を生成するために 必要な乱数データを格納したファイルで, bin/randomset を実行することで作成 される.
!!! !!!入出力ファイルに関する設定 !!! &fileset InitFile = "" !初期値ファイル HistoryFilePrefix = "arare-earth" !ヒストリーファイル接頭詞 ReStartFile = "arare-earth-restart.nc" !リスタートファイル RandomFile = "rand.dat" !乱数ファイル, bin/randomset で作成 ExpTitle = "2D cumulus model deepconv/arare" !データの表題 ExpSrc = "GFD_Dennou_Club deepconv project (arare)" !データを作成する手順. モデル名等. ExpInst = "sugiyama@gfd-dennou.org"!ファイルを最終的に変更した人, 組織. /
計算ステップ数などの時間積分に関する設定を行う. この NAMELIST 変数は timeset モジュール で読み込ま れる.
!!! !!!積分時間に関する設定 !!! ×et DelTimeLong = 2.0d0 !長いタイムステップ DelTimeShort = 2.0d-1 !短いタイムステップ(音波関連項) TimeInt = 3000.0d0 !積分時間 TimeDisp = 120.0d0 !出力時間間隔 DayTime = 86400.0d0 !一日の長さ /
この NAMELIST 変数は gridset モジュール で読み込まれる. 凝結成分としては水蒸気だけを考え, 凝結成分化学種の相の数は, 気体, 液体(雲粒), 液体(雨粒)の 3 種類とする.
!!! !!!格子点数に関する設定 !!! &gridset NX = 100 ! X 方向刻み点数 NZ = 60 ! Z 方向刻み点数 Xmin = 0 ! X 座標の始点 Xmax = 24.0d3 ! X 座標の終点 Zmin = 0 ! Z 座標の始点 Zmax = 15.0d3 ! Z 座標の終点 SpcNum = 9 ! 凝結成分の数 x 雲物理で考慮するカテゴリ数 /
物理パラメータと基本場の設定に必要な変数を指定する. この NAMELIST 変数 は basicset モジュール で読み 込まれる. SpcWetSymbol に指定可能な文字列は, chemdata モジュール に指定されている.
基本場の温度は Tropopause で指定した対流圏界面を模した高度までは断熱勾 配, それより上空では TempStrat で設定した温度で一定である. 対流圏と成 層圏の温度は tanh(z) を用いてなめらかに接続され, Dhight はそのパラメー タである. EnvType を Moist に指定すると凝結高度よりも上空は湿潤断熱勾 配となる.
!!! !!!実験パラメタ(物理・化学) !!! &basicset Grav = 9.8d0 , !重力 [m/s] TempSfc = 300.0d0 , !地表面温度 [K] PressSfc = 965.0d2 , !地表面圧力 [Pa] PressBasis= 965.0d2 , !(温位の)基準圧力 [Pa] Tropopause= 18.0d3 , !対流圏界面高度 [m]
!乾燥成分
SpcDrySymbol(1) = 'N2-g' , !乾燥成分の化学種名 SpcDryMolFr(1) = 1.0d0 , !乾燥成分の存在度
!湿潤成分
SpcWetSymbol(1) = 'H2O-g', !湿潤成分 SpcWetSymbol(2) = 'H2O-s-Cloud', !湿潤成分 SpcWetSymbol(3) = 'H2O-s-Rain' , !湿潤成分 SpcWetMolFr(1) = 1.0d-2 , !湿潤成分の存在度(モル比) SpcWetMolFr(2) = 0.0d0 , !湿潤成分の存在度(モル比) SpcWetMolFr(3) = 0.0d0 , !湿潤成分の存在度(モル比)
! 基本場の設定
EnvType = 'Dry' , !基本場の設定. 'Dry' or 'Moist' Humidity = 0.0d0 , !基本場の湿度 TempStrat = 200.0d0 , !成層圏の温度 [k] Dhight = 5.0d3 !重み関数のパラメータ [m] /
擾乱場の設定を行う. この NAMELIST 変数は DisturbEnv サブルーチン で読み込まれる.
初期値の設定方法を指定する変数 Type の値は, 以下のいずれかを指定する.
擾乱の最大振幅は DelMax で与えられる. XcRate, XrRate, ZcRate, ZrRate は Type に "Thermal-Gauss" ”Thermal-KW1978" を指定した場合のパラメー タである. Xpos, Zpos は "Thermal-Random" を指定した場合の温位擾乱 を与える x 座標と z 座標である.
!!! !!! 擾乱場の設定 !!! &disturbset Humidity = 0.7d0 , !相対湿度 Type = "Thermal-Gauss", !温位擾乱の分布, ! 'Thermal-KW1978' : KW1978 の設定 ! 'Thermal-Gauss' : ガウス分布 ! 'Thermal-Random' : ランダム分布 ! 'HS2001' : HS2001 の設定 DelMax = 1.0d0 , !温位擾乱の最大値 XcRate = 5.0d-1 , !擾乱の中心位置(水平方向)の領域に対する割合 XrRate = 5.0d-2 , !擾乱の半径(水平方向)の領域に対する割合 ZcRate = 0.0d0 , !擾乱の中心位置(鉛直方向)の領域に対する割合 ZrRate = 5.0d-2 , !擾乱の半径(鉛直方向)の領域に対する割合 Xpos = 0.0d0 , !擾乱の X 座標 [m] Zpos = 0.0d0 !擾乱の Z 座標 [m] /
減衰係数の設定を行う. この NAMELIST 変数は damping モジュール で読み込まれる.
!!! !!!減衰係数の設定 !!! &damping Alpha = 5.0d-7 , !音波減衰項の係数 Time = 3.0d2 , !スポンジ層の減衰係数の e-folding time DepthH = 0.0d0 , !スポンジ層の厚さ(水平方向) DepthV = 0.0d0 !スポンジ層の厚さ(鉛直方向) /
雲物理パラメタリゼーションで用いられるパラメータの設定を行う. これらの パラメータは Kessler (1969) の暖かい雨のパラメタリゼーションで用いられ る.
!!! !!! 雲物理パラメタリゼーションの設定 !!! &warmrainprm FactorJ = 1.0d0 ! 雲物理過程のパラメータ ! 木星では 3.0d0 ! 地球では 1.0d0 とする AutoConvTime = 1000.0d0 ! 併合成長の時定数 [sec] MixRt_AutoConvCr = 1.0d-3 ! 併合成長を生じる臨界混合比 [kg/kg] /
放射強制の設定を行う. この NAMELIST 変数は radiation モジュール で読み込まれる.
!!! !!!放射強制の設定 !!! &radiation RadHeatRate = 0.0d0 !一様放射強制の大きさ [K/day] RadHeightUp = 10.0d3 !放射強制を与える鉛直領域の上限 RadHeightDown = 0.0d3 !放射強制を与える鉛直領域の下限 /