WPS只是WRF运用实际数据模拟的准备过程,这就好比开车要先上车。讲完前处理过程之后 WRF模式之WPS的配置运行,就要开始模拟了。
模拟之前同样需要设置参数,这里的参数通过 namelist.input 文件控制,常规的 namelist.input 文件内容如下:
代码语言:javascript复制&time_control
run_days = 1,
run_hours = 0,
run_minutes = 0,
run_seconds = 0,
start_year = 2015, 2015,
start_month = 10, 10,
start_day = 04, 04,
start_hour = 00, 00,
start_minute = 00, 00,
start_second = 00, 00,
end_year = 2015, 2015,
end_month = 10, 10,
end_day = 05, 05,
end_hour = 00, 00,
end_minute = 00, 00,
end_second = 00, 00,
interval_seconds = 21600
input_from_file = .true.,.true.,
history_interval = 10, 5, # 表示多长时间输出一次结果
frames_per_outfile = 36, 36, # 表示多少个结果输出到一个文件
restart = .false.,
restart_interval = 360,
io_form_history = 2
io_form_restart = 2
io_form_input = 2
io_form_boundary = 2
debug_level = 10
/
&domains
time_step = 45,
time_step_fract_num = 0,
time_step_fract_den = 1,
max_dom = 2,
s_we = 1, 1,
e_we = 241, 424,
s_sn = 1, 1,
e_sn = 220, 421,
s_vert = 1, 1,
e_vert = 48, 48,
sfcp_to_sfcp = .false.
dx = 9000, 3000,
dy = 9000, 3000,
grid_id = 1, 2,
parent_id = 0, 1,
i_parent_start = 0, 50,
j_parent_start = 0, 40,
parent_grid_ratio = 1, 3,
parent_time_step_ratio = 1, 3,
feedback = 0,
smooth_option = 1,
num_metgrid_levels = 27,
num_metgrid_soil_levels = 4,
p_top_requested = 5000,
/
&physics
mp_physics = 17, 17,
gsfcgce_hail = 0,
gsfcgce_2ice = 0,
ra_lw_physics = 1, 1,
ra_sw_physics = 1, 1,
radt = 9, 9,
sf_sfclay_physics = 1, 1,
sf_surface_physics = 2, 2,
bl_pbl_physics = 1, 1,
bldt = 0, 0,
cu_physics = 1, 0,
cudt = 5, 0,
surface_input_source = 1,
num_soil_layers = 4,
maxiens = 1,
maxens = 3,
maxens2 = 3,
maxens3 = 16,
ensdim = 144,
/
&fdda
/
&dynamics
w_damping = 1,
diff_opt = 2,
km_opt = 4,
diff_6th_opt = 2,
diff_6th_factor = 0.12,
damp_opt = 0,
base_temp = 290.
zdamp = 5000., 5000.,
dampcoef = 0.2, 0.2,
khdif = 0, 0,
kvdif = 0, 0,
non_hydrostatic = .true., .true.,
time_step_sound = 6, 6,
h_mom_adv_order = 5, 5,
v_mom_adv_order = 5, 5,
h_sca_adv_order = 5, 5,
v_sca_adv_order = 5, 5,
moist_adv_opt = 3,
scalar_adv_opt = 3,
momentum_adv_opt = 3,
chem_adv_opt = 3,
tke_adv_opt = 3,
/
&bdy_control
spec_bdy_width = 5,
spec_zone = 1,
relax_zone = 4,
specified = .true.,
nested = .false., .true.,
/
&grib2
/
&namelist_quilt
nio_tasks_per_group = 0,
nio_groups = 1,
/
一般情况下,在模拟时需要关心的是 &time_control, &domains,&physics部分的参数设置。
&time_control 部分主要控制的是模拟的时间范围,debug 信息输出,输出格式等信息。
注意:
&domains 部分的参数设置要和所用初始场以及WPS namelist.wps的一些参数设置相同,否则会出错。
&physics 部分主要控制的是微物理方案,辐射方案以及积云对流参数化等的选择。
&dynamics 部分控制的是动力参数的设置。
&fdda 主要应用于资料同化参数的设置。
还有一些其它部分的参数设置,通常这些部分的参数不需要更改。
大概了解了一下namelist.input的参数设置之后,就可以运行了。再运行之前,先把WPS过程中运行 metgrid.exe 的时候生成了一些 met_em*文件拷贝或是链接到 WRFV3/run下,当然也可以链接到 WRFV3/test/em_real/ 下。(关于链接和拷贝的命令看这里 linux常用命令之进阶)
开始之前先进入 WRFV3/run 目录下:
- 链接 met_em* 文件 ln -sf ../../WPS/met_em.d0* .
注意: 命令后的 . 不能省,这里的 . 表示当前路径。
- 初始化气象要素 ./real.exe 运行成功后会生成一些文件,wrfbdy_d01,wrfinput_d*
- 模拟积分——开始模拟 ./wrf.exe 上述方式为串行运行,如果编译支持并行运算的话,可以执行以下命令: mpirun -np 4 ./wrf.exe 表示使用4个处理器进行运算。当然, real.exe 也支持并行运算。
然后就等模拟结束就行了。耗时长短与模拟个例时间长短,嵌套层数多少,模拟域范围大小等因素有关。当然,如果出错了的话就另说了==
模拟结束之后会生成一系列输出文件,比如:wrfout_d01_2015-10-04_00:00:00 等文件。可能没有后缀,但是默认的输出文件格式为 nc。模拟结束之后就是后处理过程了。
关于模式后处理,之前也提到过一些:
真・WRF模式后处理之Python版
WRF模式后处理
高维数据可视化
后处理过程其实就是处理数据的过程。使用什么工具或是编程语言都可以,没有限制。只要你能得到想要的结果就行了。