WRFDAのインストール手順

WRF (Weather Research and Forecasting Model)でデータ同化シミュレーションを行うためには, WRFの通常のインストールだけでなく, 追加の準備が必要となる. WRFのコード群の中には, 通常のシミュレーションを行うWRFコードだけでなく, データ同化用のWRFDAのコードも一緒に入っている. しかし, WRFとWRFDAを一緒にビルドすることはできない. ここでは, すでにWRF(v4.7.1を想定)のビルドが完了した環境を前提に, 3次元変分法を行うためのWRFDAのインストール手順をまとめる.

WRFDAに関するインストール手順の詳細や実際の同化シミュレーション手順の詳細については, 公式ページの説明を参照されたい: https://www2.mmm.ucar.edu/wrf/users/docs/user_guide_v4/v4.4/users_guide_chap6.html

以降では, $HOME/wrf_471 の中でWRFとWRFDAのビルドを行うものとして話を進める.

大まかな手順は次のとおりである:
1. WRFのソースコードをダウンロード
2. 環境変数の設定
2. WRFDAのビルド

1. WRFのソースコードをダウンロード

cd $HOME/wrf_471
git clone --recurse-submodule https://github.com/wrf-model/WRF.git
cd WRF
less README
# 1行目でバージョンを確認できる: WRF Model Version *.*.*
# 筆者が実行したときのWRFバージョンは v4.7.1 であった
less doc/README.DA
# 末尾にWRFDAのコンパイル手順が書かれている

通常のWRFのインストール手順は, こちらを参照されたい: WRFモデルの導入

WRFのインストールが完了したものとしてWRFDAのインストールの準備に入る. WRFとWRFDAのビルドを行うディレクトリは分ける必要がある. WRFDAのビルドを行うためのディレクトリを準備しておく:

cd $HOME/wrf_471
cp -r WRF WRFDA
cd WRFDA
./clean

2. 環境変数の設定

WRFモデルの導入の際に, netcdf等の関連ライブラリをインストールした. これらのライブラリに関連する環境変数を設定しておく:

export DIR="$HOME/wrf_471/libs" # 関連ライブラリのディレクトリが入っている場所を指定
export CPPFLAGS="-I$DIR/include"
export LDFLAGS="-L$DIR/lib"
export LIBS=”-lnetcdf -lhdf5_hl -lhdf5 -lz”
export PATH="$DIR/netcdf/bin:$DIR/bin:$PATH"
export LD_LIBRARY_PATH="$DIR/lib:$DIR/netcdf/lib:$DIR/grib2/lib:$LD_LIBRARY_PATH"
export JASPERLIB="$DIR/grib2/lib"
export JASPERINC="$DIR/grib2/include"
export NETCDF="$DIR/netcdf"

上記のDIR等のパスは各人の環境に合わせて正しく指定すること.


3. WRFDAのビルド

./configure wrfda を実行すると, コンパイル関連のオプションを聞かれる. 自身のマシン環境とコンパイラに合わせたオプションを指定する. その後, コンパイルのコマンドを実行し正常に動作すれば, WRFDAのインストールは完了である.

cd $HOME/wrf_471/WRFDA
./configure wrfda # 筆者の環境ではIntelのifortを使用するため15番を選択した
./compile all_wrfvar &> log_compile_wrfvar &
ls $HOME/wrf_471/WRFDA/var/build/
# da_wrfvar.exe 等の実行ファイルが生成されているかチェック

コンパイルがうまくいかない場合は, log_compile_wrfvar のログを確認されたい. よくあるエラーの要因として, 環境変数の設定ミスが挙げられる. 通常のWRFのインストールに成功している場合は, WRFのコンパイル時に設定した環境変数と同様の設定で試してみるとうまくいくかもしれない.


Link