3公里解析度之內插程式
背景
- 3公里解析度nc檔案之所以必須內插至1公里,理由可能包括(並不限):
- 使用較高解析度之內插值,對較小範圍的行政區平均而言,有其必要性。
- 套用LGHAP數據之後處理程式
程式說明
輸入輸出
tempTW_1x1.nc
:1X1公里解析度模板。變數只有1個,名稱為PM25_TOT
。- 命令行引數指定檔名:3X3公里解析度 netCDF 文件,原點必須和
tempTW_1x1.nc
相同,變數只有1個,名稱為PM25_TOT
。 - 輸出檔:
主要步驟
這個 Python 腳本(nc3_to_1.py)的主要目的是將3X3公里解析度 netCDF 文件的變數進行插值,以匹配另1X1公里解析度 netCDF 文件的網格和尺寸。
以下是腳本的主要步驟:
- 讀取模板文件(tempTW_1x1.nc):
- 讀取 tempTW_1x1.nc 文件,獲取網格和尺寸等信息。
- 讀取目標文件(由命令行引數指定):
- 讀取由命令行引數指定的目標 netCDF 文件,獲取其網格和尺寸等信息。
- 確認讀取的變數維度相符:
- 確保模板文件和目標文件中讀取的變數的維度相符。
- 建立網格坐標:
- 根據讀取的文件中的原點和單元大小建立網格坐標。
- 確定有效插值區域:
- 確定有效插值區域,避免超出網格邊界太遠。
- 進行線性插值:
- 使用
griddata
函數進行線性插值,將目標文件的數據插值到模板文件的網格上。
- 使用
- 填充新的 netCDF 文件:
- 將插值後的數據填充到新的 netCDF 文件中。
- 關閉文件:
- 關閉所有打開的 netCDF 文件。
總體而言,該腳本主要用於在不同分辨率的模型輸出之間進行數據插值,以便進行比較或進一步分析。插值過程使用線性插值方法。