惑星大気放射モデル 3 : 大気プロファイルの変更
地球大気計算に与える大気プロファイルを変更する.
概要
大気プロファイルは prog01.0_mkprofile_ascii で準備する.
prog01.0_mkprofile_ascii では, テキスト形式の大気プロファイルデータを netcdf 形式に変更する. したがって, prog01.0_mkprofile_ascii のプログラムに与えるテキストデータを変更すればよい.
例えば, サンプル設定ファイル sample/Earth.mkprofile.conf では, data/Earth_MidLatSummer.txt を読み込む. まずは, このファイルの内容を変更し, 変更した大気プロファイルに対して放射計算を行う.
テキスト形式大気プロファイルデータのファイルフォーマット
prog01.0_mkprofile_ascii のプログラムが読み込むテキスト形式の大気プロファイルデータのフォーマットについて説明する.
大気レベル/層の構造
大気レベル・層に対して以下の物理量を指定する.
P : 圧力 (@大気レベル(層境界)) T : 温度 (@大気レベル(層境界)) VMR : 体積混合比 (@大気レベル(層境界)) Rad : 粒子の半径 (@大気層(中間)) MMR : 粒子の質量混合比 (@大気層(中間))
ただし, 雲, エアロゾルを考慮しない場合には粒子の値は不要.
大気レベル/層ごとに下のように配置されていするとする.
========== P(NLev) , T(NLev) , VMR(NLev) (NLev)-th level (upper boundary) - - - - Rad(NLev-1), MMR(NLev-1) (NLev-1)-th layer ========== P(NLev-1), T(NLev-1), VMR(NLev-1) (NLev-1)-th level - - - - Rad(NLev-2), MMR(NLev-2) (NLev-2)-th layer ... - - - - Rad(3), MMR(3) 2nd layer ========== P(3), T(3), VMR(3) 3rd level - - - - Rad(2), MMR(2) 2nd layer ========== P(2), T(2), VMR(2) 2nd level - - - - Rad(1), MMR(1) 1st layer ========== P(1), T(1), VMR(1) 1st level (lower boundary)
ファイルフォーマット
上記の大気構造中の物理量配置にたいして, ファイルは下のようなフォーマットである必要がある.
NLev : Number of levels (layer interfaces) NMol : Number of molecules MolNumX : Xth molecular number P(k) : pressure at k'th level T(k) : temperature at k'th level MolX_VMR(k) : volume mixing ratio of Xth molecule at k'th level NPtcl : Number of particles PtclYName : name of Yth particle PtclYDens : density of Yth particle PtclYRad(l) : effective radius of of Yth particle at l'th layer PtclYMMR(l) : mass mixing ratio of of Yth particle at l'th layer
ただし, 雲, エアロゾルを考慮しない場合には NPtcl = 0 とし, PtclY* の値は不要.
l.1 : Comment (This line is not read, actually.) l.2 : NLev l.3 : NMol l.4 : MolNum1, MolNum2, ... l.5 : P(1) , T(1) , Mol1_VMR(1) , Mol2_VMR(1) , ... l.6 : P(2) , T(2) , Mol1_VMR(2) , Mol2_VMR(2) , ... ... l.(4+NLev) : P(NLev), T(NLev), Mol1_VMR(NLev), Mol2_VMR(NLev), ... l.(4+NLev+1) : NPtcl l.(4+NLev+2) : Ptcl1Name, Ptcl2Name, ... l.(4+NLev+3) : Ptcl1Dens, Ptcl2Dens, ... l.(4+NLev+3+1) : Ptcl1Rad(1) , Ptcl2Rad(1) , ... l.(4+NLev+3+2) : Ptcl1Rad(2) , Ptcl2Rad(2) , ... ... l.(4+NLev+3+NLev-1) : Ptcl1Rad(NLev-1), Ptcl2Rad(NLev-1), ... l.(4+NLev+3+NLev-1+1) : Ptcl1MMR(1) , Ptcl2MMR(1) , ... l.(4+NLev+3+NLev-1+2) : Ptcl1MMR(2) , Ptcl2MMR(2) , ... ... l.(4+NLev+3+NLev-1+NLev-1) : Ptcl1MMR(NLev-1), Ptcl2MMR(NLev-1) , ...
プログラムの実行
変更した大気プロファイルデータを用いて prog01.0_mkprofile_ascii で netcdf ファイルを作成し, その後, 他のプログラムで放射計算を行う.