WRF全体について、詳しくはWRF MODEL USER'S PAGE を参照のこと
WRFの現実的設定の計算では、
1) まずWPS (WRF Preprocessing System)で客観解析データ、海面水温データ、地形データ等を処理して、入力データ(met_em.d0*..., 6時間毎)を作ります.
2) WRFの実行の際は、このデータから境界値、初期値(wrfbdy_d01, wrfinput_d0*) を作ります(real.exeの実行)
3) その後時間積分して計算を実行します(wrf.exeの実行).
4) 計算結果(wrfout_d0*....) を処理して、可視化します. ここではARWpostでGrADSデータ化する方法を説明します.
以下、インストールから実行の手順を記します.
初めての場合(New Users)、ユーザー登録が必要となります.
次回(Returning Users)からは、メールアドレスを入力するだけで ダウンロードできます.
WRF, WPSの両方 (WRFV3.7.1.TAR.gz, WPSV3.7.1.TAR.gzなど) をダウンロードすること.
また、ダウンロードページのWPSのテーブルの直下(*IMPORTANT: Before running WPS, you will need to download the WPS Geography data, which you can find here.と書いてあるところ)をクリックして、WRF用の地形データ もダウンロードすること.
テーブル上段にある、Download Complete Dataset をクリックして geog_complete.tar.bz2をダウンロード,
さらにテーブル左列にある topo_10m.tar.bz2, topo_2m.tar.bz2, topo_30s.tar.bz2, topo_5m.tar.bz2をダウンロード.
以下、user maroが作業用directory WRF_V3.7.1/, WPS_V3.7.1/ 以下に WRF、WPSをそれぞれインストールする例を書きます. #以降はコメント
[WRFのインストール]
注)(shear7以外では不要です) shear7を再起動した場合、fortranのライセンスマネージャが停止しているので、su kawasima で kawasima になって以下のコマンドを打って起動しておくこと. [maro@shear7]$ lmgrd.rc lmstat(ライセンスマネージャの状態を見る), lmdown(停止) は /home/kawasima/IFC/flexlm/ 以下で行うこと (そこにあるserver.licを見る必要があるため). 以下、WRFのインストール [maro@shear7 WRF_V3.7.1]$ LANG=C #日本語環境から英語環境にする(CentOS7.Xのshear10,shear11では必須) [maro@shear7 WRF_V3.7.1]$ export WRF_EM_CORE=1 #(bash系, cshの時はsetenv WRF_EM_CORE 1 ) [maro@shear7 WRF_V3.7.1]$ tar xzvf WRFV3.7.1.TAR.gz # 展開 [maro@shear7 WRF_V3.7.1]$ cd WRFV3 [maro@shear7 WRFV3]$ ./configure Enter selection[1-63]: と聞かれるので、 INTEL (ifort/icc) の dmpar (dmpar= distributed memory option : MPI 並列) に対応する番号 (WRFのバージョンにより違います。Ver 3.7.1なら 15, Ver 3.5.1 なら19 ) を入力. 次に Compile for nesting? (1=basic, 2=preset moves, 3=vortex following) [default 1]: と聞かれますが、ここでは 2 (=preset move: 内部領域を移動させる場合に 対応しますが、移動させない場合にも対応している) としてください. また、WRFV3/Registry/ 以下にある Registry.EM_COMMON (出力する予報変数を指定 するファイル)は以下のものと置き換えておいてください。 (なお、川島の方で用意した修正版 WRF_V3.5.1については何も置きかえる 必要ありません) Registry.EM_COMMON [maro@shear7 WRFV3]$ ./compile em_real >& compile.log & #最初のコンパイルには40〜50分ほどかかります。 [maro@shear7 WRFV3]$ cd main [maro@shear7 WRFV3]$ ls -l 4つの.exeファイル (ndown.exe, real.exe, tc.exe, wrf.exe) ができているか確認すること. できていなければコンパイルは失敗しているので log ファイルをチェック. コンパイルに失敗した場合、logファイル(compile.log)を見て原因を調べて、 [maro@shear7 WRFV3]$ ./clean -a (実行形式を全てremoveする) として、やり直すこと. インストール後に、一部のプログラム(subroutine) を改変してcompileする際は、 ./clean -a は行わなくて良い. 改変した部分のみcompileしてくれます(時間が短くて済みます). |
WPSのインストール (注意: WRFをインストールした後でないとできません)
[maro@shear7 WPS_V3.7.1]$ tar xzvf WPSV3.7.1.TAR.gz # 展開 [maro@shear7 WPS_V3.7.1]$ cd WPS [maro@shear7 WPS]$ LANG=C #英語環境にする(CentOS7.Xのshear10,shear11では必須) [maro@shear7 WPS]$ export JASPERLIB=/usr/local/lib [maro@shear7 WPS]$ export JASPERINC=/usr/local/include [maro@shear7 WPS]$ ./configure Enter selection[1-36]: と聞かれるので、 Linux x86_64, Intel compiler (serial) に対応する番号 (WPSのバージョンにより違います.Ver 3.7.1では17) を入力. [maro@shear7 WPS]$ emacs configure.wps & # configure.wpsを編集 WRF_DIR = ../WRFV3 となっているところを、自分のWRFのdirectory(full path) WRF_DIR = /home/maro/WRF_V3.7.1/WRFV3 に変更します. [maro@shear7 WPS]$ ./compile #コンパイルは数分でできます。 [maro@shear7 WPS]$ ls -l 3つの.exeファイル(geogrid.exe,metgrid.exe, ungrib.exe)ができてることを 確認すること. できていなければコンパイルは失敗. |
[maro@shear7 ]$ mkdir GEOG # 適当なdirectoryを作る [maro@shear7 ]$ mv geog_complete.tar.bz2 GEOG/. [maro@shear7 ]$ cd GEOG/ [maro@shear7 GEOG]$ tar xvf geog_complete.tar.bz2 # 展開 /home/maro/GEOG/geog 以下にデータができる. topo_10m.tar.bz2, topo_2m.tar.bz2, topo_30s.tar.bz2, topo_5m.tar.bz2 は/home/maro/GEOG/geog/以下にコピーし、展開しておくこと. 注意)拡張子が.tar.bz2になっているファイルを展開するには、jオプションを 付けて以下のようにtarコマンドを実行する。 $ tar jxf topo_10m.tar.bz2 |
以下、大気データとしてNCEP Final Analysis (FNL), 海面水温データとしてReynolds SST (High Resolution) を使用する場合について記す. なお、FNLには海面水温データも含まれているので、FNLのSSTをそのまま使う場合はSSTのダウンロードはしなくても良い. 以下は2015年9月の関東東北豪雨の事例.
NCEP Final analysis、Reynolds SST(High Resolution) のデータを以下のサイトから ダウンロードしてそれぞれ適当なdirectory (以下では/home/maro/DATA/FNL/20150910/, /home/maro/DATA/RTGSST/20150910/以下) に置いておく. 以下にダウンロードの方法を記す. 注意: 特定の事例の再現実験では、見たい日時の数日前後の分も含めて、 データをダウンロードして保存しておく. FNLのダウンロード方法 NCEP Research Data Archive 一番下のData Accessをクリック → Web File Listing (期間によってGRIB1かGRIB2のいずれか,このケースはGRIB2) → Faceted Browse → Temporal (Valid Time) Selection で期間(対象期間の数日前〜数日後)を指定 (Parameter Selectionはマークしない) →一番下の Continueをクリック →必要なファイルのboxをマークして Downloadをクリック →datafiles.tarが/home/maro/ダウンロード/以下にダウンロードされるので、 作成したdirectoryに移して展開(tar xvf datafiles.tar). SSTのダウンロード方法(FNLのSSTを使う場合は不要) Verification and archival of the RTG_SST_HR analysis ftp://polar.ncep.noaa.gov/pub/history/sst/rtg_high_res (from two days ago back to Sept.27, 2005) と書いてあるところをクリック →必要なファイル(rtg_sst_....) をクリックしてダウンロード. →rtg_sst... が/home/maro/ダウンロード/以下にダウンロードされるので、 作成したdirectoryに移す. 他の客観解析データ、Vtableについては こちら |
geo_em_d0*.nc や met_em_d0*.ncなど netcdf形式の入力データは read_wrf_nc.f で読み込み、改変することができる。 read_wrf_nc.fのページ 以下、モデルの地形(標高)を変える方法について説明する。 以下の地形改変用にread_wrf_nc.f を修正したものをコピーして、自分の課題に合わせ、 適宜修正して使うこと。 read_wrf_nc_d01.f 修正した箇所は プログラム中の subroutine USER_CODE (最後にあります) で、 ! modified by Kawashima と書いてあります。 座標 A (icent, jcent)を中心に、Aからの距離に応じて地形の標高を下げるよう にしています。 点Aからの距離が十分離れた所では、元の標高と殆ど変わらないようにしています。 地形を修正する場合は、geo_em_d0*.ncを修正します。 その後で metgrd.exeを行えば、修正した地形を反映した入力データ met_em_d0*.ncができます。 コンパイル (geo_em_d0*nc のあるdirectoryで行う) [maro@shear7]$ ifort read_wrf_nc_d01.f -L/usr/local/netcdf-3.6.3/lib -lnetcdf -lm -I/usr/local/netcdf-3.6.3/include -free -o read_wrf_nc_d01 実行 [maro@shear7]$ ./read_wrf_nc_d01 -EditData HGT_M geo_em.d01.nc INPUT FILE IS: geo_em.d01.nc Attempting to open netCDF file with write access CAUTION variable HGT_M is about to change. Continue? (yes/no) と出るので yes とすれば、地形の標高(HGT_M)が修正される。 Nestingして実験する際は、read_wrf_nc_d01.fをコピーして適宜書き換え geo_em_d02.nc, geo_em_d03.nc....も同様に修正すること。 (icent, jcent, dx, dy の値を書き換える必要があります) 同様の方法で、標高以外のデータ、例えば地表面の種類も修正できます。 以下は、陸面を海面に変更するプログラムの例で、上と同様のやり方で、 HGT_Mの他、LAMDMASK, LANDUSEF, LU_INDEXを変更します。 変更する領域などは各自問題に合わせ、適宜修正すること。 read_wrf_nc_d01_landtosea.f 注)最近のFNLデータでは, met_em** のSNOW, SNOWH を0に直すべき場合がある (wrfの出力のtsk, snowcをチェックすること) |
[maro@shear7 ]$ cd /home/maro/WRF_V3.7.1/WRFV3/test [maro@shear7 test]$ mkdir em_20150910 # 計算用direcotoryの作成 [maro@shear7 test]$ cp -rf em_real/* em_20150910/. # 実行形式など、全部コピーしてしまうと面倒がない. [maro@shear7 test]$ cd em_20150910/ [maro@shear7 em_20150910]$ emacs namelist.input & # 計算の設定ファイルを編集、とりあえず以下のものをコピーして使うこと. namelist.input 注: em_real/以下のdefaultのnamelist.inputは書き換えるべきところが非常に多いので、 一度作った namelist.inputは保存しておき、以降はそれを適宜編集して使うと良い. namelist.inputの説明(よく変更する箇所のみ) 詳しくはWRF User's Guide Chapter 5 を参照のこと |