3D(三位变分同化)模式的安装和运行(三)

本文详细介绍了WRF模型的三个主要配置文件:namelist.wps、namelist.input及namelist.obsproc的具体参数设置。从地理网格配置到气象物理过程方案选择,再到观测数据预处理,覆盖了从预处理到后处理的整个流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

三、各个步骤的namelist的配置:

1、WPS/namelist.wps配置:

&share
wrf_core = 'ARW',                                                                                                           #  输出格式定义:WRF还是NMM,'ARW‘表示是WRF。
max_dom = 3,                                                                                                                 #  域/嵌套数
start_date = '2012-03-01_00:00:00','2012-03-01_00:00:00','2012-03-01_00:00:00',     #  时间窗口,开始时间
end_date   = '2012-03-02_00:00:00','2012-03-02_00:00:00','2012-03-02_00:00:00',    #  时间窗口,结束时间

interval_seconds = 10800                                                                                               # 时间间隔(例如美国GFS的3小时间隔的,3*60*60秒)
io_form_geogrid = 2,                                                                                                       # WRF I/O API格式。。。。
/

&geogrid                                                                                                                         # 定义所有模型的大小和位置。
parent_id         =   1,   1,    2,
parent_grid_ratio =   1,   3,    3,
i_parent_start    =   1,  2,    2,
j_parent_start    =   1,  2,    2,

# 北京地区
e_we              =  10,  16,    19,                                                                                        # 开始、结束格点
e_sn              =  10,  16,    19,         
geog_data_res     = '10m','2m',  '30s',
dx = 40000,                                                                                                                    # GFS 0.5 deg 的网格4万米
dy = 40000,
map_proj = 'lambert',                                                                                                     # GFS的映射
ref_lat   =  39.92,                                                                                                           # 中心纬度
ref_lon   = 116.39,                                                                                                         #中心经度
truelat1  =  30.0, 
truelat2  =  60.0,
stand_lon = 116.39,                                                                                                       # 与ref_lon取值相同。

#
geog_data_path = '/software/geog'                                                                               # geog地理信息存放目录
/

&ungrib
out_format = 'WPS',                                                                                                      # ungrib输出格式
prefix = 'FILE',                                                                                                               # 输出文件的前缀
/

&metgrid                                                                                                                       #输出文件的前缀
fg_name = 'FILE'
io_form_metgrid = 2,                                                                                                    # 输出 netcdf格式文件。
/


2、WRFV3/test/em_real/namelist.input配置

&time_control
run_days                            = 0,
run_hours = 24,
run_minutes                         = 0,
run_seconds                         = 0,
start_year                          = 2012,2012,2012,
start_month                         = 03,03,03,
start_day                           = 01,01,01,
start_hour                          = 00,00,00,
start_minute                        = 00,00,00,
start_second                        = 00,00,00,
end_year                            = 2012,2012,2012,
end_month                           = 01,01,01,
end_day                             = 06,06,06,
end_hour                            = 00,00,00,
end_minute                          = 00,00,00,
end_second                          = 00,00,00,
interval_seconds                    = 10800
input_from_file                     = .true.,.true.,.true.,
history_interval                    = 180, 15, 15,  
frames_per_outfile                  = 1000, 1000, 1000,
restart                             = .false.,
restart_interval                    = 5000,
io_form_history                     = 2
io_form_restart                     = 2
io_form_input                       = 2
io_form_boundary                    = 2
debug_level                         = 0
/

&domains
time_step                           = 180,
time_step_fract_num                 = 0,
time_step_fract_den                 = 1,
max_dom                             = 3,
e_we                                =  10,  16,    19,
e_sn                                =  10,  16,    19,
e_vert                              = 28,    28,    28,      #分层层数,0层-27层。
p_top_requested                     = 5000,
num_metgrid_levels                  = 27,
num_metgrid_soil_levels             = 4,
dx                                  = 40000, 13333.3,  4444.4,    #降尺度 除以三。
dy                                  = 40000, 13333.3,  4444.4,
grid_id                             = 1,     2,     3,
parent_id                           = 0,     1,     2,
i_parent_start                      = 1,  2,    2,
j_parent_start                      = 1,  2,    2,
parent_grid_ratio                   = 1,     3,     3,
parent_time_step_ratio              = 1,     3,     3,
feedback                            = 1,
smooth_option                       = 0
/

&physics
mp_physics                          = 3,     3,     3, 
ra_lw_physics                       = 1,     1,     1, 
ra_sw_physics                       = 1,     1,     1,  
radt                                = 10,    10,    10,
sf_sfclay_physics                   = 1,     1,     1,   
sf_surface_physics                  = 2,     2,     2,
bl_pbl_physics                      = 1,     1,     1, 
bldt                                = 0,     0,     0, 
cu_physics                          = 1,     1,     1,  
cudt                                = 5,     5,     5,  
isfflx                              = 1,
ifsnow                              = 0,
icloud                              = 1,
surface_input_source                = 1,
num_soil_layers                     = 4,
sf_urban_physics                    = 0,     0,     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,      0,      0,
diff_6th_factor                     = 0.12,   0.12,   0.12,
base_temp                           = 290.
damp_opt                            = 0,
zdamp                               = 5000.,  5000.,  5000.,
dampcoef                            = 0.2,    0.2,    0.2, 
khdif                               = 0,      0,      0,   
kvdif                               = 0,      0,      0,    
non_hydrostatic                     = .true., .true., .true., 
moist_adv_opt                       = 1,      1,      1,  
scalar_adv_opt                      = 1,      1,      1, 

&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,
/

3、/WRFDA/var/obsproc/namelist.obsproc配置:

&record1
 obs_gts_filename = '/WRF/WRF_3D/GFS_WRF/little_r/obs.data',
 obs_err_filename = 'obserr.txt',
/

&record2
 time_window_min  = '2012-03-01_00:00:00',
 time_analysis    = '2012-03-01_01:30:00',
 time_window_max  = '2012-03-01_03:00:00',
/

&record3
 max_number_of_obs        = 400000,
 fatal_if_exceed_max_obs  = .TRUE.,
/

&record4
 qc_test_vert_consistency = .TRUE.,
 qc_test_convective_adj   = .TRUE.,
 qc_test_above_lid        = .TRUE.,
 remove_above_lid         = .TRUE.,
 domain_check_h           = .true.,
 Thining_SATOB            = false,
 Thining_SSMI             = false,
 Thining_QSCAT            = false,
/

&record5
 print_gts_read           = .TRUE.,
 print_gpspw_read         = .TRUE.,
 print_recoverp           = .TRUE.,
 print_duplicate_loc      = .TRUE.,
 print_duplicate_time     = .TRUE.,
 print_recoverh           = .TRUE.,
 print_qc_vert            = .TRUE.,
 print_qc_conv            = .TRUE.,
 print_qc_lid             = .TRUE.,
 print_uncomplete         = .TRUE.,
/

&record6
 ptop =  1000.0,
 base_pres       = 100000.0,
 base_temp       = 290.0,
 base_lapse      = 50.0,
 base_strat_temp = 215.0,
 base_tropo_pres = 20000.0
/

&record7
 IPROJ = 1,
 PHIC  = 39.92,
 XLONC = 116.39,
 TRUELAT1= 30.0,
 TRUELAT2= 60.0,
 MOAD_CEN_LAT = 39.92,
 STANDARD_LON = 116.39,
/

&record8
 IDD    =   1,
 MAXNES =   1,
 NESTIX =       100,
 NESTJX =       100,
 DIS    =   4.4444,
 NUMC   =   2,
 NESTI  =       6,
 NESTJ  =       6,
 /

&record9
 PREPBUFR_OUTPUT_FILENAME = 'prepbufr_output_filename',
 PREPBUFR_TABLE_FILENAME = 'prepbufr_table_filename',
 OUTPUT_OB_FORMAT = 2
 use_for          = '3DVAR',
 num_slots_past   = 1,
 num_slots_ahead  = 1,
 write_synop = .true.,
 write_ship  = .true.,
 write_metar = .true.,
 write_buoy  = .true.,
 write_pilot = .true.,
 write_sound = .true.,
 write_amdar = .true.,
 write_satem = .true.,
 write_satob = .true.,
 write_airep = .true.,
 write_gpspw = .true.,
 write_gpsztd= .true.,
 write_gpsref= .true.,
 write_gpseph= .true.,
 write_ssmt1 = .true.,
 write_ssmt2 = .true.,
 write_ssmi  = .true.,
 write_tovs  = .true.,
 write_qscat = .true.,
 write_profl = .true.,
 write_bogus = .true.,
 write_airs  = .true.,
 /

 

                                                                                                                                                                                               未完待续

 

 

 

 

 

### 同化3D-Var)的概念与实现方法 同化3D-Var)是一种用于优化数值天气预报模型初始条件的技术。其核心思想是通过最小化一个成本函数来获得最优的模式初值[^1]。成本函数通常由两部组成:一是模型预报数据与观测数据之间的差异,二是模型预报数据与先验背景场之间的差异。目标是找到一个初始条件,使得成本函数达到最小值。 在实际应用中,3D-Var方法擅长同化卫星雷达等非常规资料,并通过构造标量目标函数来实现析场的优化[^3]。以下是3D-Var方法的具体实现步骤: #### 1. 构造目标函数 目标函数 \( J(x) \) 可以表示为: \[ J(x) = J_b(x) + J_o(x) \] 其中: - \( J_b(x) \) 表示背景场误差项,衡量初始场与背景场之间的差异。 - \( J_o(x) \) 表示观测误差项,衡量初始场与观测数据之间的差异。 #### 2. 最小化目标函数 通过对目标函数 \( J(x) \) 进行极小化,可以得到最优的模式初值。这一过程通常使用梯度下降法或其他优化算法来实现[^1]。 #### 3. 数据处理与生成 在实际运行过程中,需要对观测数据进行预处理。例如,在/WRFDA/var/obsproc目录下运行 obsproc 程序,依据定义处理观测数据文件,生成如 `obs_gts_2012-03-01:00:00:00.3DVAR` 文件[^2]。 #### 4. 配置与运行 在配置阶段,需要设置网格参数、地理数据辨率以及其他相关参数。例如,对于北京地区的配置可能包括以下内容[^4]: ```python e_we = [10, 16, 19] # 开始、结束格点 e_sn = [10, 16, 19] geog_data_res = ['10m', '2m', '30s'] # 地理数据辨率 dx = 40000 # 网格间距(米) dy = 40000 map_proj = 'lambert' # 映射投影类型 ref_lat = 39.92 # 中心纬度 ref_lon = 116.39 # 中心经度 truelat1 = 30.0 # 标准纬线1 truelat2 = 60.0 # 标准纬线2 stand_lon = 116.39 # 标准经线 ``` 此外,还需要链接必要的表格文件可执行程序,例如 LANDUSE.TBL da_wrfvar.exe[^5]。 #### 5. 应用场景 3D-Var 方法广泛应用于气象领域,特别是在数值天气预报中。它能够有效结合背景场观测数据,生成更精确的初始场,从而提高预报精度。尽管 3D-Var 在时间维度上仅考虑单一时刻的数据,但它为更复杂的 4D-Var 方法奠定了基础[^3]。 ---
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值