WRF note (Weather Research and Forecasting) 京都大学理学研究科修士2年 暴風雨 宮本 佳明 Latest update : Feb. 19th 2009 •Moving Nest •WRF-Var 目次 3-7 : The model ‘WRF-ARW’ 8-10 : Software 11-18 : Pre process (11-13:wrfsi, 14-18:WPS) 19-31 : WRF (19-23:V2.1.2, 24-31:V2.2) 32-40 : Post process (32-37:WRF2GrADS, 38-40:ARWpost) 41-49 : Tools (MM5toWRF, TY-Bogus, JRA25/MANAL, Idealized simulation, Moving Nested run) 50-51 : WRF-Var 2 3 WRF • • • • • NCEP/NCARで開発・発展されているメソ数値モデル 非静力、完全圧縮系の方程式 広範囲をサポート(WRF-VAR, WRF-chem, GWRF, etc.) 用途によって二種の解法(NMM, ARW) 2008年4月にversion3.0がリリース WRF Software Framework Obs. Data, Analyses, Forecast Initialization WRF-Var Dynamics solvers ARW Solver NMM Solver … Post Processors, Verification Flow 1. 計算期間(period)、位置(domain)の決定 2. 気象データを用いて初期値・境界値の製作 3. 計算実行 4. 結果処理 gridgen_model.exe(wrfsi), geogrid.exe(wps) *hinterp.exe(wrfsi), metgrid.exe(wps) real.exe(wrf) wrf.exe(wrf) WRF2GrADS, WRF2Vis5d, ARWpost… 4 ARW(Advanced Research WRF) • 鉛直座標:Mass座標 ph pht phs pht p h :圧力の静水圧成分 p ht:上端の圧力 p hs:地表面の圧力 5 ARW(Advanced Research WRF) • フラックス形式のオイラー方程式 運動方程式 U p ' p m (Uu) (Vu ) (u ) d d ' t y x x d x V p' p m (Uv) (Vv ) (v) d d ' t y x x d x W m (Uw) (Vw ) (w) m 1 g t y x d 質量保存式 U V d ' m2 m 0 t x y 温位保存式 ' p ' d FU d x x x ' p' d FV d y y y p ' d (qv qc qr ) m 1 d ' g FW ジオポテンシャル式 ' d1 m 2 U x U y mU gW 0 t スカラー保存式 F Qm m2 Uqm Vqm m qm FQm m2 U V m t y t y x x 状態方程式 p p0 Rdm / p0d 6 ARW(Advanced Research WRF) • 3次のRunge Kutta t R ( t ) 3 t ** t R ( * ) 2 t t t tR( ** ) * t Begin Time Step Begin RK3 Loop:Step 1,2,3 (step1) , F , Rt* Begin Acoustic Step Loop:Step1,n RK3 step 1 n 1 t / 3 RK3 step 2 n ns / 2 t / ns RK3 step 3 n ns t / ns Advance variables End Acoustic Step Loop Advance scalars End RK3 Loop Compute non-RK3 physics End Time Step 7 NetCDF 1.http://www.unidata.ucar.edu/softwar e/netcdf/ から‘netcdf.tar’をダウン ロードし解凍する。 2.環境設定しパスを通す。 # su Password:***** # mv netcdf.tar.gz /usr/local # cd /usr/local # tar xvzf netcdf.tar.gz # cd netcdf-3.6.1/src/ # csh # setenv CC /usr/bin/gcc # setenv CPPFLAGS '-DNDEBUG -DpgiFortran' # setenv FC /usr/local/pgi/linux86-64/6.1/bin/pgf90 # setenv FFLAGS '-O -W' # setenv CFLAGS '-O' # setenv CXX /usr/bin/c++ # ./configure --prefix=/usr/local/netcdf-3.6.1 # make # make test # make install # vi .cshrc # NETCDF-3.6.1 set path = (/usr/local/netcdf-3.6.1/bin $path) setenv NETCDF /usr/local/netcdf-3.6.1 setenv MANPATH $NETCDF/man:$MANPATH # source .cshrc 8 NCARG(NCAR Graphics) 1.http://ngwww.ucar.edu/cgi/getsrc.cgi から‘ncarg-4.4.1.src.tar.gz’をダウ ンロードし解凍する。 ※ ./configure –v の後色々聞かれるが、 NetCDFディレクトリの入力だけに注意 して‘Enter’を押していれば大丈夫。 2.環境設定しパスを通す。 # su Password:***** # mv ncarg-4.4.1.src.tar.tar /usr/local # cd /usr/local # tar xvzf ncarg-4.4.1.src.tar.tar # cd ncarg-4.4.1 # csh # setenv NCARG /usr/local/ncarg-4.4.1 # setenv FC pgf90 # setenv CC pgcc # cd $NCARG # ./Configure –v # make Everything >& make-output & # tail –f make-output ’Cntl’ + ‘C’ # vi .cshrc # NCARG setenv NCARG_ROOT /usr/local/src/ncarg-4.4.1 set path = ( $NCARG_ROOT/bin $path) setenv MANPATH $NCARG_ROOT/man:$MANPATH # source .cshrc 9 NCL(NCAR Command Language) 10 1.http://www.earthsystemgrid.org/か ら‘ncl4.2.0.a033.Linux_x86_64.tar’を /ncargディレクトリにダウンロードし 解凍する。 # su Password:***** # mv ncl-4.2.0.a033.Linux_x86_64.tar /usr/local/ncarg-4.4.1 # cd /usr/local/ncarg-4.4.1 # tar xvzf ncl-4.2.0.a033.Linux_x86_64.tar 2.環境設定しパスを通す。 # vi .cshrc # NCL setenv NCL_COMMAND $NCARG_ROOT/bin/ncl # source .cshrc wrfsi(WRF Standard Initialization) Install 1.http://wrfsi.noaa.gov/ から ‘wrfsi_v2.1.2.tar’をダウンロー ド、解凍する。 2.インストールを行う。 3.データをダウンロードする。 4. ./wrf_toolsを実行する。 % mv wrfsi_v2.1.tar.gz /work1/WRF % tar -xvzf wrfsi_v2.1.2.tar.gz % cd wrfsi % install_wrfsi.pl % cd extdata/GEOG/ % ftp ftp-proxy.kuins.net Name (ftp-proxy.kuins.net:miyamoto): [email protected] Password: ‘irresponsible’ ftp> cd divisions/frd-laps/WRFSI/Geog_Data … % tar -xvzf albedo_ncep.tar.gz … % ./wrf_tools 11 wrfsi(WRF Standard Initialization) Domain selection 1.Domain ドメインを選択 2.Horizontal Grid マップファイルと領域、格子間隔、格子 数の設定 3.Vertical Grid 鉛直格子数と位置、上端気圧、最下層 の代表圧力、気温の設定 4.Localization Parms 地理データのありかの設定 5.Localize Domain ドメイン作成 6.Domain Graphics 作成されたドメインの表示 % ./wrf_tools 12 wrfsi(WRF Standard Initialization) initial data 1.Sources Vtableを用いて気象データファイルを 変換 用いるVtableと、時間間隔の設定 2.Script データ初期時刻の入力から期間と間 隔を設定 interpolate data 1.Controls Initial dataで変換した気象データのど れを使うか選択 2.Script データ初期時刻の入力から期間と間 隔を設定 % ./wrf_tools 13 Software for WPS (GRIB2) GRIB2形式のファイルを扱う際に 必要 Jasper: http://www.ece.uvic.ca/~mdada ms/jasper/ Libpng: http://www.libpng.org/pub/png/ libpng.html Zlib: http://www.zlib.net/ からそれぞれ、‘jasper1.900.0.zip’, ‘libpng1.2.14.tar.gz’, ‘zlib1.2.3.tar.tar’をダウンロードし解 凍する。 # su Password:***** # mv jasper-1.900.0.zip libpng-1.2.14.tar.gz zlib1.2.3.tar.tar /usr/local/ # cd /usr/local/ ---jasper--# unzip jasper-1.900.0.zip # cd jasper-1.900.0/ # ./configure # make # make install ---libpng--# tar xvzf libpng-1.2.14.tar.gz # cd libpng-1.2.14/ # ./configure # make # make install ---zlib--# tar xvzf zlib-1.2.3.tar.tar # cd zlib-1.2.3/ # ./configure # make # make install 14 WPS(WRF Pre-Processor) Install ※予めWRFV2.2をインストールし た上で、同じディレクトリにイ ンストールする。 1.http://www.mmm.ucar.edu/wrf/u sers/download/get_source2.htm lから‘WPSV2.2.TAR.gz’をダウ ンロードし解凍する。 2.コンパイルを行い実行形式ファイル を作る。 3.http://www.mmm.ucar.edu/wrf/u sers/download/get_source2.htm lからデータをダウンロードし解凍 する。 % mv WPSV2.2.TAR.gz /work1/WRF/ ※% ls WPSV2.2.TAR.gz WRFV2/ % tar -xvzf WPSV2.2.TAR.gz % cd WPS % ./configure % ./compile % ftp frp-proxy.kuins.net ***** Name (ftp-proxy.kuins.net:miyamoto): [email protected] Password: ‘irresponsible’ ftp> cd divisions/frd-laps/WRFSI/Geog_Data … % tar xvzf albedo_ncep.tar.gz … % tar xvzf geog.tar.gz 15 WPS(WRF Pre-Processor) geogrid.exe ―領域の設定 namelist.wpsを編集しgeogrid.exe を実行する。 ungrib.exe ―GRIB形式の気象データ形式を変 更 namelist.wpsを編集しungrib.exeを 実行する。 metgrib.exe ―ungribで作ったファイルを NetCDF形式の初期・境界値 ファイルに変換 namelist.wpsを編集しmetgrid.exe を実行する。 % vi namelist.wps ---geogrid--% geogrid.exe ---ungrib--% ln -s /work1/miyamoto/WRF/WPS/ungrib/Variable_ Tables/Vtable.GFS Vtable % link_grib.csh /work1/miyamoto/DATA/NCEP/0612/PG06082 7.* % ungrib.exe ---metgrid--% metgrid.exe 16 namelist.wps &share wrf_core = 'ARW', max_dom = 1, start_date = '2006-08-30_00:00:00','2006-09-14_00:00:00', end_date = '2006-08_31_00:00:00','2006-09-18_00:00:00', interval_seconds = 21600 io_form_geogrid = 2, / &geogrid parent_id = 1, 1, parent_grid_ratio = 1, 3, i_parent_start = 1, 31, j_parent_start = 1, 17, e_we = 301, 112, e_sn = 301, 97, geog_data_res = '5m','5m', dx = 5000, dy = 5000, map_proj = 'mercator', ref_lat = 17.50, ref_lon = 170.00, truelat1 = 17.5, truelat2 = 17.5, stand_lon = 170.0, geog_data_path = '/work1/miyamoto/WRF/WRFV2.2/geog' / ドメイン数 計算開始時間 計算終了時間 データ入力間隔(s) 親ドメイン 親ドメインとの格子間隔比 親ドメインにおける領域経度方向開始地点 親ドメインにおける領域緯度方向開始地点 親ドメインにおける領域経度方向終了地点 親ドメインにおける領域緯度方向終了地点 地形データの解像度 x方向格子間隔 y方向格子間隔 地図投影 中心緯度 中心経度 地形データのあるディレクトリ 17 namelist.wps &ungrib out_format = 'WPS', prefix = 'FILE', / &metgrid fg_name = 'FILE' io_form_metgrid = 2, / &mod_levs press_pa = 201300 , 200100 , 100000 , 95000 , 90000 , 85000 , 80000 , 75000 , 70000 , 65000 , 60000 , 55000 , 50000 , 45000 , 40000 , 35000 , 30000 , 25000 , 20000 , 15000 , 10000 , 5000 , 1000 / アウトプットファイル形式 アウトプットファイル名のヘッド ファイル名のヘッド 気圧面高度 18 WRFV2.1.2 1.http://www.mmm.ucar.edu/wrf/u sers/download/get_source2.htm lから‘WRFV2.1.2.TAR’をダウン ロードし解凍する。 2.行いたい数値実験のコンパイルを行 い実行形式ファイル(ndown.exe, real.exe, wrf.exe)を作る。 3.wrfsiで作った初期・境界値ファイル (wrf_real_input…)にリンクを貼る。 3.namelist.inputを編集する。 4.real.exeを実行し、mass座標の入力 ファイルを作る。 5.wrf.exeを実行する。 % mv WRFV2.1.2.TAR /work1/WRF/ % tar -xvzf WRFV2.1.2.TAR % cd WRFV2 % ./configure % ./compile <case (ex. em_real)> % cd test/em_real % ln –sf /work1/WRF/wrfsi/domains/<domain name>/siprd/wrf_input* . % vi namelist.input % real.exe % wrf.exe 19 namelist.input(wrfv2.1.2) &time_control run_days run_hours run_minutes run_seconds start_year start_month start_day start_hour start_minute start_second end_year end_month end_day end_hour end_minute end_second interval_seconds input_from_file fine_input_stream history_interval frames_per_outfile restart restart_interval io_form_history io_form_restart io_form_input io_form_boundary = 4, = 0, = 0, = 0, = 2006, 1999, 1999, = 08, 09, 09, = 27, 27, 22, = 00, 06, 12, = 00, 00, 00, = 00, 00, 00, = 2006, 1999, 1999, = 08, 09, 09, = 31, 27, 24, = 00, 06, 00, = 00, 00, 00, = 00, 00, 00, = 21600 = .true.,.true.,.false., = 0, 0, 0, = 10, 30, 30, = 6, 6, 1000, = .false., = 5000, =2 =2 =2 =2 計算日数 計算時間(日数を引いたもの) 計算分(日数、時間を引いたもの) 計算秒(日数、時間、分を引いたもの) 開始年(yyyy) 開始月(mm) 開始日(dd) 開始時(hh) 開始分(mm) 開始秒(ss) 終了年(yyyy) 終了月(mm) 終了日(dd) 終了時(hh) 終了分(mm) 終了秒(ss) 入力データの時間間隔(s) データ入力するか アウトプットファイルへの書き込み間隔(minute) 一つのアウトプットファイルに書き込む時間数 リスタートするか リスタートのインターバル 20 namelist.input(wrfv2.1.2) debug_level &write_input &inputout_interval &input_outname &inputout_begin_y &inputout_begin_mo &inputout_begin_d &inoutout_begin_h &inputout_begin_m &inputout_begin_s &inputout_end_y &inputout_end_mo &inputout_end_d &inputout_end_h &inputout_end_m &inputout_end_s / &domains time_step time_step_fract_num time_step_fract_den max_dom s_we e_we s_sn e_sn s_vert e_vert =0 =t = 60 = 'wrf_3dvar_input_d01_990923' =0 =0 =0 =3 =0 =0 =0 =0 =0 = 12 =0 =0 = 30, = 0, = 1, = 1, = 1, 1, 1, = 301, 301, 241, = 1, 1, 1, = 301, 301, 331, = 1, 1, 1, = 45, 50, 31, 時間ステップ ドメイン数 経度方向開始格子点 経度方向終了格子点 緯度方向開始格子点 緯度方向終了格子点 鉛直方向開始格子点 鉛直方向終了格子点 21 namelist.input(wrfv2.1.2) dx = 5000, 1000, 1000, dy = 5000, 1000, 1000, grid_id = 1, 2, 3, parent_id = 1, 1, 2, i_parent_start = 0, 100, 60, j_parent_start = 0, 120, 30, parent_grid_ratio = 1, 3, 9, parent_time_step_ratio = 1, 3, 9, feedback = 1, smooth_option =0 / &physics mp_physics = 2, 2, 2, ra_lw_physics = 1, 1, 1, ra_sw_physics = 1, 1, 1, radt = 30, 3, 5, sf_sfclay_physics = 1, 2, 2, sf_surface_physics = 1, 1, 1, bl_pbl_physics = 1, 2, 2, bldt = 0, 0, 0, cu_physics = 0, 0, 0, cudt = 0, 0, 0, isfflx = 1, ifsnow = 0, icloud = 1, surface_input_source = 1, num_soil_layers = 5, mp_zero_out = 0, x方向格子間隔 y方向格子間隔 ドメイン番号 親ドメイン 親ドメインにおける領域経度方向開始格子点 親ドメインにおける領域緯度方向開始格子点 親ドメインとの格子間隔比 親ドメインとの時間ステップ比 スムースをかけるか 物理パラメタリゼーション 微物理スキーム 長波放射スキーム 短波放射スキーム 放射スキームの時間間隔 接地層スキーム 土壌スキーム 境界層スキーム 境界層スキームの時間間隔 積雲パラメタリゼーション 積雲パラメタの時間間隔 地層の数 22 namelist.input(wrfv2.1.2) maxiens = 1, maxens = 3, maxens2 = 3, maxens3 = 16, ensdim = 144, / &dynamics w_damping = 0, diff_opt = 1, km_opt = 4, base_temp = 288. khdif = 0, 0, 0, kvdif = 0, 0, 0, non_hydrostatic = .true., .true., .true., / &bdy_control spec_bdy_width = 5, spec_zone = 1, relax_zone = 4, specified = .true., .false.,.false., nested = .false., .true.,.true., / &namelist_quilt nio_tasks_per_group = 0, nio_groups = 1, / 23 WRFV2.2 1.http://www.mmm.ucar.edu/wrf/u sers/download/get_source2.htm lから‘WRFV2.2.TAR.gz’をダウ ンロードし解凍する。 2.行いたい数値実験のコンパイルを行 い実行形式ファイル(ndown.exe, real.exe, wrf.exe)を作る。 3.wrfsi, wpsで作った初期・境界値ファ イル(wrf_real…, met_grid…)にリ ンクを貼る。 3.namelist.inputを編集する。 4.real.exeを実行し、mass座標の入力 ファイルを作る。 5.wrf.exeを実行する。 % mv WRFV2.2.TAR.gz /work1/WRF/ % tar -xvzf WRFV2.2.TAR.gz % cd WRFV2 % ./configure % ./compile <case (ex. em_real)> % cd test/em_real % ln –sf /work1/WRF/wrfsi/domains/<domain name>/siprd/wrf?input* . or % ln –sf /work1/WRF/WPS/met_grid* . % vi namelist.input % real.exe % wrf.exe 24 namelist.input(wrfv2.2) &time_control run_days run_hours run_minutes run_seconds start_year start_month start_day start_hour start_minute start_second end_year end_month end_day end_hour end_minute end_second interval_seconds input_from_file history_interval frames_per_outfile restart restart_interval io_form_history io_form_restart io_form_input io_form_boundary debug_level = 4, = 0, = 0, = 0, = 2006, 2000, 2000, = 08, 01, 01, = 27, 24, 24, = 00, 12, 12, = 00, 00, 00, = 00, 00, 00, = 2006, 2000, 2000, = 08, 01, 01, = 31, 25, 25, = 00, 12, 12, = 00, 00, 00, = 00, 00, 00, = 21600 = .true.,.false.,.false., = 60, 60, 60, = 6, 1000, 1000, = .false., = 5000, =2 =2 =2 =2 =0 計算日数 計算時間(日数を引いたもの) 計算分(日数、時間を引いたもの) 計算秒(日数、時間、分を引いたもの) 開始年(yyyy) 開始月(mm) 開始日(dd) 開始時(hh) 開始分(mm) 開始秒(ss) 終了年(yyyy) 終了月(mm) 終了日(dd) 終了時(hh) 終了分(mm) 終了秒(ss) 入力データの時間間隔(s) データ入力するか アウトプットファイルへの書き込み間隔(minute) 一つのアウトプットファイルに書き込む時間数 リスタートするか リスタートのインターバル 25 namelist.input(wrfv2.2) auxinput1_inname = "met_em.d<domain>.<date>" 入力ファイルをwrfsi、wpsの / どちらで作ったか auxinput1_inname = "wrf_real_input_em.d<domain>.<date>" &domains time_step = 30, 時間ステップ time_step_fract_num = 0, time_step_fract_den = 1, max_dom = 1, ドメイン数 s_we = 1, 1, 1, 経度方向開始格子点 e_we = 301, 112, 94, 経度方向終了格子点 s_sn = 1, 1, 1, 緯度方向開始格子点 e_sn = 301, 97, 91, 緯度方向終了格子点 s_vert = 1, 1, 1, 鉛直方向開始格子点 e_vert = 45, 28, 28, 鉛直方向終了格子点 num_metgrid_levels = 27 metgridでの鉛直格子数 dx = 5000, 10000, 3333, x方向格子間隔 dy = 5000, 10000, 3333, y方向格子間隔 grid_id = 1, 2, 3, ドメイン番号 parent_id = 0, 1, 2, 親ドメイン i_parent_start = 0, 31, 30, 親ドメインにおける領域経度方向開始格子点 j_parent_start = 0, 17, 30, 親ドメインにおける領域緯度方向開始格子点 parent_grid_ratio = 1, 3, 3, 親ドメインとの格子間隔比 parent_time_step_ratio = 1, 3, 3, 親ドメインとの時間ステップ比 feedback = 1, smooth_option =0 スムースをかけるか / p_top_requested = 5000 interp_type =1 26 namelist.input(wrfv2.2) lowest_lev_from_sfc = .false. lagrange_order =1 force_sfc_in_vinterp =1 zap_close_levels = 500 sfcp_to_sfcp = .false. adjust_heights = .false. eta_levels = 1.000, 0.999, 0.998, 0.997, 0.994, 0.992, 0.989, 0.985, 0.981, 0.976, 0.971, 0.965, 0.958, 0.952, 0.944, 0.936, 0.927, 0.918, 0.908, 0.898, 0.888, 0.877, 0.865, 0.853, 0.841, 0.828, 0.814, 0.800, 0.783, 0.763, 0.733, 0.694, 0.646, 0.591, 0.530, 0.464, 0.396, 0.327, 0.259, 0.195, 0.138, 0.090, 0.052, 0.022, 0.000 eta_levels = 1.000, 0.993, 0.983, 0.970, 0.954, 0.934, 0.909, 0.880, 0.845, 0.807, 0.765, 0.719, 0.672, 0.622, 0.571, 0.520, 0.468, 0.420, 0.376, 0.335, 0.298, 0.263, 0.231, 0.202, 0.175, 0.150, 0.127, 0.106, 0.088, 0.070, 0.055, 0.040, 0.026, 0.013, 0.000 &physics mp_physics = 3, 3, 3, ra_lw_physics = 1, 1, 1, ra_sw_physics = 1, 1, 1, radt = 5, 30, 30, sf_sfclay_physics = 2, 1, 1, 鉛直無次元気圧座標の格子点 物理パラメタリゼーション 微物理スキーム 長波放射スキーム 短波放射スキーム 放射スキームの時間間隔 接地層スキーム 27 namelist.input(wrfv2.2) sf_surface_physics = 1, 1, 1, bl_pbl_physics = 2, 1, 1, bldt = 0, 0, 0, cu_physics = 0, 1, 0, cudt = 0, 5, 5, isfflx = 1, ifsnow = 0, icloud = 1, surface_input_source = 1, num_soil_layers = 5, ucmcall = 0, mp_zero_out = 0, maxiens = 1, maxens = 3, maxens2 = 3, maxens3 = 16, ensdim = 144, / &fdda / &dynamics w_damping = 0, diff_opt = 1, km_opt = 4, diff_6th_opt = 0, diff_6th_factor = 0.12, damp_opt = 0, base_temp = 290. 土壌スキーム 境界層スキーム 境界層スキームの時間間隔 積雲パラメタリゼーション 積雲パラメタの時間間隔 地層の数 28 namelist.input(wrfv2.2) zdamp = 5000., 5000., 5000., dampcoef = 0.01, 0.01, 0.01 khdif = 0, 0, 0, kvdif = 0, 0, 0, non_hydrostatic = .true., .true., .true., pd_moist = .false., .false., .false., pd_scalar = .false., .false., .false., / &bdy_control spec_bdy_width = 5, spec_zone = 1, relax_zone = 4, specified = .true., .false.,.false., nested = .false., .true., .true., / &grib2 / &namelist_quilt nio_tasks_per_group = 0, nio_groups = 1, / 29 WRF one-way nested Run 1.粗いドメイン(A)での計算を行う。 2.wrfsi,wpsで、領域Aに1つ小さい領域 (B)をネストしたwrf_real…, met_grid…を作る。 3.初期値の…d02を…d01に上書きす る。 4.namelist.inputをB用に編集しreal.exe を実行する。 5.得られたwrfinput_d01を初期値の …d02に上書きする。 6.namelist.inputをA,B2ドメイン用に編 集する。 7.ndown.exeを実行する。 8….d02の初期値・境界値を…d01に上 書きする。 9.namelist.inputをB用に編集する。 10.wrf.exeを実行する。 % cd WRFV2/test/em_real % ln –sf /work1/WRF/wrfsi/domains/T<domain name>/siprd/wrf_input* . % mv wrf_real_input_em.d02… wrf_real_input_em.d01… % vi namelist.input !---for B % real.exe % mv wrfinput_d01 wrf_real_input_em.d02… % vi namelist.input !---for A,B % ndown.exe % mv wrfinput_d02 wrfinput_d01 % mv wrfbdy_d02 wrfbdy_d01 % vi namelist.input !---for B % wrf.exe 30 WRF two-way nested Run 1.wrfsi,wpsで、大、小2つの領域A,B用 のwrf_real…, met_grid…を作る。 2.WRFV2/test/em_realにリンクを貼る。 3.namelist.inputをA・B両用編集し real.exeを実行する。(max_dom=2 とする) 4.wrfinput_d01とwrfbdy_d01、 wrfinput_d02が作られる。 5.wrf.exeを実行する。 % cd WRFV2/test/em_real % ln –sf /work1/WRF/wrfsi/domains/T<domain name>/siprd/wrf_input* . % vi namelist.input % real.exe % ls … wrfbdy_d01 wrfinput_d01 wrfinput_d02… % wrf.exe 31 WRF2GrADS 1.http://www.mmm.ucar.edu/wrf/u sers/download/get_source.html から‘wrf2grads.tar.gz’をダウン ロードし解凍する。 2.control_fileで、アウトプットから読み 込む時間、データ等を指定する。 3.wrf_to_gradsを実行する。 % mv wrf2grads.tar.gz /work1/WRF % tar xvzf wrf2grads.tar.gz % cd WRF2GrADS % vi control_file % wrf_to_grads control_file <outfilename> 32 control_file(WRF2GrADS) 33 -1 ! number of times to put in GrADS file, negative means ignore the times 1 アウトプットファイルからの入力時間数と 2006-08-27_00:00:00 その時間 end_of_time_list -をつけるとファイル内全ての時間を書き ! 3D variable list for GrADS file 出す ! indent one space to skip U ! U Compoment of wind 3次元データ V ! V Component of wind UMET ! U Compoment of wind - rotated (diagnostic) VMET ! V Component of wind - rotated (diagnostic) W ! W Component of wind THETA ! Theta TK ! Temperature in K TC ! Temperature in C TKE ! TURBULENCE KINETIC ENERGY P ! Pressure (HPa) Z ! Height (m) QVAPOR ! Vapor QCLOUD ! Cloud Water QRAIN ! Rain Water QICE !QSNOW !QGRAUP !TKE_MYJ ! TKE FROM MELLOR-YAMADA-JANJIC PB ! BASE STATE PRESSURE AT HALF LEVEL TD ! Dewpoint Temperature (diagnostic) RH ! Relative Humidity (diagnostic) ! Soil variables TSLB ! SOIL TEMPERATURE control_file(WRF2GrADS) SMOIS ! SOIL MOISTURE ! below a list of fields from SI static and input files LANDUSEF !SOILCTOP !SOILCBOT !SPECHUMD !GREEN12M !ALBDO12M !end_of_3dvar_list 2次元データ ACSNOM ! ACCUMULATED MELTED SNOW ACSNOW ! ACCUMULATED SNOW AKHS ! SFC EXCH COEFF FOR HEAT AKMS ! SFC EXCH COEFF FOR MOMENTUM CANWAT ! CANOPY WATER GLW ! DOWNWARD LONG WAVE FLUX AT GROUND SURFACE GSW ! DOWNWARD SHORT WAVE FLUX AT GROUND SURFACE HFX ! UPWARD HEAT FLUX AT THE SURFACE HGT ! Terrain Height IVGTYP ! VEGETATION TYPE ISLTYP ! SOIL TYPE LU_INDEX ! LAND USE CATEGORY MAPFAC_M ! Map scale factor on mass grid MU ! Perturbation dry air mass in column MUB ! base state dry air mass in column MU0 ! initial dry mass in column Q2 ! QV at 2 M QFX ! UPWARD MOISTURE FLUX AT THE SURFACE RAINC ! ACCUMULATED TOTAL CUMULUS PRECIPITATION 34 control_file(WRF2GrADS) RAINCV RAINNC SFROFF slvl SMSTAV SNOW SNOWC SST T2 TH2 TMN TSK U10 U10M V10 V10M UST UDROFF VEGFRA WEASD XLAT XLONG XLAND ! TIME-STEP CUMULUS PRECIPITATION ! ACCUMULATED TOTAL GRID SCALE PRECIPITATION ! SURFACE RUNOFF ! sea level pressure ! MOISTURE VARIBILITY ! SNOW WATER EQUIVALENT ! FLAG INDICATING SNOW COVERAGE (1 FOR SNOW COVER) ! SEA SURFACE TEMPERATURE ! TEMP at 2 M ! POT TEMP at 2 M ! SOIL TEMPERATURE AT LOWER BOUNDARY ! SURFACE SKIN TEMPERATURE ! U at 10 M ! U at 10 M - rotated ! V at 10 M ! V at 10 M - rotated ! friction velocity ! UNDERGROUND RUNOFF ! VEGETATION FRACTION ! WATER EQUIVALENT OF ACCUMULATED SNOW ! LATITUDE, SOUTH IS NEGATIVE ! LONGITUDE, WEST IS NEGATIVE ! LAND MASK (1 FOR LAND, 2 FOR WATER) ! below a list of fields from SI static and input files ALBBCK !LANDMASK !PMSL !SLOPECAT !- 35 control_file(WRF2GrADS) SHDMAX !SHDMIN !SNOALB !SOILHGT !ST000010 !ST010040 !ST040100 !ST100200 !SM000010 !SM010040 !SM040100 !SM100200 !TOPOSTDV !TOPOSLPX !TOPOSLPY !XICE !end_of_2dvar_list 入力ファイル名 ! All list of files to read here ! Indent not to read ! Full path OK /DATA/wrfstatic_d02 /DATA/wrf_real_input_em.d02.2000-01-24_12:00:00 /work1/miyamoto/WRF/WRFV2.2/WRFV2/test/em_real/wrfout_d01_2006-08-27_00:00:00 /DATA/b_wave/wrfout_d01_0001-01-01_00:00:00 /DATA/grav2d_x/wrfout_d01_0001-01-01_00:00:00 /DATA/hill2d_x/wrfout_d01_0001-01-01_00:00:00 /DATA/quarter_ss/wrfout_d01_0001-01-01_00:00:00 /DATA/squall2d_x/wrfout_d01_0001-01-01_00:00:00 36 control_file(WRF2GrADS) /DATA/squall2d_y/wrfout_d01_0001-01-01_00:00:00 end_of_file_list ! Now we check to see what to do with the data real ! real (input/output) / ideal / static 1 ! 0=no map background in grads, 1=map background in grads 1 ! specify grads vertical grid ! 0=cartesian, ! -1=interp to z from lowest h ! 1 list levels (either height in km, or pressure in mb) 1000.0 950.0 900.0 850.0 800.0 750.0 700.0 650.0 600.0 550.0 500.0 450.0 400.0 350.0 300.0 250.0 200.0 150.0 100.0 データの種類(real、ideal、static) 地図投影するか(0→しない、1→する) 鉛直座標の指定 0→直交座標系 -1→hを内挿 1→下に示すレベル(気圧、高度)で出力 37 ARW Post(Post-Processing) 1.http://www.mmm.ucar.edu/wrf/users/ download/get_source.htmlから ‘ARWpost.tar’をダウンロードし 解凍する。 2. namelist.ARWpostを編集し、出力期 間や変数、高度などを設定する。 3.ARWpostを実行する。 % mv ARWpost.tar /work1/WRF % tar xvf ARWpost.tar % cd ARWpost % vi namelist.ARWpost % ./ARWpost 38 namelist.input(ARWpost) &datetime start_date = '2006-08-27_00:00:00', end_date = '2006-08-28_00:00:00', interval_seconds = 3600, / &io io_form_input = 2, input_root_name = '/home/miyamoto/0612WRFOUT/CPL/wrfout' output_root_name = '/fy2c/work1/miyamoto/wrf/ARWpost/0612' plot = 'file' fields = ',pressure,tk,tc,rh,umet,cape,dbz,frv,u10m,v10m' fields_file = 'myLIST' output_type = 'grads' mercator_defs = .true. / output_type = 'grads' & output_type = 'v5d' fields = 'height,theta,tc,tk,td,rh,umet,vmet,pressure,dbz,max_dbz,u 10m,v10m,slp,mcape,mcin,lcl,lfc,cape,cin' plot = 'all' plot = 'basic' ! see gridinfo_module.F90 for a list plot = 'file' ! give a filename in "field_file" plot = 'list' ! give a list of fields in "fields", seperated with commas 開始時刻 終了時刻 データの間隔 入力ファイル名 出力ファイル名 書き出す変数 出力ファイルの形式 39 namelist.input(ARWpost) plot = 'basic_file' plot = 'basic_list' plot = 'list_file' plot = 'all_file' plot = 'all_list' plot = 'basic_list_file' plot = 'all_list_file' &interp interp_method = 1, interp_levels = 1000.,950.,900.,850.,800.,750.,700.,650.,600.,550.,500.,45 0.,400.,350.,300.,250.,200.,150.,100., / interp_method = 0, ! 0 is model levels, -1 is nice height levels, 1 is user specified pressure/height interp_levels = 1000.,950.,900.,850.,800.,750.,700.,650.,600.,550.,500.,45 0.,400.,350.,300.,250.,200.,150.,100., interp_levels = 0.25, 0.50, 0.75, 1.00, 2.00, 3.00, 4.00, 5.00, 6.00, 7.00, 8.00, 9.00, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, interp_levels = 0.994, 1.00, 1.02, 1.03, 1.058, 1.099, 1.141, 1.183, 1.208, 1.233, 1.258, 1.283, 1.308, 1.333, 1.383, 1.433, 1.483, 1.533, 1.583, 1.633, 1.683, 1.733, 1.783, 1.833, 1.883, 1.933, 1.983, 2.0, 2.5, 3.00, 3.5, 4.00, 4.5, 5.0, 7.5, 10.0, 12.5, 15.0, 20.0, 内挿方法 内挿レベル 内挿レベル 0→モデルでのレベル 1→指定したレベル -1→ 40 MM5toWRF MM5でp座標系で書かれているファイ ル(REGRID)をWRFのhinterpファ イルに書き換えるプログラム 1.http://www.mmm.ucar.edu/wrf/u sers/utilities/util.htmから ‘mm5_p_convert.tar’をダウン ロードし解凍する。 2.makeを行い実行形式のファイルを作 成する。 3.namelist.inputを編集する。 4.mm5pconvertを実行する。 % mv mm5_p_convert.tar /work1/WRF % tar xvf mm5_p_convert.tar % cd mm5_p_convert % make % vi namelist.input % ./mm5pconvert 41 namelist.input(mm5_p_convert) &record0 input_file = '/fy2c/work1/miyamoto/mm5/REGRID/regridder/REGRII D_DOMAIN1' / ! pressure-level data file name &record1 start_year = 2006 ! The starting and start_month = 08 ! ending dates to start_day = 28 ! process start_hour = 00 end_year = 2006 end_month = 08 end_day = 27 end_hour = 00 interval = 0 ! time difference (s) less_than_24h = .FALSE. / ! if input is less than 24 h &record2 ptop = 7000 ! top pressure if need to be redefined wrth2o = .TRUE. ! T/F specific humidity wrt H2O psfc_method = 0 / ! do not change for now &record3 simulation_name= 'WRF MM5 Comparison Simulation' user_desc = 'WRF Users' / 入力ファイル名(REGRID形式) 開始年(yyyy) 開始月(mm) 開始日(dd) 開始時間(hh) 終了年(yyyy) 終了月(mm) 終了日(dd) 終了時刻(hh) データ時間間隔 入力ファイル時間が24h以下か否か 上端気圧面 42 Typhoon Bogus in WRF 1. wrfsiで計算領域を作る。 2.MM5/TERRAINで1.で作った領域と同 じものを作る。 3.Pregridで製作したデータを基にBogusを 入れてREGRIDファイルを作る。 4.mm5_p_convertを通し、wrfsiのhinterp ファイルを作りwrfsiに渡す。 5.wrf_real_input…を作り通常通りwrfを 実行する。 % cd WRF/wrfsi % ./wrf_tools % cd ../../MM5/TERRAIN % vi terrain.deck % ./terrain.deck % cd ../REGRID/pregrid % vi pregrid.csh % ./pregrid.csh % cd ../regridder % vi namelist.input % ./regridder % cd WRF/mm5_p_convert % vi namelist.input % ./mm5pconvert % cp hinterp* ../wrfsi/domains/<domain name>/siprd % cd ../wrfsi/bin % setenv INSTALLROOT /work1/miyamoto/WRF/wrfsi % setenv MOAD_DATAROOT /work1/miyamoto/WRF/wrfsi/domains/<domai n name> % ./vinterp.exe 43 WPS by using MANAL① 1. ungrib.exeを行う前にGRIBデータのリ ンクを張る際、MANALデータと NCEPデータのリンクを同時に貼る。 2.VtableをGFSに指定し、通常通り ungrib.exeを実行する。 % cd WRF/WPS % ln -s /work1/miyamoto/WRF/WPS/ungrib/Variable_ Tables/Vtable.GFS Vtable % link_grib.csh /work1/miyamoto/DATA/0612/* % ./ungrib.exe 44 WPS by using MANAL② 1. MANALデータにリンクを貼る。 2. VtableをGFSに指定し、通常通り ungrib.exeを実行する。 3. NCEPデータにリンクを貼る。 4. namelist.wpsを開き、ungrib.exeで生成 されるファイルのヘッド名(prefix=で 設定)を変更する(e.g. prefix=‘NCEP’)。 5. ungrib.exeを実行する。 6. 再びnamelist.wpsを開き、metgrid.exe で読み込まれるデータのヘッド名を、 先の2つにする。 (fg_name=‘FILE’,’NCEP’) 7. metgrib.exeを実行する。 % cd WRF/WPS % link_grib.csh /work1/miyamoto/DATA/MANAL/0612/* % ln -s /work1/miyamoto/WRF/WPS/ungrib/Variable_ Tables/Vtable.GFS Vtable % ./ungrib.exe % link_grib.csh /work1/miyamoto/DATA/NCEP/0612/* % vi namelist.wps % ./ungrib.exe % ls … FILE:… NCEP:… % vi namelist.wps % ./metgrid.exe 45 WPS by using MANAL③ 1. MANALデータにリンクを貼る。 2.VtableをGFSに指定し、通常通り ungrib.exeを実行する。 3. 自作のプログラム(FILE_EDIT.csh、 HP)を用いてMANALでは不十分で ある下層(地面)データを作り、入れ 込む。 % cd WRF/WPS % link_grib.csh /work1/miyamoto/DATA/MSM/0612/* % ln -s /work1/miyamoto/WRF/WPS/ungrib/Variable_ Tables/Vtable.GFS Vtable % ./ungrib.exe % vi FILE_EDIT.csh % csh FILE_EDIT.csh % ./metgrid.exe 46 47 JRA-25 Run by V2.1.2, V2.2 1. wrfsiでのVtable(wrfsi/extdata/static)を % cd WRF/wrfsi/extdata/static 編集し、相対湿度(relative humidity)の % cp Vtable.GFS Vtable.JRA % vi Vtable.JRA 上に比湿(specific humidity)、表面温 … 度(skin temperature)の上に海面温度 51 | 100 | * | | SPECHUMD | kg kg{-1}| (sea surface temperature)の行を加える。 52 | 100 | * | | RH |% | 2.気象データのあるディレクトリにanl_p, anl_chipsiのファイルを置いておく。 3.wrf_toolsを実行し、initial dataで、編集し たVtableを用いて気象データファイル を作成する。 4.通常通り実行する。 ※WPSでは、anl_p内の上層の比湿不足から実行不 可能 →wrfsiで初期値・境界値ファイルを作りV2.2で実行す る。 … 51 | 105 | 2 | 52 | 105 | 2 | … 11 | 1 | 0 | 11 | 1 | 0 | …. % cd ../../ % ./wrf_tools | SPECHUMD | kg kg{-1}| | RH |% | | SST |K | SKINTEMP | K | | 48 Idealized simulation by em_real 理想的な場に初期擾乱としてMM5用台 % cd MM5/TERRAIN % vi terrain.deck 風ボーガスを埋め込み、ARWの % ./terrain.deck em_realで計算を行う。 % csh TER_EDIT % cd ../REGRID/pregrid.csh 1. MM5の、地形・定常データを作る % vi pregrid.csh TERRAINで作られたファイル (TERRAIN_DOMAIN0*)を編集する。 % ./pregrid.csh % csh FILE_EDIT.csh *** 2. MM5 pregrid.cshで得られる気象データ % cd ../regridder ファイルを編集する。 % vi namelist.input 3. MM5 regridderで台風ボーガスを埋め % csh REGRID_EDIT.csh % cd ../../../WRF/WPS 込んだREGRID_DOMAIN0*を作る。 % vi namelist.wps 4. REGRID_DOMAIN0*から風速・高度・ % ./geogrid.exe % csh GEO_ID.csh 気温・湿度の値を取り出す。 % ./metgrid.exe 5. WRF geogridで得られるgeo_em.d0*を % csh MET_ID.csh 編集する。 % cd ../WRFV2/test/em_real 6. WRF metgridで得られるmet_em.**に、 % ln –sf ../../../WPS/met_em.d0* REGRID_DOMAIN0*から得た変数を % ./real.exe % ./wrf_tools 書き込む。 7. 通常通り計算を行う。 *** *** *** *** WRF vortex-following nested run • Select the ‘vortex following’ option when you conduct the configure process. • compile em_real as usual. • Prepare the input files except for the moving domain (only the parent domains). • Edit the namelist file in WRF directory. Note that set “input_from_file”, in the column for moving domain as “false”. > ./configure > “Select the suitable one for your PC” > “Select the number (maybe 3) for Vortexfollowing nesting” > ./compile em_real >& comp.log01 & > cd ../WPS > vi namelist.wps > ./geogrid.exe > ./metgrid.exe > vi namelist.input > ./real.exe > ./wrf.exe 49 WRF-Var (Skamarock et al., 2005; Barker et al., 2003) Goal: minimize the cost function J( x ) Jb Jo 1 1 ( x - x b ) T B -1 ( x - x b ) ( y - y o ) T (E F)-1 ( y - y o ) 2 2 Initial guess (WPS,real) Observation (obsproc) xb Background error (gen_be) yo B WRF-Var xa Boundary condition (WRF_BC) NWC method (Parrish and Derber, 1992) B ( x b - x t )(x b - x t ) T [ x f (t 24)- x f (t 12)][x f (t 24)- x f (t 12)]T WRF WRF-Var 1/2 • Install NetCDF, BLAS, LAPACK and BUFR and set the environment variables as… • Decompress the WRFDA file and conduct configure and complie processes. • Change directory to OBSPROC to make a file of the observation data because to run WRF-Var three files: initial guess, obs. data and background error covariance are needed. > setenv BLAS /usr/local/lib > setenv LAPACK /usr/local/lib > setenv BUFR /usr/local/… > tar xvzf WRFDA_v3_0_1_1.tar.gz > cd WRFDA > ./configure wrfda > ./compile all_wrfvar >& comp.log & > ls -l ./var/da/*.exe > cd ./WRFDA/var/obsproc > Make > cp namelist.3dvar_obs.wrfvar-tut namelist.3dvar_obs > ./3dvar_obs.exe >&! 3dvar_obs.out 51 WRF-Var 2/2 • Link the input files and the executable file produced by the compiling process. • Run WRF-Var. Then, “wrfvar_output” will be generated. • Update the boundary condition to make it consistent with the initial condition (i.e., wrfvar_output). Link “wrfbdy” file and the executable file, and edit the parameter. After that, execute it. 52 > cd WRFDA/var/test > ln -sf ../../run/LANDUSE.TBL ./LANDUSE.TBL > ln -sf ------/wrfinput_d01 ./fg > ln sf ../../var/obsproc/obs_gts_yyyy_mm_dd.… ./o b.ascii > ln -sf -------/be.dat ./be.dat > ln -sf ../../var/da/da_wrfvar.exe ./da_wrfvar.exe > vi namelist.input > ./da_wrfvar.exe >&! wrfda.log01 & > cp -p ------/wrfbdy_d01 ./wrfbdy_d01 > vi parame.in > ln -sf ../da/da_update_bc.exe ./da_update_bc.exe > ./da_update_bc.exe
© Copyright 2024 ExpyDoc