第一次運行 WRF 數值天氣預報模式,但明顯失敗

我一直想嘗試利用家中的電腦去運算天氣的變化,網上有一以 public domain 發佈名叫 WRF 的數值預報模式可供下載使用,它由 NOAA 及 NCAR 等機構開發及使用,香港城市大學亦有用 WRF 來進行數值天氣預報。

我先按著它的指示下載其原始碼(WPS 及 WRF)並編譯,但一直失敗,似乎是因為 Fortran 編譯器(但已經試過 gfortran 和 intel fortran)有問題。

WRF 原始碼下載連結
WRF 教學
WRF 教學簡報
WRF 說明文件
WRF - Wikipedia

到後來,我在 WRF 討論區上,找到了一套由智利康塞普西翁大學地球物理學系 Andres Sepulveda 教授預先編譯好軟件的 live CD,名叫 liveWRF,雖然版本不是最新,但可以跳過編譯的步驟。下載並在 Virtualbox 內安裝便可運作。

WRF 討論區相關資料
liveWRF 的下載連結

安裝(可見其實是 Ubuntu Linux 10.04):
liveWRF
可見工具已編譯:
liveWRF4
工具:
liveWRF5

安裝之後,我按指示到 /atmos/WRF/ 裡找需用的軟件,按著 WRF 教學的指示,先以 WPS 設定預報區域,再到美國下載初始場,轉化成 WRF 可處理的格式。然後再作物理上、時間上等設定,再到 WRFV3 執行預報。

GFS 資料檔案

由於我只容許它在一個 CPU 內核內執行,所以速度比較慢。而 WRF 本身除了可以在單機執行,亦可在叢集上執行。方法包括 Symmetric Multi-Processing/Shared Memory Parallel (OpenMP) 、Distributed Memory Parallel (MPI) 和 OpenMP + MPI 混合。

等了廿分鐘,第一份初始場的一小時內每十分鐘的預報便輸出了,將以 Unidata IDV 開啟其 netCDF 檔案輸出,便知道失敗,第二十分鐘的資料已經完全錯了,但也不見得第十分鐘的資料是正確的,原因可能在於輸入資料不足,而且設定出錯,要再學習才行。

Unidata IDV 除了可以打開 netCDF,亦可用來查看及可視化 grib、point data 等氣象或地球科學資料,更可到好些 netCDF 或 OPeNDAP 網站選取及下載預測資料來分析,幾好用的。

Unidata IDV

完成的畫面:
liveWRF10
Unidata IDV 上看初始氣壓(2012-9-27 00:00 UTC):
wrf-idv1
第十分鐘(2012-9-27 00:10 UTC):
wrf-idv2
完全出錯的第二十分鐘(2012-9-27 00:20 UTC):
wrf-idv3
香港二十分鐘內的「升壓」:
wrf-idv4
香港二十分鐘內的「升溫」:
wrf-idv5

本文連結