WRF Tutorial Module
2024 臺大數值天氣預報課程
WRF區域模式實作
WRF Tutorial Modules Version 24.05
Releases 2024.05.12 01:19
完成WRF-4.5.2
前言及目標
實作目標
利用區域數值模式 ARW-WRF 完成一個時間長於48小時的模擬或預報(2024年為模擬),除了熟悉基本模式工具的使用及程序,同時建立 Linux/Unix 作業系統的殼層語言與環境設定概念,建立未來大氣科學研究或作業單位執行業務使用公用主機或高效能運算服務平台的基礎,並對於大型程式的平行化運算有初步概念。
課程準備
(助教)
國網與實驗室電腦之環境設定及函式庫安裝
WRF latest version pivot to 4.6.0, released at 2024.05.09
WPS latest version pivot to 4.5 released at 2023.12.22
測試分析資料下載:變數調整、資料集切換、網頁更新等等
目錄架構
課程根目錄-
重要目錄位置
提醒大家,養成好習慣,把變數值拿出來運用的時候除了前面加上 $ 以外,請在 $ 之後加上 { } 將變數本人包起來,有些字符會讓電腦自以為聰明地幫使用者「斷句」,變數跟字串是相連的情況,最好再使用 " " 包起來,範例:
家目錄位置
家目錄 ( ${HOME} )
先天具備環境變數 "${HOME}" ,多數時候也可以用 "~/" 來表示家目錄下的位置。用途上,家目錄通常是儲存環境設定的位置。像實驗室的小型主機或是小型叢集一般都禁止使用者在家目錄中存放大型檔案,就像稍微懂電腦的人都不愛把檔案往C槽塞(除非他只有C槽),系統碟使用率高會影響系統效能、SSD系統碟讀寫壽命以及開機會開很久。(所以我才把實作課程的帳號都開在系統外部的硬碟陣列上😆)
${HOME} 是通用的環境變數寫法,千萬不要亂改他,所以我用 echo 指令將本來就存在於使用者環境設定中的HOME變數值印出來。不像下面的 ${workROOT} 變數需要額外去指定路徑。
工作目錄位置
工作目錄 ( ${workROOT} ;註:此變數沒有加入環境)
工作目錄建議是拿來存放工作用的大型軟體、專案或是儲存大型檔案。
${work}不是通用的環境變數寫法,非通用、非正式,非軟體使用的自定義變數,建議以全小寫或混用小寫的方式設定(環境)變數,至少自己比較不會混淆。另外,會使用到自定義變數,通常不外乎就是路徑太長,怕拼字出錯,一串字串之後常用但難記憶,所以用變數的方式(可以少打很多字,也就減少出錯機會)。
非預設函式庫位置
# usr 資料夾的意思是 "Unix Software Resources" 的縮寫,而不是 "users" 使用者的意思, "usr.i" 是管理員自定義的資料夾位置,意思是存放經由 intel compiler 所編譯的套件。
本次實作課程使用的函式庫以 netcdf3 / netcdf classic 的方式編譯安裝,版本如下:
netcdf-c-4.8.0 # C Lib 和
netcdf-fortran-4.5.4 # Fortran Lib
##習慣上 NetCDF 一系列程式語言的函示庫通常都放在路徑一致的目錄下,官方亦不建議分開放置,但沒有說不行分開放。
zlib-1.3.1 # An compression tools for grib2
libpng-1.2.50 # An compression tools for grib2
jasper-1.900.1 # An compression tools for grib2
各式資料路徑
1 靜態地理資料
#請在目錄路徑下挑選合適的資料集
2 格點氣象資料
ECMWF ERA5 位於 /work3/NWP2024SP/data/era5 目錄下,資料包含:ERA5 hourly data on single levels from 1940 to present (5/7 重新下載)ERA5 hourly data on pressure levels from 1940 to present
3 PBS 排程系統腳本範本
4 已被打包壓縮的模式原始碼
裡面存放了很多tar.gz檔案,包含:
本課程須熟悉 Linux Shell
學習資源
Cheat Sheets
Commands (自救兼學習)
> $(cmd) --help
> man $(cmd)
貼心提醒
會下指令但對shell script撰寫常常有疑惑嗎?可以使用 shellcheck --help 看看有哪些選項能幫助到你吧。