- 追加された行はこの色です。
- 削除された行はこの色です。
#topicpath
* WRFの物理パラメタ・初期条件・境界条件(実行時のいろいろ) [#x8357a33]
- 目次
++ [[新しいケースの作成>#qe2528b4]]~
++ [[WRFの諸条件の設定>#r214bb0e]]~
+++ [[地表面高度>#e2785409]]~
+++ [[地表面状態>#labcd9ea]]~
+++ [[コリオリパラメタ>#k7955d42]]~
+++ [[境界条件>#b15305f8]]~
+++ [[物理モデル>#jf9dd6d4]]~
~
- その他
-- WRF のインストールについては、[[WRFの導入>../WRFの導入]]へ。
-- WRF 全般については[[領域気象モデル>../]]へ。
** 新しいケースの作成 [#qe2528b4]
*** はじめに [#odb15f69]
-- 新しいケース名を設定する必要性について~
~
WRF で理想化された状況について計算する場合、test ディレクトリ以下にあるようなディレクトリ名に
対応したケースがあらかじめ用意されているので、これを用いて計算することが多い。~
しかし、自分でプロジェクトを管理するためには、独自にケース名を設定したい。以下は、試行錯誤した結果得られた情報。~
~
*** 準備 [#q0185ac6]
-- 設定ファイルを探した結果~
" ./complile ケース名" を実行するので、ケース名がどのファイルに含まれているかが分かればよい。それを検索する。結果は次のとおり。~
~
+++ Makefile
+++ dyn_em/depend.dyn_em~
~
*** 既存のファイルの編集 [#d483196e]
新規プロジェクトのケース名を "em_&color(red){9bar};" とする。
+ &color(darkred){Makefile};~
~
次のような記述を加える。"em_9bar" 1箇所、"9bar" 1箇所。~
em_9bar : wrf
@ echo '--------------------------------------'
( cd main ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=em IDEAL_CASE=9bar em_ideal )
( cd test/$@ ; /bin/rm -f wrf.exe ; ln -s ../../main/wrf.exe . )
( cd test/$@ ; /bin/rm -f ideal.exe ; ln -s ../../main/ideal.exe . )
( cd test/$@ ; /bin/rm -f README.namelist ; ln -s ../../run/README.namelist . )
( cd run ; /bin/rm -f ideal.exe ; ln -s ../main/ideal.exe . )
( cd run ; if test -f namelist.input ; then \
/bin/cp -f namelist.input namelist.input.backup ;\
fi ; \
/bin/rm -f namelist.input ; ln -s ../test/$@/namelist.input . )
( cd run ; /bin/rm -f input_sounding ; ln -s ../test/$@/input_sounding . )
@echo "build started: $(START_OF_COMPILE)"
@echo "build completed:" `date`
いくつかのテストケースにあるような
( cd test/$@ ; /bin/rm -f gribmap.txt ; ln -s ../../run/gribmap.txt . )
( cd test/$@ ; /bin/rm -f grib2map.tbl ; ln -s ../../run/grib2map.tbl . )
という記述は、おそらくいらない。~
~
+ &color(darkred){dyn_em/depend.dyn_em};~
~
次のような記述を加える。(多分)すべての理想化実験のケースについて、同じように記述されているので、~
ここで作成する新たなファイルに対しても同様に設定する。
module_initialize_9bar.o : \
../frame/module_domain.o \
../frame/module_configure.o \
../frame/module_state_description.o \
../frame/module_timing.o \
../frame/module_dm.o \
../share/module_io_domain.o \
../share/module_model_constants.o \
../share/module_bc.o \
module_init_utilities.o
~
~
*** 新規ディレクトリ・ファイルの作成 [#d483196e]
+ &color(darkred){test/9bar};~
+ &color(darkred){test/em_9bar};~
新規にディレクトリを作成する。このディレクトリ内に次のファイルを作成する。~
~
++ &color(darkred){test/9bar/namelist.input};~
++ &color(darkred){test/em_9bar/namelist.input};~
計算上のパラメタなどを記述したファイルを作成する。~
~
++ &color(darkred){test/9bar/input_sounding};~
++ &color(darkred){test/em_9bar/input_sounding};~
初期の鉛直方向のデータを記述するファイルを作成する。~
~
++ &color(darkred){test/9bar/input_soil};~
++ &color(darkred){test/em_9bar/input_soil};~
初期の土壌のデータを(必要に応じて)作成する。~
~
※ その他、"run_me_first" など、雛形になるようなテストケースからコピーしておく。~
~
+ &color(darkred){dyn_em/module_initialize_9bar.F};~
地形・初期擾乱などを与えるためのファイルを作成する。~
~
~
** WRFの諸条件の設定 [#r214bb0e]
*** はじめに [#sbe44fb7]
-- WRF の初期値~
~
計算を行うには初期値を与える必要がある。現実のデータを適用するためには、WPS と real.exe を用いる。~
理想化された状況について計算する場合には ideal.exe を用いる。二者択一である。~
~
なお、実行時に real.exe と ideal.exe のどちらを選ぶかという問題ではなく、./compile を実行する時点で選んで置かなければならないことにも注意。~
~
-- 設定用のファイル(em_tropical_cyclone を例に)~
--- test/em_tropical_cyclone/&color(red){nameist.input};~
組み込まれている物理学的オプション、力学的オプションを変更するためのファイル。~
~
--- &color(red){dyn_em/module_initialize_*.F};~
ファイル名のうち、* の部分にはテストケースの名前が入る。~
プログラムで記述しなければならないような、地表面高度などの設定をする。~
~
--- test/em_tropical_cyclone/&color(red){input_sounding};~
初期値の鉛直方向のプロファイル。~
~
*** 地形の高度の初期化 [#e2785409]
&color(red){dyn_em/module_initialize_*.F}; で設定する。
-- 地形データの設定~
地表面の高度を設定するには次の配列
grid%ht(i,j)
を変更する。関連する配列については、次のようにすると良さそうである。
grid%phb(i,1,j) = g*grid%ht(i,j)
grid%php(i,1,j) = 0.
grid%ph0(i,1,j) = grid%phb(i,1,j)
このようにすると、以下の処理で上空の geopotential height も設定してくれるようである。~
~
-- 地形データの確認
-> csh run_me_first.csh
-> ./ideal.exe
を実行した後、wrfinput_d01 (netCDFファイル) を用いて、変数 hgt を表示させれば値がわかる。
*** 地表面状態の設定 [#labcd9ea]
&color(red){dyn_em/module_initialize_*.F}; で設定する。
-- Land Mask~
陸か海かの区別をするパラメタ。
xland(i,j)
これが 1 ならば陸、2 ならば海(水の上)を表す。~
~
-- Land Use Categories~
[[ARWの User's Guide>http://www.mmm.ucar.edu/wrf/users/docs/user_guide_V3/ARWUsersGuideV3.pdf]] を参照して設定する。~
*** コリオリパラメタ [#k7955d42]
&color(red){dyn_em/module_initialize_*.F}; で設定する。
-- grid%f(i,j)~
に、適切な値を設定する。~
~
*** 境界条件 [#b15305f8]
&color(red){nameist.input}; で設定する。
-- 設定例
periodic_x = .true.,
symmetric_xs = .false.,
symmetric_xe = .false.,
open_xs = .false.,
open_xe = .false.,
periodic_y = .false.,
symmetric_ys = .false.,
symmetric_ye = .false.,
open_ys = .true.,
open_ye = .true.,
それぞれ、x,y 方向について、周期境界条件か、対称な境界条件か、オープンな境界条件か。~
~
*** 物理モデル [#jf9dd6d4]
&color(red){nameist.input}; で設定する。~
++ 微物理過程~
mp_physics = 1
--- 1 : Kessler : 簡単なモデル
--- 95 : Eta : NCEP モデルの coarse 用(ただし、使うときには、このオプションだけでは駄目のようだ。 )
++ 非静力学モデルの採否
non_hydrostatic = .ture.
++ 長波放射
ra_lw_physics = 1
--- 1 : RRTM scheme~
よくわからないけど、Rapid Radiative Transfer Model
++ 短波放射
ra_sw_physics = 1
--- 1 : Dudhia scheme~
よくわからないけど、Simple で Efficient なようだ。
++ 地形による日射の効果
slope_rad = 1,
top_shad = 1,
斜面と地形による日射量の変化は考慮しないならば、0 にするのではなく、書かないのが正解のようだ。~
これを書いたために、動かなくなった。なお、これらを有効にする必要があるのは、メッシュの細かいモデルであると
++ 地表付近の物理
--- Land Surface
sf_surface_physics = 1,
※ 5層で温度を計算
--- Surface Layer
sf_sfclay_physics = 5,
※ 5 : MYNN
--- Planetary Boudnary Layer
bl_pbl_physics = 5,
※ 5 : MYNN 2.5
++ 積雲対流スキーム
cu_physics = 14
--- 14 : New Simplified Arakawa-Schubert
++ SST の更新
sst_skin = 1
長期間積分に便利な、SST の更新