跳到主要內容

發表文章

Tipping Bucket Model (3): Parameters

延續上一講的雙域視角(巨孔隙/微孔隙),這一講的參數會分成兩組來看:定義「桶子形狀」的靜態參數(LL、DUL、SAT、bulk density),跟決定「桶子怎麼漏水」的動態參數(SWCON、𝐾𝑠𝑎𝑡)。 3.1 靜態參數:桶子的三條水位線 (1) LL(Lower Limit,凋萎點下限) 這是植物完全無法吸取的水分下限,操作型定義通常對應到 −1.5 MPa(15 bar)的基質勢。在微孔隙/巨孔隙框架下,LL 描述的完全是微孔隙域——這個含水量下,水被吸附在極細孔隙的表面,基質勢極負,只存在於微孔隙的毛細跟吸附作用力範圍內,巨孔隙在這個含水量早就空了。 DSSAT 通常用 LL(而不是永久凋萎點 wilting point)這個名稱,是因為它其實是「特定作物根系可達到的下限」,理論上依作物種類、根系穿透力略有差異,但實務上常直接借用土壤的物理凋萎點。 (2) DUL(Drained Upper Limit,排水上限) 這是整套 bucket 理論裡最關鍵的一條線——它同時也是上一講講的「巨孔隙排水」的觸發點:𝑆𝑊> 𝐷𝑈𝐿 SW>DUL 才會啟動𝐷𝑅𝐴𝐼𝑁𝐿 方程。 物理意義上,DUL 是「重力排水已經(近似)結束、只剩微孔隙毛細力撐著水」的那個含水量,通常對應基質勢在 −10 到 −33 kPa 之間(視質地而定,砂土接近 −10 kPa,黏土接近 −33 kPa)。用雙域語言講:DUL 就是巨孔隙域清空、微孔隙域仍飽滿的那條分界線。這也是為什麼 DUL 不是一個絕對的物理常數,而是跟排水時間、量測方式高度相關的操作型定義——現場量測通常是「飽和後排水1–2天」的含水量,這個「1–2天」本身就是承認巨孔隙排水需要一點時間,但排水速率遠快於微孔隙。 (3) SAT(Saturation,飽和含水量) 這是巨孔隙+微孔隙全部孔隙都灌滿水時的含水量,約等於總孔隙度 𝜙 。注意上一講 Emerman 論文提到的關鍵假設——「巨孔隙域跟微孔隙域必須有相同的飽和含水量才能讓雙域模型的擬合站得住腳」。這句話反過來提醒你:SAT 這個看似簡單的參數,其實隱含了「兩個域共享同一個總孔隙空間」的假設,在真實土壤中不一定成立(比如強烈結構化的黏土,巨孔隙可能只佔總孔隙度很小一部分)。 (4) Bulk...

Tipping Bucket Model (3): Parameters

延續上一講的雙域視角(巨孔隙/微孔隙),這一講的參數會分成兩組來看:定義「桶子形狀」的靜態參數(LL、DUL、SAT、bulk density),跟決定「桶子怎麼漏水」的動態參數(SWCON、𝐾𝑠𝑎𝑡)。 3.1 靜態參數:桶子的三條水位線 (1) LL(Lower Limit,凋萎點下限) 這是植物完全無法吸取的水分下限,操作型定義通常對應到 −1.5 MPa(15 bar)的基質勢。在微孔隙/巨孔隙框架下,LL 描述的完全是微孔隙域——這個含水量下,水被吸附在極細孔隙的表面,基質勢極負,只存在於微孔隙的毛細跟吸附作用力範圍內,巨孔隙在這個含水量早就空了。 DSSAT 通常用 LL(而不是永久凋萎點 wilting point)這個名稱,是因為它其實是「特定作物根系可達到的下限」,理論上依作物種類、根系穿透力略有差異,但實務上常直接借用土壤的物理凋萎點。 (2) DUL(Drained Upper Limit,排水上限) 這是整套 bucket 理論裡最關鍵的一條線——它同時也是上一講講的「巨孔隙排水」的觸發點:𝑆𝑊> 𝐷𝑈𝐿 SW>DUL 才會啟動𝐷𝑅𝐴𝐼𝑁𝐿 方程。 物理意義上,DUL 是「重力排水已經(近似)結束、只剩微孔隙毛細力撐著水」的那個含水量,通常對應基質勢在 −10 到 −33 kPa 之間(視質地而定,砂土接近 −10 kPa,黏土接近 −33 kPa)。用雙域語言講:DUL 就是巨孔隙域清空、微孔隙域仍飽滿的那條分界線。這也是為什麼 DUL 不是一個絕對的物理常數,而是跟排水時間、量測方式高度相關的操作型定義——現場量測通常是「飽和後排水1–2天」的含水量,這個「1–2天」本身就是承認巨孔隙排水需要一點時間,但排水速率遠快於微孔隙。 (3) SAT(Saturation,飽和含水量) 這是巨孔隙+微孔隙全部孔隙都灌滿水時的含水量,約等於總孔隙度 𝜙 。注意上一講 Emerman 論文提到的關鍵假設——「巨孔隙域跟微孔隙域必須有相同的飽和含水量才能讓雙域模型的擬合站得住腳」。這句話反過來提醒你:SAT 這個看似簡單的參數,其實隱含了「兩個域共享同一個總孔隙空間」的假設,在真實土壤中不一定成立(比如強烈結構化的黏土,巨孔隙可能只佔總孔隙度很小一部分)。 (4) Bulk...

Tipping Bucket Model (2): The Bucket

第二講:從 Richards Equation 到 Tipping Bucket —— DSSAT 為什麼不用解 Richards Equation? 今天我們要回答一個問題:既然土壤中的水是真正流動的,為什麼 DSSAT 可以只用一個 bucket 就模擬得很好? 2.1 真正的土壤水流長什麼樣? 想像下雨後,水不是一瞬間跑到 1 m 深。而是: Rain ↓↓↓↓↓↓ ███████ 表土 ↓↓ ███████ ↓ ███████ 每一滴水都受到很多力量控制,例如:重力 (gravity)、毛細作用 (capillary force)、土壤孔隙大小、土壤含水量、水力傳導度 (hydraulic conductivity),所以真正的水流,是連續變化的。 2.2 Richards Equation 1931 年,Lorenzo A. Richards提出了描述非飽和土壤水流的偏微分方程,現在稱為 Richards equation,它的概念是:某一深度的含水量變化 = 上下水流差,數學形式可寫成: $\frac{\partial \theta}{\partial t} = \frac{\partial}{\partial z} \left[ K(\theta) \left( \frac{\partial h}{\partial z} + 1 \right) \right]$ 先不要被公式嚇到,它只有四個重要角色: θ:土壤含水量 h:基質勢(matric potential) K:水力傳導度 z:深度 2.3 每一項到底代表什麼? 左邊: $\frac{\partial \theta}{\partial t}$ 意思就是:每一秒鐘,土壤含水量改變多少。 右邊第一項:K(θ) 代表水現在有多容易流 乾土 □□□□□□□□□ 水很難流。 濕土 ■■■■■■■■■ 水很好流。 因此 K 不是常數,而是K=f(θ),這也是整個問題困難的來源。 右邊第二項:$\frac{\partial h}{\partial z} $ 代表水勢梯度。水永遠往高水勢流向低水勢,而不是永遠向下。水甚至可以往上移動。 最後:+1 就是Gravity,代表:地球重力。 2.4 為什麼 Richar...

Tipping Bucket Model (1): Water Balance 架構

第一講:Water Balance 架構 1.1 DSSAT 水分模擬的核心思想 DSSAT(Decision Support System for Agrotechnology Transfer)不是用完整物理水流方程描述土壤水分,而是採用:soil-layer based, cascading reservoir model(分層串聯水庫模型),也就是常說的Tipping Bucket Model。 基本假設: 土壤剖面被切割成數個水平土層(soil layers)。 每層是一個獨立水庫。 水進入某層後:儲存在該層、超過容量後向下流動、被根吸收、被蒸發消耗 因此 DSSAT 的土壤水分不是求解水勢,而是追蹤: Water storage in each layer 1.2 DSSAT 水分模組的位置 DSSAT CSM(Cropping System Model)的架構: Weather | ↓ ┌───────────────────┐ │ Daily Weather Data│ └───────────────────┘ | ↓ ┌───────────────────┐ │ Soil Water Module │ └───────────────────┘ | ┌──────────────┼──────────────┐ ↓ ↓ ↓ Infiltration Evaporation Drainage | ↓ Soil Water Profile | ↓ Root Water Uptake | ↓ Crop Growth 也就是: 氣象 → 水分平衡 → 植物生長 1.3 DSSAT 每日水分平衡方程 每天土壤水分更新: $ S...

農業溫室氣體排放估算 - 水田甲烷(參數篇)

基本概念可參考上一篇文章 https://learncropmodel.blogspot.com/2025/05/blog-post.html 上一篇文章提及碳排係數在Tier1當中的拆解方式如下,我們來看看文獻裡的參數吧 $EF_i = EF_c \cdot SF_w \cdot SF_p \cdot SF_o$ EF i : i條件的每日排放係數 EF c : 無施用有機肥料下持續灌溉水田的排放係數 SF w : 不同水分管理區域的調整因子(表 5.12) SF p : 不同種植前水分管理調整因子(表 5.13) SF o : 有機質肥料型態或施用量之調整因子(Eq. 5.3, 表5.14) Baseline emission factor 也就是EF c 的預設係數來自於表5.1 (page 5.53) 表5.1 預設水田甲烷排放係數,假設水稻栽培時間小於180天、連續淹水、未施用有機質 World Regional Emission factor (kg CH 4 ha -1 d -1 ) Error range (kg CH 4 ha -1 d -1 ) Region Emission factor (kg CH 4 ha -1 d -1 ) Error range (kg CH 4 ha -1 d -1 ) 1.19 0.80 - 1.76 Africa 1.19 0.80 - 1.76 East Asia 1.32 0.89 - 1.96 Southeast Asia 1.22 0.83 - 1.81 South Asia 0.85 0.58 - 1.26 Europe 1.56 1.06 - 2.31 ...

GLYCIM模式介紹-植物參數

GLYCIM模式最早在1982由Dr. Acock等人建立,經過Dr. V.R. Reddy, Dr. Yakov Pachevsky, Dr. Dennis Timlin 等人測試與修訂,根據Dr. Reddy口述,Ken Boote最早也有參與GLYCIM模式開發,後來依據GLYCIM模式的基礎建立CROPGRO模式,因此CROPCRO與GLYCIM模式有一定的相似度。原本的GLYCIM模式使用Penman monteith進行水平衡模擬、Hyperbolic equation模擬光合作用,該模式相當令人驚豔之處在於能夠反映淹水情境下,根部活性降低、生長速率下降與根瘤死亡,可以從上述的現象探討淹水情境下,大豆的生理變化以及元素平衡,對於最終產量的影響。 Dr. Timlin在20年以前就開始協助GLYCIM模式土壤模型的建立,這幾年重新將GLYCIM模式與2DSOIL結合成為2DGLYCIM,並且使用FvCB取代Hyperbolic equation進行光合作用模擬,可想像是另一個昇級版的大豆模式。目前模式的原始碼仍然是公開的,只要有興趣的人都可以在Github上找到GLYCIM,Dr. Reddy的團隊一直歡迎大家取用模式,這個氣度永遠是我無法企及的。 GLYCIM模式所需的作物參數檔下表,可以看到參數檔當中有相當大的部分用來模擬作物的發育,模式的時步(time step)是小時,在這個模式既可以觀察到Dr. Acock盡量使用生長/發育速率的取代累積溫度,很大的程度影響到MAIZSIM模式。GLYCIM模式假設的基礎溫度是0℃,並無optimum temperature,值得觀察高溫環境下是否能使用beta function來取代現行的linear equation。 代碼 Definition 定義 備註 MG maturity group number (group 00 = 1) 成熟群 SEEDLB number of seeds per pound weight typical for cultivar 每磅籽粒數 Sink FILL Seed f...

CERES-RICE 品種參數

P1:基本營養生長期 (P1) 從出土到對光週期變化變得不敏感之前的這段時間。這段期間,水稻的生長主要受溫度影響。它的時間長度以「生長積溫」(GDD, 攝氏度-天) 表示,基溫為 9°C。 ! P1 Time period (expressed as growing degree days [GDD] in oC-d above a ! base temperature of 9oC) from seedling emergence during which the ! rice plant is not responsive to changes in photoperiod. This period ! is also referred to as the basic vegetative phase of the plant. ! Range: 150-800 oC-d. 數值範圍: 150-800 °C-d。 校準: 具有彈性,可以與實際觀察到的幼穗分化和開花日期進行比較來調整。 P2O 中文翻譯: 臨界光週期 (P2O) 說明: 這是指水稻發育達到最快速度所需的最長日照時間(以小時為單位)。如果日照時間超過這個臨界值,發育速度會減慢,導致生長延遲。 數值範圍: 11-13 小時,預設值為 12 小時。 校準: 除非有相關數據,否則不建議低於 11 小時。 P2R 中文翻譯: 光週期敏感係數 (P2R) 說明: 當日照時間每增加一小時超過臨界光週期 (P2O) 時,水稻發育(特別是幼穗分化)所延遲的時間,以生長積溫 (GDD) 表示。 數值範圍: 5-300 °C-d。 校準: 現代水稻品種的數值通常在較低範圍內。 P5 中文翻譯: 灌漿期 (P5) 說明: 這是從灌漿開始(開花後約 3 至 4 天)到生理成熟的這段時間,同樣以生長積溫 (GDD) 表示,基溫為 9°C。 數值範圍: 150-850 °C-d。 校準: 在正確校準了 P1、P2O 和 P2R 以符合開花日期後,再根據實際成熟日期來校準 P5。 G1 中文翻譯: 潛在小穗數係數 (G1) 說明: 這是根據開花期時主莖(不包括葉片和葉鞘,但包括穗部)的乾重,估算出的每克乾重所含的潛...

農業溫室氣體排放估算 - 水田甲烷

水田甲烷(CH 4 ) IPCC(2019) vol. 4,第5章, p5.49 方法 1 - Tier 1 $CH_{4,Rice} =\sum\limits_{i, j, k} (EF_{i,j,k} \cdot t_{i,j,k} \cdot A_{i,j,k} \cdot 10^{-6})$ CH 4,rice : 每年水稻栽培造成的甲烷排放量, Gg CH 4 yr -1 EF i, j, k : i, j, k情況下水稻栽培每日甲烷排放量, kg CH 4 ha -1 day -1 t i, j, k : i, j, k 情況水稻栽培時間, day A i, j, k : i, j, k 情況下水稻栽培面積, ha yr -1 i, j, and k: 代表不同的生態環境、水分管理、有機質肥料施用型態與施用量以及其他會影響甲烷排放量的變因 Tier 1 適用兩種情況的國家:(1) 水稻甲烷排放不是關鍵類別、(2) 沒有國家排放係數。必須將水稻的年收穫面積依照至少3種基本水分管理方式進行分類,包括灌溉、看天田、陸稻。另外建議儘可能納入影響甲烷排放的其他多種條件。將國家劃分成不同的小區,每個小區排放量是透過基準預設排放係數(適用於栽種前180天內無淹水,且持續淹灌且無添加有機質區域),與各種調整因子相乘來修正,如Eq.5.2 所示。每種水分管理方式及有機質添加情形的計算方式可參考Eq. 5.3 。 每日排放係數調整因子 (scaling factor) $EF_i = EF_c \cdot SF_w \cdot SF_p \cdot SF_o$ EF i : i條件的每日排放係數 EF c : 無施用有機肥料下持續灌溉水田的排放係數 SF w : 不同水分管理區域的調整因子(表 5.12) SF p : 不同種植前水分管理調整因子(表 5.13) SF o : 有機質肥料型態或施用量之調整因子(Eq. 5.3, 表5.14) 有機質肥料施用 $SF_o = (1+\sum\limits_{i}ROA_i \cdot CFOA_i)^{0.59}$ ROA i : 有機資材i的施用量,可以是乾稻稈種或其他有機資材的鮮種,tonne ha -1 CFOA i : 有機資材i的轉換係數,表5.14 方法2 -Tier 2 Tier 2 ...

農業溫室氣體排放估算 - 氧化亞氮

從簡單到複雜可以分成三種方法  Tier 1:最簡單的使用方法,公式最為簡單、使用預設參數值  Tier 2:類似於Tier 1,但是選擇國家或區域參數,通常會使用較高時間與空間解析度的活動資料,並進行更細緻的分類,以對應特定區域和專業化土地利用或畜牧類別的國家自訂係數。  Tier 3:較為高階的方法,例如使用基於過程的模型 (process-based model)或依據國家情況量身打造的清查測量系統 氧化亞氮 (N 2 O) IPCC(2019) vol. 4,第11章 Tier 1 - 主要方程式如下 N 2 O Direct -N = N 2 O-N N inputs + N 2 O-N OS + N 2 O-N PRP (Eq. 11.1) 其中 N 2 O Direct -N: 每年土壤直接的N 2 O-N排放量, kg N 2 O-N yr -1 N 2 O-N N inputs : 每年氮投入所導致的 N 2 O-N排放量,單位同上 N 2 O-N OS : 每年土壤有機質管理所影響的 N 2 O-N排放量,單位同上 N 2 O-N PRP : 每年因有放牧和糞尿施用所影響的 N 2 O-N排放量,單位同上 也就是氧化亞氮的排放量主要來自於氮投入和土壤有機值得釋出,但因為台灣的土壤有機質條件未達到IPCC(2019)規範。 其中從氮投入(N 2 O-N N inputs )的部分可以再進行拆解 N 2 O-N N inputs = (F SN + F ON + F CR + F SOM ) * EF 1 F SN : 每年化學肥料氮投入量, kg N/yr F ON : 每年有機質肥料氮投入量, kg N/yr F ON : 每年作物殘體氮(包含地上部與地下部)回到土壤的量, kg N/yr F SOM : 因為田間管理或擾動造成每年有機質礦化釋出的氮量, kg N/yr N 2 O-N OS 是指有機質土壤分解的氧化亞氮,IPCC (2019) 說明如下 如果土壤符合以下第1與第2項,或第1與第3項的條件,即可被歸類為有機土壤(FAO, 1998): 厚度達10公分或以上。若土層厚度少於20公分,則混合至20公分深度時,其有機碳含量須達12%以上。若土壤在任何...

模式結果分析

比較模擬結果的方法有很多種,我們可以分為兩種類類型,(1) 模擬值與量測值的相關性、(2) 模擬與量測值的誤差。 基於相關性的模擬結果評估方法 基於相關性的評估方法中,最常見的方法是進行模擬與實測值的簡單線性回歸,通常會將模擬值輸出為y軸,實測值輸出為x軸,當斜率接近1、截距接近0、R 2 接近1時,我們可以可以認定為良好的模式。 另一個方法就是計算  r - 相關係數(Correlation coefficient) $r=\tfrac{\sum\limits_{i=1}^n(o_i-\bar{o})(s_i-\bar{s})} {\sqrt{\sum\limits_{i=1}^n(o_i-\bar{o})^2}\sqrt{\sum\limits_{i=1}^n(s_i-\bar{s})^2}}$ 符號 $o_i$ 代表實測值、 $s_i$ 代表相對應的模擬值 基於誤差的評估方法 常見的包括RMSE, RRMSE, MAE, EF,以下分別進行說明, 所使用的符號 $o_i$ 代表實測值、 $s_i$ 代表相對應的模擬值 均方根差 (RMSE) 最常見的方法為均方根誤差(root mean squre error,RMSE),計算公式如下: $RMSE = \sqrt{ \tfrac{1}{n} \times \sum\limits_{i=1}^n (o_i - s_i)^2 }$ 另外也可以將RMSE除以實測值的平均值,成為相對均方根誤差(relative root mean square error, RRMSE),公式如下 $RRMSE = \tfrac{RMSE} {\bar{o_i} }$  通常均方根誤差都帶有單位,例如RMSE = 653.2 (kg/ha),代表模擬與實測的產量誤差有653.2,RRMSE就可以代表相對值例如0.23,可以提供我們了解RMSE 的的佔比。 無腦指標 - EF 推薦一個無腦的指標就是EF (Nash–Sutcliffe Efficiency),公式如下   $EF=1-\tfrac{ \sum\limits_{i=1}^n (o_i-s_i)^2 } { \sum\limits_{i=1}^n (o_i - \bar{o_i})...

肥料成分計算

很早以前肥料是先灰化再進行成份分析,因此對於那一些不揮發的元素,通常會使用氧化物的型態進行表示, 例如磷就使用磷酐 (P 2 O 5 )表示、鉀則氧化鉀 (K 2 O)表示、鈣使用氧化鈣(CaO)、鎂使用氧化鎂(MgO)表示。 肥料袋上的成分的前三個數字就是肥料三要素的成分占比(%) 肥料成分的標示可以相當複雜,但不論如何,前三個數字一定是三要素,也就是氮-磷酐-氧化鉀。以硝磷基黑旺特1號有機質複合肥料為例,我們可以看到官網的成分標示如下:氮-磷酐-氧化鉀(N-P 2 O 5 -K 2 O) 20-5.5-10-8 (有機質),它代表的意思就是氮有20%、磷酐有5.5%、氧化鉀有10%。 我們來算算每一包台肥1號(40公斤)投入多少三要素吧 氮 $40 \times \tfrac{20}{100} = 8$ (公斤) 磷酐 $40 \times \tfrac{5.5}{100} = 2.2$ (公斤) 氧化鉀 $40 \times \tfrac{8}{100} = 16$ (公斤) 因此每一包台肥1號投入8公斤氮、2.2公斤磷酐、16公斤氧化鉀。 再算一題吧 肥料品目為硝酸鈣 (Calcium nitrate) 銨態氮              1.26 % 硝酸態氮        13.5 % 總氮                   14.7 % CaO                     15.6 % 硝酸態氮(NO 3 -  - N) 濃度為13.5 %,代表100 g 肥料有 $13.5 \times \tfrac{14+16\times 3}{14} = 59.8 $ g 的 NO 3 -  CaO 的濃度為 15.6 %,代表100 g 肥料有 $15.6 \times \tfrac{40}{40+16} = 11.1$ g 的鈣 台灣肥料的特殊用字 - 硝磷基、亞磷基、特 ...

DNDC 跑批次模擬

DNDC模式提供批次化模擬的功能,在批次化模擬上會方便許多,操作方法如下。 選擇Tools → Run batch ,之後跳出對話視窗詢問是否想觀看模擬過程的變化,這邊選擇是或否都所謂,我們習慣選是,可以快速觀察模式的反應 接著就會跳出需要我們選擇批次檔的對話框,這邊建議勾選"Record daily results" 文字檔的內容如下,第1列是模擬檔案的數量,第2列以下是每個dnd檔的路徑,選取之後DNDC模式就會直接進行模擬,結果檔位於 Results → Record → Batch 3 D:\DNDC\Peanuts\Peanuts_N0_2023S.dnd D:\DNDC\Peanuts\Peanuts_N40_2023S.dnd D:\DNDC\Peanuts\Peanuts_N80_2023S.dnd 我發現,DNDC需要的文字編碼是UTF-8,第一次使用筆記本編輯文字檔後,DNDC程式無法辨識路徑位址,改用Notepad++選擇UTF-8進行編輯後,程式就可以順利讀取

STICS 使用筆記

工作區 (workspace) STICS模式模擬大部分所需要的資料都會在工作區當中,但是植物參數則是在plant的資料夾當中。STICS的資料使用xml編輯,只需要用notepad就可以打開閱讀。 建立新工作區 打開JavaStics.exe,選擇File → New workspace 建立新的工作區,就可以看到玉米的範例maize。 總共包含了11個檔案 氣象日資料檔的附檔名為年份 (.1996)氣象站的資料為_sta.xml,初始狀態檔為_ini.xml、田間管理為_tec.xml、如果有實測資料則可建立.obs檔、所有的土壤資料都在sols.xml、模擬的資料再usms.xml、輸出資料的設定檔在var.mod當中 模擬檔案都在usms.xml當中、土壤資料都在sol.xml當中,每個working space只會有一個usms.xml 和sol.xml。 建立氣象檔 STICS模式內部有建立氣象資料的工具,可以讀取CSV檔之後直接生成模式所需要的氣象檔。 選擇 Model input → Local parameter → Climate → Formatting a climate file,即可打開氣象資料產生的工具檔 經過測試,可輸入的檔案為CSV氣象資料,但是STICS只能選擇分號或者空白分隔,無法讀取逗號分隔的檔案,目前選擇的方法是先產出CSV檔,再進入將逗號取代為分號,或許可以使用python 或R語言直接匯出符合使用的csv檔。 輸入的檔案為逐日氣象資料,我們可以將所有年度的氣象檔放在同一個CSV底下,STICS模式會自動產出每一個年度一個檔案,因此建議可以在STICS模式的資料夾當中另外產出一個專門存放氣象CSV的資料夾,再透過小工具產出程式可以讀取的氣象檔。 我們在這裡使用的範例如下 再依序的將每一行對應的內容填入視窗中,氣象資料的第一列是表頭,因此我們就設定number of headlines 為1。 依序填完後就可以按generate,程式就會自己產出氣象檔 批次化模擬 JavaSticsCmd.exe --run iceberg JavaSticsCmd.exe --run iceberg L1-M572_17J L2-M780_17J 

模式參數調整

模式誤差來源 作物模式的誤差主要來源包含模式架構、輸入資料與模式參數。(1) 模式架構:模式的本質是真實世界的簡化,若要減少誤差,則需用實驗建立分析相對應機制的數學方程式,增加模式的的解釋變數(explanatory variables);(2) 輸入資料:來自於輸入資料採樣或量測的誤差,可以從提升取樣的代表性或量測準確性來減少這一個誤差;(3) 參數誤差:包含使用錯誤的量測資料進行校正所造成的誤差,以及校正的過程所造成的誤差,僅能從現有的資料進行校正,這個校正的過程是能夠提升模式準確度的最後一個方法。 調參(calibration,又稱率定) 在作物模式當中扮演著決定的角色,但是調參的過程並未有統一的方法,2018年在歐洲農業期刊所發表的「改進作物模式調參的過程 - 目前的狀態與未來的方向為何?( Towards improved calibration of crop models – Where are we now and where should we go?)」。由德國、澳洲與法國的研究人員共同發表,他們發送網路問卷給模式研究人員,包括AgMIP (Agricultural Model Intercomparison and Improvement Project)、MACSUR (Modeling European Agriculture with Climate Change for Food Security)、ISMC (International Soil Modeling Consortium),以及重要的作物模式APSIM、DSSAT、STICS、DAISY的人員,以了解作物模式研究人員進行調參的方式與習慣。總共收到318份問卷,但大部分的問卷僅有少部分題目回答,難以作為有效問卷,作者群定義4個核心題目,如果這4個核心題目皆有回答時就視為有效問卷,經過整理後共取得211份有效問卷進行分析。上述的4個核心問題為 Q16 針對多少個參數進行校正、Q20 調參的過程過使用幾個階段、Q23 調參的策略、Q34 調參過程最主要的困難點。 率定的參數數量 66%參加者調參的數量在10個參數以內,40%調參數量在5個參數以內,中位數是6。大多數的參與者依據模式開發者的建議,調整模式的遺傳或品種參數,但是有45%的參與者,依據自己的經驗進行調整,可能依據敏...

MAIZSIM 輸入檔

工作表名稱 說明 備註 1.Description ID這個欄位串起不同模擬項次資料,包含土壤、氣象、玉米品種、施肥、玉米條件初始值、有機質、時間、品種、氣象 2. Biology 土壤中有機物質成分的組成描述。 3. Climate 氣象檔案的檔頭,其參數是氣象站所量測到的氣象資料。 4. Fertilization 依照ID填入施肥日期以及施肥量。 5. GridRation 土壤資訊(種植深度)。 6. GridX 土壤分層深度。 7. Init 初始條件,包含種植地點、種植密度、種植以及採收時間以及是否有自動灌溉模式等資訊。 8. Irrig 紀錄灌溉時間。 9. Soil 依照土壤調查報告,填入個土壤系分層特性。 10. Solute 採預設值。 11. Time 起始種植以及採收時間,其記錄氣象資料為每天或是每時。 12. Variety 不同作物的特性設定。 13. Weather 紀錄天候資料為每日或是每小時。     欄位名稱 說明 填寫範例 ID 為每個模擬項次命名,串接起相對應的土壤、氣候、位置、有機質等檔案 Wufeng_99_BoMi_CK SoilFile 土壤資訊,為同一地區,檔案可以共用。 Wufen.soi Weather File name 氣候資訊,同一栽種期間共用檔案 Wufeng99...

STICS - Evaluation

 STICS 程式也可以和R語言結合,用來進行模擬結果的分析,在官方網站就可下載套件,下載後開啟R語言,指定本機端位置就可以進行安裝,我把套件下載於G槽底下STICS的檔案夾,安裝方式如下

DSSAT - 實驗檔

DSSAT的實驗記錄檔在相對應的資料夾當中,分為兩種檔案,結尾為A(例如FLSC8101.MZA)和結尾為T(例如FLSC8101.MZT),結尾為A的檔案收穫時期的資料,結尾為T為時序資料 以下為 FLSC8101.MZA 的範例 *EXP. DATA (A): FLSC8101MZ N X IRRIG., S.C. (CERES MAIZE BK) ! File last edited on day 08/29/2003 at 9:33:41 AM ! ! Grain yield (HWAM) expressed as dry weight @TRNO HWAM HWUM H#AM H#UM LAIX CWAM BWAH ADAT MDAT GN%M CNAM SNAM GNAM 1 9760 0.276 2968. 418. 4.2 23800 10954 156 210 1.62 248.0 90.0 158.0 2 -99 -99 -99 -99 -99 -99 -99 -99 -99 -99 -99 -99 -99 以下為 FLSC8101.MZT 的範例 *EXP. DATA (A): FLSC8101MZ N X IRRIG., S.C. (CERES MAIZE BK) ! File created by WDB on 10/17/03 using data from FLSC8101.MZA ! @TRNO DATE GWAD GWGD G#AD LAID CWAD GN%D CNAD SNAD GNAD 1 81157 -99 -99 -99 4.2 -99 -99 -99 -99 -99 1 81205 9760 276. 2968. -99 23800 1.62 248.0 90.0 158.0 2 81205 -99 -99 -99 -99 -99 -99 -99 -99 -99 GWAD Grain w...

CLASSIM程式

CLASSIM (Crop Land And Soil SIMulation) 程式是作物生長模式的圖形化使用者介面 (GUI),由美國農業部農業研究署(USDA/ARS)所開發調適性栽培研究室 (Adative cropping system laboratory, ACSL) 所開發,該程式目前包含玉米、大豆、棉花、馬鈴薯等作物之的長模式,未來預計會加入水稻,以2d soil 模式負責土壤-作物-大氣圈的運算,提供單一作物栽培模擬或輪作模擬,使用者可以選擇 玉米-大豆-休耕-馬鈴薯等方式,模擬作物生產系統當中的營養收支。 程式安裝之後,會在程式集處看到CLASSIM資料夾,在CLASSIM程式處按右鍵,選擇「以系統管理員開啟」。 畫面相當的簡潔,操作也很直觀,使用者只要依序填完 區域(Site), 土壤(Soil), 品種 (Cultivar), 管理(Management) 就可以進行模擬。

CURV function

DSSAT程式裡面常使用CURV function 計算,這個公式位於UTILS.for 當中,以下我們對curve function 進行研析。 這個函式使用CURV當作回傳值,包含不同的curve type (CTYPE) 以及轉折點,分別為XB, X1, X2, XM, X 預設的CURV 為1,因此如果選擇CTYPE是non時,就會得到1。 FUNCTION CURV(CTYPE,XB,X1,X2,XM,X) IMPLICIT NONE CHARACTER*3 CTYPE REAL CURV,XB,X1,X2,XM,X CURV = 1.0 IF (CTYPE .EQ. 'NON' .OR. CTYPE .EQ. 'non') RETURN LIN - 梯形公式 首先是線性反應方程式(LIN),它是個梯形公式,在X1, X2 之間是1,XB和X1之間以及X2和XM之間是線性變化。 我們選擇XB = 8, X1 = 25, X2 = 34, XM = 44,得到結果如下: C-------------------------------------------------------------------- IF(CTYPE .EQ. 'LIN' .OR. CTYPE .EQ. 'lin') THEN CURV = 0. IF(X .GT. XB .AND. X .LT. X1)CURV = (X-XB)/(X1-XB) IF(X .GE. X1 .AND. X .LE. X2)CURV = 1. IF(X .GT. X2 .AND. X .LT. XM)CURV = 1.0 - (X-X2)/(XM-X2) CURV = MAX(CURV,0.0) CURV = MIN(CURV,1.0) ENDIF C--------------------------------------------------------------------...

DSSAT - 模式輸出檔

DSSAT 的輸出檔格式包括ASCII text 和 CSV (逗號分隔取值) 兩種格式,預設的輸出檔格式為text,如果需要使用其他程式如 R 或 Excel 分析時,則稍嫌不方便。 如果要更改輸出檔,從 "Crop management data" 點取"Simulation option",再點選"output",在Format的地方選擇 "Comma separated values (CSV)"。 這邊有個bug:如果使用CERES-MAIZE進行模擬,可以順利的產出CSV檔,但是若CSM-IXIM則無法產出CSV檔。 轉檔小工具 如果CERES-MAIZE進行模擬,植物的模擬結果檔是 PlantGro.OUT,如果選擇 IXIM 進行模擬時,植物的模擬結果檔為 OPG附檔名,如TW482001.OPG。 https://github.com/Chuchung0604/DSSAT-tool/blob/main/readPlant.py 輸出檔代號 在C:\DSSAT47\DATA.CDE 這個檔案當中,可以查閱到輸出檔代號的註解,以下針對CERES-MAIZE的輸出檔代號進行整理 L#SD:每一莖上的葉數 GSTD:生育期,分別為0-5的整數 LAID:葉面積指數 LWAD:葉乾重,單位 kg/ha SWAD:莖乾重,單位 kg/ha GWAD:籽粒乾重(Grain weight),單位 kg/ha RWAD:根乾重,單位 kg/ha VWAD:地上部營養生長部位乾重 Vegetative weight (莖+葉),單位kg/ha CWAD:可能是地上部乾重 Tops weight,單位kg/ha G#AD:籽粒數,單位 1/每株,(例:735) GWGD:單粒重 Unit grain weight,單位 mg/grain HIAD:收穫指數 (籽粒重/地上部乾重) PWAD:穗乾重 pod weight,單位 kg/ha P#AD :單位面積的穗數,單位 穗數/m2 WSPD:光合作用水分逆境指數,無單位,0-1,0表示無逆境,1表示逆境最大 SWGD: expansion/partioning/development 的水分逆境指數,0-1 NSTD:氮逆境指數,0-1

DSSAT 作物參數 - 以玉米為例

上一篇提到DSSAT模型裡面包含品種 (Cultivar, CUL)、生態型 (Ecotype, ECO) 與物種 (Species, SPE) 等3個階層的作物參數,我們就可以體會到作物模式對於不同的外表徵狀變異性有其認知,我們可以觀察到大概是以下的架構 物種 (Species) | 生態型 (Ecotype) | 品種 (Cultivar) 越下層的特性就越容易改變。也就是說,不同的品種會有個別的品種參數,但可能會有不同的生態種參數,可能只有一個物種參數。 接下來我們要以玉米為例,從品種依序往上介紹,我們會談到 CERES-MAIZE 與 CSM-IXIM兩個玉米模型的參數。 品種參數 (Cultivar) 這邊我們先觀察MZCER047.CUL與MAIXM047.CUL兩個檔案,來了解品種參數的項目 CERES-MAIZE 的品種參數如下: @VAR# VRNAME......... EXPNO ECO# P1 P2 P5 G2 G3 PHINT ! 1 2 3 4 5 6 PC0001 2500-2600 GDD . IB0001 160.0 0.750 780.0 750.0 8.50 49.00 CSM-IXIM的品種參數如下: @VAR# VRNAME......... EXPNO ECO# P1 P2 P5 G2 G3 PHINT AX ALL ! 1 2 3 4 5 6 7 8 IB0035 McCurdy 84aa . IB0001 260.0 0.300 955.0 700.0 8.50 43.00 770. 930. 從上面可以看到,CSM-IXIM比CERES-MAIZE多了AX與ALL兩個最大葉的參數,其他的參數相同,以下我們就來一一介紹參數的定義 P1 :萌芽至幼齡期結束的累積溫度值 ,選用幼齡期結束是因...