翻譯自源網頁:https://www2.mmm.ucar.edu/wrf/users/docs/user_guide_v4/v4.1/users_guide_chap4.html
介紹
WRF模式可以進行兩大類模擬:具有理想初始化的模擬和利用真實數據的模擬。理想模擬通常根據現有的一維或二維觀測為WRF模型生成初始條件文件,並假設簡化的解析地形圖。真實的數據情況通常需要WPS包的預處理,WPS包為每個大氣和靜態場提供適合於模型所選網格分辨率的保真度。WRF模型可執行文件本身不會通過選擇一個初始化選項而改變(理想化的與實際的),但是WRF模型預處理器(real.exe和理想.exe程序)是根據用戶的選擇專門構建的。
real.exe和ideal.exe程序不能一起使用。real.exe和ideal.exe都是在WRF模型運行之前處理的程序。
理想情況與真實情況的划分如下:
- Ideal cases – initialization programs named “ideal.exe”
- 3d
- em_b_wave - baroclinic wave, 100 km
- em_fire – surface fire, 50 m
- em_heldsuarez – global case with polar filtering, 625 km
- em_les – large eddy simulation, 100 m
- em_quarter_ss - super cell, 2 km
- em_tropical_cyclone – hurricane, 15 km
- 2d
- em_grav2d_x – gravity current, 100 m
- em_hill2d_x – flow over a hill, 2 km
- em_seabreeze2d_x – water and land, 2 km, full physics
- em_squall2d_x – squall line, 250 m
- em_squall2d_y – transpose of above problem
- 1d
- em_scm_xy – single column model, 4 km, full physics
- Real data cases – initialization program named “real.exe”
- em_real – examples from 4 to 30 km, full physics
在./compile選擇預報類型。在選擇要研究的不同案例時,必須重新編譯代碼以選擇正確的模式初始條件。例如,在配置設置architecture(使用./configure命令)之后,如果用戶發出命令./compile em_real,那么初始化程序將使用module_initialize_real.F作為目標模塊(./WRF/dyn_em/module_initialize*.F文件中的一個)
對於理想的初始化,可以使用文件組合來構建可執行文件。對於em_fire, em_heldsuarez, em_scm_xy和em_tropical_cyclone情況,存在一個單獨的初始化文件。對於其余理想化的情況,使用文件./WRF/dyn_em/module_initialize_ideal.F。注意,這兩種初始化程序的WRF預測模型是相同的。在每個初始化模塊中,都會執行相同的活動:
- 計算位勢和氣柱壓力的基本態/參考廓線
- 計算位勢和氣柱壓的相對於基本態的擾動
- 初始化氣象變量:u,v,位溫,水汽混合比
- 定義模式坐標
- 將數據插值到模式的垂直坐標
- 初始化地圖投影和物理表面的靜態場;對於許多理想例子,這些都是簡化的初始化,例如將地圖因子設置為1,將地形高度設置為0
- 在退出處理這些預處理活動的例程之前,如果用戶使用濕位溫請求熱場,則計算該診斷變量
real.exe程序和ideal.exe程序共享大部分源代碼,以執行以下任務:
- 從namelist中讀取數據
- 為請求的網格分配空間,並在運行時指定模式變量
- 生成初始條件文件
真實的數據案例會做一些額外的處理:
- 從WRF預處理系統(WPS)讀取氣象和靜態輸入數據
- 准備模型中使用的土壤場(通常,垂直插值到指定陸面方案所需的層次)
- 檢查土壤類別、土地利用、陸面覆蓋、土壤溫度、海面溫度是否一致
- 處理多個輸入時段以生成側邊界條件,除非處理全球預測,否則需要這些條件
- 三維邊界數據(u,v,位溫,蒸汽混合比,總位勢)與總柱壓耦合
真實數據個例初始化
真實數據WRF例子是有輸入數據輸入到WRF前處理系統(WPS)的"real.exe"程序的。WPS中的這些數據最初是從以前運行的外部分析或預測模型生成的。原始數據很可能是GriB 格式的,並且很可能是通過首先從美國國家氣象局的一個ftp站點匿名提取原始GriB數據到WPS中的。
例如,假設一個單網格WRF預報,條件如下:
- 從2000年1月24日1200 UTC到1月25日1200 UTC
- 原始GriB數據以6小時為增量
WPS將生成以下粗網格文件(起始日期到結束日期,以6小時為增量):
- met_em.d01.2000-01-24_12:00:00.nc
- met_em.d01.2000-01-24_18:00:00.nc
- met_em.d01.2000-01-25_00:00:00.nc
- met_em.d01.2000-01-25_06:00:00.nc
- met_em.d01.2000-01-25_12:00:00.nc
慣例是使用“met_”來表示從WPS“metgrid.exe”程序輸出並輸入到“real.exe”程序中的數據。名稱的“d01”表示該數據引用的域,這個域允許嵌套。下一組字符是有效日期/時間(UTC),其中每個WPS輸出文件只有一個時間片。文件擴展名后綴“.nc”表示WPS的輸出格式,對於“real.exe”程序,該格式必須是netCDF中。對於區域預測,必須由“real.exe”處理多個時段,以便模型可以使用側邊界文件。WRF的全球選項只需要一個初始條件。
WPS包提供的數據可供“real.exe”程序在WRF系統中使用。
- 數據遵循WRF IO API。除非您正在開發特殊工具,否則請堅持使用netCDF選項在WPS包和“real.exe”之間進行通信。
- 數據已經被水平插值到每個變量的正確網格點錯開,風被正確旋轉到WRF模型地圖投影。
- WPS要求的三維氣象數據:氣壓、u、v、溫度、相對濕度、位勢高度
- 可在運行時向實際程序提供可選的三維水文氣象數據,但這些場不會在粗網格側邊界文件中使用。可以從metgrid輸出文件中輸入名為QR、QC、QS、QI、QG、QH、QNI(雨、雲、雪、冰、霰、冰雹和數值濃度的混合比)的場。
- 來自WPS的三維土壤數據:土壤溫度、土壤濕度、土壤液體(可選,取決於WRF模型中的物理選擇)
- 來自WPS的2D氣象數據:海平面氣壓、地面氣壓、地面u和v、地面溫度、地面相對濕度、初步地形高程
- 來自WPS的二維氣象可選數據:海面溫度、物理雪深、水當量雪深
- 物理表面的二維靜態數據:地形高程、土地利用類型、土壤質地類型、時間插值月數據、海陸界面、輸入模型地形高程
- 投影的二維靜態數據:地圖因子、科里奧利、投影旋轉、計算緯度
- 常量:網格大小、網格距離、日期
- WPS數據可以是等壓的,也可以是更廣義的垂直坐標,其中每一列的壓力都是單調的
- WPS的輸出可以包括一個垂直坐標上的氣象數據,以及另一個完全不同的垂直坐標上的三維數據(如排放量)
- 所有三維氣象數據(風、溫度、高度、濕度、壓力)必須具有相同數量的垂直層次,變量必須具有完全相同的級別。例如,溫度(例如)高於高度是不可接受的。另外,在第8層的高度的溫度是700 hPa的溫度,而在第8層高度的水平風分量是750 hPa的溫度是不可接受的。
真實數據測試用例:2000年1月24日/12日至25日/12
- 可以從WRF下載頁訪問測試數據集。在“WRF模型測試數據”列表下,選擇一月數據。這是一個74x6130公里的區域,中心位於美國東部。
- 確保已成功生成代碼(下載中提供了精細網格嵌套的初始數據,因此可以使用基本嵌套選項生成代碼),/WRF/main/real.exe和/WRF/main/WRF.exe必須同時存在。
- 在./WRF/test/em_real目錄中,將一月案例的名稱列表復制到默認名稱
- cp namelist.input.jan00 namelist.input
- 將WPS文件(下載中的“met_em*”文件)鏈接到./WRF/test/em_real目錄。
- 對於單處理器,要執行real程序,請鍵入real.exe(對於這個有五個時間段的小情況,這應該不到一分鍾)。
- 運行“real.exe”程序后,文件“wrfinput_d01”和“wrfbdy_d01”應在此目錄中;這些文件將直接由WRF模型使用。
- 接下來執行“wrf.exe”程序(鍵入wrf.exe),這只需要幾分鍾(在名稱列表文件中只請求12小時的預測)。
- 輸出文件wrfout_d01:2000-01-24_12:00:00應包含間隔3小時的12小時預測。
近期發布的注意事項
在WRFv4.0版本中,默認行為是包括濕位溫選項和混合垂直坐標。這兩個選項使向后兼容變得困難。
- 濕位勢溫度溫度:use_theta_m = 0 (off), 1 (on)
在v3.8的WRF系統中引入了初始化濕位溫能力。在v3.8到v3.9.1.1中,濕theta的所有處理都由模式處理。這導致在主解算器子程序內反復切換,因此變量網格%t_2的定義取決於子程序內的位置。代碼現在已經被正確地移植,以便在真實/理想的預處理器中包含潮濕的theta選項,並且grid%t_2變量的含義始終相同。在v4.0中,所有真實和理想的情況都支持濕位溫度選項。由於v4.0代碼假定輸入變量與濕θ的名稱列表設置一致,因此通常不會使用早期版本的wrfinput_d0x和wrfbdy_d01文件。
如果用戶有較舊的輸入數據(v4.0之前的版本),並且如果用戶關閉了潮濕θ選項,則可以使用wrfinput_d0x和wrfbdy_d01數據。
如果用戶打開“濕位溫度”選項,則只能使用新的wrfinput_d0x和wrfbdy_d01數據。
- 混合垂直坐標(HVC): hybrid_opt = 0 ((off), 2 (on)
自v3.9以來,WRF代碼支持混合垂直坐標,但僅適用於實際數據初始化和2d希爾情況下的流量。在v4.0中,所有真實和理想的情況都支持使用HVC。混合垂直坐標和濕θ選項也適用同樣的禁例。
如果用戶有不使用HVC的舊輸入數據(v4.0之前的版本),並且如果用戶關閉WRF模型中的“混合垂直坐標”選項,則可以使用WRF input_d0x和wrfbdy_d01數據。
如果用戶打開HVC選項,則只能使用新的wrfinput_d0x和wrfbdy_d01數據。
從v4.0開始,有一個新的namelist選項可用(force_use_old_data=.TRUE.)顯式允許將舊的wrfinput_d0x和wrfbdy_d01文件引入WRF模型。
設置模式垂直層次
用戶可以使用namelist的選項eta_levels顯式定義完整的eta層次。給出了28和35個層次的分布。層次數必須與分配的eta面數一致(e_vert)。用戶可以選擇只請求層次的數量(使用e_vert),而real程序將計算值。從V4.0中,有兩種方法可以選擇auto_levels_opt=1(舊)或2(新)。舊的計算假設一個已知的前幾層,然后生成等高間隔層直到到式頂部的。新方法具有表面和上層拉伸因子(dz_stretch_s和dz_stretch_u)用以根據log p來拉伸層次,厚度dzbot開始,直到最大厚度點(max_stretch_dz)。當厚度達到max_dz/2時,拉伸從dz_stretch_s過渡到dzstretch_u。
當dzbot=50 m 且 max_dz=1000 m時,層次數目最小值是dzstretch和p_top的函數
dzstretch\ptop |
50 |
30 |
20 |
10 |
1 |
1.1 |
44 |
47 |
50 |
54 |
67 |
1.2 |
32 |
35 |
37 |
41 |
54 |
1.3* |
28 |
31 |
33 |
37 |
50
|
*1.3 在低於約5km高度(13層)的層次的厚度達到1km,——一般不建議
1.2 在約7km高度(19層)的層次的厚度達到1km
1.1 在約13km高度(36層)的層次的厚度達到1km
dzstretch=1.1 在地面高度1km以下有12層,在10 km以下有34層
dzstretch=1.2 在地面高度1km以下有9層,在10km以下有22層
dzstretch=1.3 在地面高度1km以下有8層,在10 km以下有18層
使用dzstretch_s 和dzstretch_u時的層次數目的最小值
dzstretch\ptop |
50 |
30 |
20 |
10 |
1 |
1.2-1.02 |
53 |
58 |
62 |
67 |
81 |
1.2-1.04 |
46 |
49 |
51 |
55 |
68 |
1.2-1.06 |
41 |
44 |
47 |
50 |
63 |
1.3-1.1 |
33 |
36 |
39 |
43 |
56 |
為了避免在對流層上部出現最大厚度,在達到恆定的d(logp)之前,拉伸層次需要延伸到對流層頂以上。這可以通過使用足夠低的dzstretch_u值(但大於~1.02)來達到對流層頂,同時拉伸足夠快來補償遞減率。
可以使用另外兩個namelist來增加靈活性:dzbot是第一個在全層之間的模式層的厚度(默認值為50 m),max_dz是允許的最大層厚度,其默認值為1000 m。