アットウィキロゴ

FNL2WRF


WRFの使い方
主にNCEP/FNLのダウンスケールを中心に


WRFの概要


WRFとはメソ(局地)気象モデルのことである.狭い領域で波浪や高潮を計算したいときに,全球気象モデル(GFS,NCEP/FNL,JRA-25など)の気象再解析データを狭い領域用に計算(ダウンスケール)してくれるものである.FNLやWRFのダウンロードは先生にお任せするとして,ここでは,WRFの計算をLinuxで操作する方法を中心に説明する.



WRFDomainWizardを開く


WRFDomainWizardとは簡単にいうと,WRFの計算の準備をお手伝いしてくれるようなものである.まずは,Terminalに

cd /usr/local/Wave_Forecast_Sys/wrf-2.2/WRFDomainwizard(Enterキー)
./WRFDomain.jar(Enterキー)

を打ち込むと,WRFDomainWizardが起動する. 

WRFDomainWizardでの操作


OKを押した後,操作をしやすくするため全画面表示にしておく.計算領域,FNLデータは用意されている前提で話を進めると…

1. Wizard Optionについて
  • 「Open or Delete a domain」を選択し,「Next」をクリック
2. Choose Domainについて
  • これから計算する領域(例,japan_joetsu)を選択し,「Next」をクリック
3. Horizontal Editorについて
  • 「Next」をクリック
4. Namelist.input Editorについて
  • 基本的には,日付,計算時間を変更するのみでOK
5. Run PreProcessorについて
  • 「Select Dir」をクリック → ディレクトリ「/usr/local/Wave_Forecast_Sys/wrf_data/grids/past_data/01_Dec(/past_data/01_Decはケースバイケース)」を選択し,「Choose」をクリック
  • 「Select File」→「Add All」をクリック
  • 「Grib Start Date」「Grib End Date」は,計算する日付に変更する.
画面の右上の「Run Preprocessors to Generate Input Data Fields Required for WRF」に表示されている.
Step Run List View
1 geogrid Output Log
2 ungrib Output Log
3 metgrid Output Log
上記のうち,「geogrid」,「ungrib」,「metgrid」の順にクリックしてRunさせる.WRFDomainWizardの操作はこれで終了.

注)geogridで地形データをWRF計算用にinputする
    ungribで気象再解析データからWRFで計算するためのデータを取り出す
    metgridでそのデータをoutputする

と筆者は勝手に考えているが,本当かどうかは不明…とりあえず,意味が知らなくてもWRFの計算はできる!!でも,知る努力はしましょう(汗)  



Real,WRFの実行


Realとはmetgridを実行したときにディレクトリ「/usr/local/Wave_Forecast_Sys/wrf_data/domains2/japan_joestu(/domains2/japan_joetsuはケースバイケース)」で作成される

met_em.d01.YYYY-MM-DD_hh:mm:ss.nc
…

というファイルが計算時間分だけ出力される(2domianの場合は,met_em.d02.YYYY-MM-DD_hh:mm:ss.ncも出力される)が,それをいくつかのファイルにをにまとめるものである.Terminalに

cd /usr/local/Wave_Forecast_Sys/wrf_data/domains2/japan_joestu(Enterキー)
./real.exe(Enterキー)

と打ち込むとRealが実行される.その結果,ディレクトリ「/usr/local/Wave_Forecast_Sys/wrf_data/domains2/japan_joetsu」に

wrfbdy_d01
(wrfbdy_d02)
wrfinput_d01
(wrfinput_d02)

が作成される(ナッジングをする場合はそれようのファイルも出力).これらのファイルと

namelist.input

をディレクトリ「/usr/local/Wave_Forecast_Sys/WRF3.0/WRFV3/test/em_real」にコピーする.その後,Terminalに

cd /usr/local/Wave_Forecast_Sys/WRF3.0/WRFV3/test/em_real(Enterキー)
mpirun -np 12 wrf.exe(Enterキー)

と打ち込むとWRFが実行され,実際にWRFの計算が行われる.計算の進捗状況を確かめるには,別のTerminalで次の操作を行う.

cd /usr/local/Wave_Forecast_Sys/WRF3.0/WRFV3/test/em_real(Enterキー)
rm rsl.*(Enterキー)
tail -f rsl.error.0000(Enterキー)

WRFの計算は1日以上かかることが多いので,ここまでできたらとりあえずひと休み♪ 




WRFの計算が終了したら…


ディレクトリ「/usr/local/Wave_Forecast_Sys/WRF3.0/WRFV3/test/em_real」に作成される

wrfout_d01_YYYY_MM-DD_hh:mm:ss

というファイルが計算時間分だけ作成される.それらをすべてディレクトリ「/usr/local/Wave_Forecast_Sys/wrf-2.2/ARWpost」にコピーする.そのディレクトリにあるrename_YYMMM.shというファイルをコピーして,コピーしたファイルの名前を自分の計算期間の年月に修正する.そのファイルに右クリックし,Open with「Text Editor」をクリックすると,「rename_YYMMM.sh」の編集ができる.
rename_YYMMM.shには,次のようなことが書いてある.

mv wrfout_d01_YYYY_MM-DD_hh::mm:ss d01_YYYYMMDDhh
…
…
(mv wrfout_d01_YYYY_MM-DD_hh::mm:ss d02_YYYYMMDDhh)
(…)
(…)


出力ファイルに準じて,上記の日付を変更する.また,

cd /usr/local/Wave_Forecast_Sys/wrf-2.2/ARWpost
gedit rename_YYMMM.sh

とTerminalに入力することで,rename_YYMMM.shの編集ができる.その後,

(cd /usr/local/Wave_Forecast_Sys/wrf-2.2/ARWpost)
./rename_YYMMM.sh

とTerminalに入力すると,./rename_YYMMM.shが実行される.そうすると,wrfout_d01_YYYY_MM-DD_hh::mm:ssファイルがd01_YYYYMMDDhhに変身する(mvとはLinux上ではファイルの書き換えという意味である).その後,ディレクトリ「/usr/local/Wave_Forecast_Sys/wrf-2.2/ARWpost」にnamelist.ARWpostというファイルがあるので,その編集をする.編集の方法は以下のとおり.

start_date
end_date
→ 計算期間に合わせて変更する.

input_root_name
→ renameしたファイル「d01_YYYYMMDDhh」に書き換える.(1domain分だけ) 

その後,

./ARWpost.exe

とTerminalに入力すると,ARWpostが実行される.なお,ARWpostは1domainずつ行うので,合計2domainの場合2回行うことになる.その場合は,output_root_nameを領域ごとに変えておく.ARWpostが実行されることで,namelist.inputのoutput_root_nameで設定したctlファイルとdatファイルができる.ctlファイルは計算格子上の緯度,経度が書いてある.datファイルは,風と気圧データが書かれている.最後に,

cd /usr/local/Wave_Forecast_Sys/scripts
./extract_wind_swan_grad.sh

で完了!!scriptsの細かい設定などを端折ったが,今日はここまで(2010/02/05,Sakunaka)



タグ:

+ タグ編集
  • タグ:
最終更新:2010年02月06日 11:48
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。