[GFD Dennou Club | deepconv Project] [deepconv Reference Manual]
この文書は deeoconv/arare の利用の手引である. ここでは インストール の手引 により, すでにソースコードのコンパイル と実行プログラムのインストールは終了しているものとし, デフォルトの設定 での実行と目的に応じて設定を変更し実行する方法について簡単に解説する.
実行プログラムはソースツリーディレクトリ (ここでは /work/deepconv) 直 下の bin ディレクトリ以下にあるとする.
deepconv/arare の計算設定を行う NAMELIST ファイルは arare.conf である. デフォルトでは地球大気設定用の arare-earth.conf と, 木星大気設定用の arare-jupiter.conf が用意されている. ここでは arare-earth.conf を作業ディ レクトリに arare.conf としてコピーする.
$ cd /work $ mkdir sample01 $ cd sample01 $ cp /work/deepconv/arare-earth.conf arare.conf
以下, 順に arare.conf の設定を確認する.
デバッグ出力を行うかどうかの設定を行う. 論理変数 DebugOn を .true. にすると, 実行時にデバッグ用のメッセージ出力が行われるようになる. この NAMELIST 変数は debugset モジュール で読み込まれる.
!!! !!!デバグ設定 !!! &debugset DebugOn = .true. ! デバグ出力スイッチ /
この NAMELIST 変数は fileset モジュール で読み込まれる. 入出力ファイルに関する NAMELIST 変数のうち, HistoryFile と ReStartFile は必ず値を指定しなければならない. InitFile を指定しない場合には, デフォ ルトの初期値が用いられる. RandomFile はデフォルトの初期値を生成するために 必要な乱数データを格納したファイルで, bin/randomset を実行することで作成 される.
!!! !!!入出力ファイルに関する設定 !!! &fileset InitFile = "" !初期値ファイル HistoryFile = "arare-earth.nc" !ヒストリーファイル ReStartFile = "arare-restart.nc" !リスタートファイル RandomFile = "rand.dat" !乱数ファイル, bin/randomset で作成 ExpTitle = "2D cumulus model deepconv/arare" !データの表題 ExpSrc = "GFD_Dennou_Club deepconv project (arare)" !データを作成する手順. モデル名等. ExpInst = "[email protected]"!ファイルを最終的に変更した人, 組織. /
計算ステップ数などの時間積分に関する設定を行う. この NAMELIST 変数は timeset モジュール で読み込ま れる.
!!! !!!積分時間に関する設定 !!! ×et DelTimeLong = 2.0d0 !長いタイムステップ DelTimeShort = 2.0d-1 !短いタイムステップ(音波関連項) TimeInt = 4800.0d0 !積分時間 TimeDisp = 120.0d0 !出力時間間隔 DayTime = 84600.0d0 !一日の長さ /
この NAMELIST 変数は gridset モジュール で読み込まれる. 凝結成分としては水蒸気だけを考え, 凝結成分化学種の相の数は, 気体, 液体(雲粒), 液体(雨粒)の 3 種類とする.
!!! !!!格子点数に関する設定 !!! &gridset NX = 100 ! X 方向刻み点数 NZ = 60 ! Z 方向刻み点数 Xmin = 0 ! X 座標の始点 Xmax = 24.0d3 ! X 座標の終点 Zmin = 0 ! Z 座標の始点 Zmax = 18.0d3 ! Z 座標の終点 SpcNum = 3 ! 凝結成分の数 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= 15.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.75d0 !基本場の湿度 TempStrat = 220.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.0d0 !湿度 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 = 3.0d3 !スポンジ層の厚さ(鉛直方向) /
雲物理パラメタリゼーションで用いられるパラメータの設定を行う. これらの パラメータは 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 = 150.0d3 !放射強制を与える鉛直領域の上限 RadHeightDown = 0.0d3 !放射強制を与える鉛直領域の下限 /
以上の設定を行った設定ファイルを引数に与え, プログラムを実行する.
$ /work/deepconv/bin/arare arare.conf