羅童元,羅玉峰,呂辛未,崔遠來,楊士紅
(1.河海大學水文水資源與水利工程科學國家重點實驗室,南京 210098;2.武漢大學水資源與水電工程科學國家重點實驗室,武漢 430072;3.武漢達潤達科技發展有限公司,武漢 430072)
實時的灌溉調度不僅可以改善灌溉用水的管理,而且能使灌溉系統獲得更高的性能[1]。參考作物騰發量(ET0)是灌溉用水管理的重要依據,對其進行預報是灌溉預報和灌溉決策的基礎[2,3]。ET0預報最早多基于歷史時間序列分析,如Tracy等和Marino等各自提出一種時間序列分析模型[4,5];Mao和茆智等分析多個站點逐日ET0序列在年內的變化過程,并考慮未來天氣類型,得到一種ET0預報逐日均值修正模型[6,7]。隨著天氣預報的精度逐步提高,近年來根據天氣預報進行ET0預報的研究越來越多。美國有學者利用國家氣象網站提供的天氣預報進行ET0預報[8,9],趙琪等(2014年)采用Penman-Monteith公式和中國天氣網的天氣預報信息進行短期逐日ET0預報[10]。由于天氣預報中溫度預報相對準確,故更多的研究基于氣溫預報進行ET0預報[11,12]。目前關于ET0預報的軟件和系統較少,主要有基于人工神經網絡(ANN)的FORETO和美國國家氣象服務中心天氣預報辦公局實時發布的實驗性的ET0預報[1,13]等,但前者實用性有待檢驗,而且也未見其網絡版的發布,而后者只提供個別地區(Albuquerque, NM)的預報。為提高ET0預報數據的可獲取性和及時性,較好地為實時灌溉決策提供數據支持,開發較為完善的短期逐日實時ET0預報網絡發布系統非常必要。江蘇省參考騰發量ET0預報系統采用率定的HS公式和基于公共天氣預報(中國天氣網)來預報未來15 d的ET0值,可用于江蘇省灌區管理單位進行實時灌溉決策,為提高灌區的灌溉用水管理提供數據支持。
江蘇省位于中國大陸東部沿海地區中部,介于東經116°18′~121°57′,北緯30°45′~35°20′之間。屬于溫帶向亞熱帶的過渡性氣候,以淮河、蘇北灌溉總渠一線為界,以北屬暖溫帶濕潤、半濕潤季風氣候,以南屬亞熱帶濕潤季風氣候。地形以平原為主,平原面積達7萬多平方公里,占江蘇面積的70%以上,比例居中國各省首位,且氣候溫和,雨量適中,四季氣候分明,農業生產條件相對優越。轄區內有多個大型灌區,在華東諸省中較有代表性,因此開發江蘇省ET0預報系統有助于幫助提高江蘇省灌溉區的灌溉管理水平,加速江蘇省農業的現代化、信息化建設。
Allen等(1998年)提出了一種標準的用氣象資料計算ET0的方法(FAO-56 Penman-Monteith 方法),該方法被聯合國糧農組織(FAO)推薦為計算參照騰發速率ET0的標準化方法[14]。雖然該方法對不同地區不同氣候條件具有較強的適應性,但是它需要很多的氣象因子(平均風速和相對濕度等),對一些氣象資料缺乏的地區不能適用。然而,對這些氣象資料缺乏的地區采用Hargeaves-Samani公式卻很適用,因為這個公式只需要每天的最大、最小氣溫來計算ET0,而最大、最小氣溫基本上在每個氣象站都有記錄,而且,各個站點未來15 d的最大、最小氣溫也可以從公共天氣預報網站獲取,故本系統采用率定的Hargeaves-Samani公式來計算預報ET0值。
Hargreaves-Samani公式以溫度和太陽輻射為基礎建立,為最常用的以氣溫數據為輸入參數的ET0計算公式,在氣象資料匱乏地區具有普遍適用性,其基本公式為[15]:
(1)
式中:ET0,HS為HS法計算的參考作物蒸發蒸騰量,mm/d;Ra為天頂輻射,MJ/(m2·d);Tmax、Tmin分別為日最高、日最低氣溫,℃;λ為蒸發潛熱,取為2.45 MJ/kg;C、E、T為公式的3個參數,其建議值分別為0.002 3、0.5、17.8。式(1)在形式上對于不同類型氣候區域均具有一定的合理性,但許多研究指出參數C、E、T均具有地區變異性[16],因此可對HS公式的3個參數作地區率定,以提高公式的精度,參數T為建議值17.8的情況下,僅對參數C、E進行地區率定。
從中國氣象數據網下載江蘇省23個氣象站點的歷史氣象資料,利用歷史實測氣象數據,得出FAO56-PM公式的ET0計算值(ET0,PM)和HS公式的ET0計算值(ET0,Hs),以兩者在率定期內的方差和最小為目的進行公式的率定,得到HS公式各站點的參數值。
系統采用目前流行的Web框架,即LAMP(Linux- Apache-MySQL-PHP)網站架構。以Apache為系統網頁服務器,以Linux為操作系統運行系統代碼,以MySQL創建并管理數據庫,用PHP語言編寫系統核心代碼。LAMP具有通用、跨平臺、高性能、低價格、輕量、快速開發等特點。
1.3.1數據庫的設計
數據庫是按照數據結構來組織、儲存和管理數據的倉庫,一個優秀的數據庫是系統成功運行的保障。而建立一個優秀的數據庫,設計好每一張表成為了關鍵。本系統主要有3個數據表,表a用于儲存用正則表達式從中國天氣網抓取的天氣預報信息(天氣情況、最高溫、最低溫);表b用于儲存江蘇省23個氣象站點HS公式所需的參數信息(緯度、C、E);表c用于儲存ET0預報值供用戶下載。
1.3.2PHP代碼編寫
ET0預報系統代碼編寫采用ThinkPHP框架開發而成,以提高開發效率。系統代碼編寫包括前端和后臺兩個部分。前端用于顯示給用戶,用戶通過瀏覽器可以看到直觀的預報數據;后臺代碼主要包括中國天氣網天氣預報數據抓取代碼和HS計算公式代碼。后臺主要功能是連接、查詢數據庫,然后計算出ET0預報值并傳遞到前臺顯示給用戶。
1.3.3系統工作原理
江蘇省參考作物騰發量ET0預報系統的工作原理如下:
(1)江蘇省參考作物騰發量ET0預報系統包括兩個子系統:采集儲存子系統、ET0預報子系統。采集儲存子系統通過編寫的PHP代碼(正則表達式)抓取中國天氣網(http:∥www.weather.com.cn)每個地區未來15 d的天氣預報信息,包括最高溫、最低溫、天氣情況等存入數據庫。同時我們將各個站點HS模型參數值創建數據表存入數據庫。
(2)ET0預報子系統通過PHP代碼調用自身的專門用來處理MySQL數據連接的函數,來實現與MySQL數據庫通信,獲得所需要的地區參數和天氣預報信息(最高溫、最低溫、天氣類型),通過PHP代碼所編寫的HS公式計算得到預報ET0。
(3)當用戶的Web瀏覽器發出HTTP請求,請求特定的Web頁面,例如:南京未來15 d預報ET0。Web服務器收到請求,獲取該文件,并將它傳到PHP引擎,要求處理。然后,PHP引擎開始解析腳本。腳本中有一條連接數據庫的命令,還有執行查詢(執行搜索未來天氣預報數據)的命令,打開通向MySQL數據庫的鏈接,發送適當的查詢,并將結果返回到PHP引擎并進行適當的運算(ET0預報子系統)。通常,這包括查詢結果格式化成HTML格式,然后再將輸出的HTML返回到Web服務器,Web服務器將HTML發送到瀏覽器,這樣用戶就可以看到南京市的ET0預報數據。工作原理如圖1所示。

圖1 系統工作原理圖Fig.1 System working principle diagram
經過率定,得到HS公式各站點的參數值如表1。從表1可以看出,C值的取值范圍為0.000 9~0.002 6,E值的取值范圍為0.27~0.58。其中大部分站點的C值都是接近或者低于給出的建議值0.0023,這與胡慶芳等(2011年)[7]給出的C參數值分布規律大致一樣。但有18個站點的E值均低于建議E值0.5,與給出的規律不一致,可能是因為率定方法的不同,本文是固定T的取值下率定的C、E值,而胡慶芳等(2011年)[16]直接率定C、E、T參數。

表1 Hargreaves-Samani模型參數率定結果Tab.1 The changed parameters of calculated Hargreaves-Samani model
MySQL是一個快速、多線程、多用戶的SQL數據庫服務器[17],考慮到系統的規模和構建網站的成本,采用功能完善,靈活高效的MySQL對數據庫進行設計[18]。同時,為保障數據庫的規范性和可維護性,必須保證數據庫每張表結構設計合理。表2為數據庫每張表的表頭設計??梢钥闯觯好繌埍淼谋眍^設計都相對簡潔,同時又涵蓋了基本所需的數據,沒有冗余,大大提高了數據庫的運行效率。
江蘇省參考作物騰發量ET0預報系統基于Web開發,用戶通過瀏覽器訪問進入江蘇省參考作物騰發量ET0預報系統首頁面(http:∥etforecast.applinzi.com/index.php/Js/index),該頁面以地圖的形式將江蘇省23個氣象站點展示給用戶,如圖2所示。

表2 數據庫各表的表頭設計Tab.2 The design of the tables in database

圖2 ET0預報發布系統站點首頁面Fig.2 The first page of ET0 forecast system
單擊系統站點首頁面任意一個站點,以南京為例(其他站點ET0查詢類似),單擊“南京”會出現南京站點ET0預報頁面,可以查詢到該站點的未來15 d的ET0值。且該頁面分為2個部分,即圖形部分和表格部分。
以南京站為例,圖形部分為折柱混搭圖,橫軸為預報日期,左縱軸為ET0預報值,右縱軸為溫度,柱狀圖表示未來15 d南京站點預報ET0值,兩條折線圖分別表示南京未來15 d預報的最高溫最低溫。圖形右上角有各種功能按鈕,點擊相應的按鈕會使圖形發生相應的變化,如折線圖切換按鈕可以使各要素切換成折線圖,柱狀圖切換按鈕可以使各要素切換成柱狀圖。如圖3所示。
表格部分(如圖4所示)展示的是該氣象站點未來15 d的天氣類型、最高、最低氣溫和預報ET0值,灌溉區用水管理者可以根據提供的ET0預報值和天氣類型來輔助進行實時灌溉決策,以提高灌溉管理水平,達到節水灌溉的目的。
本系統采用率定的HS模型進行ET0預報,而Luo[11]等研究表明率定的HS模型預報精度相對較高,故本系統可以應用于灌區、稻田等用水管理實踐中。本系統的所有數據都上傳于云端,既可以加密又可以共享給所有網絡用戶。既適合農業生產者參考也適合輔助大型灌區用水管理者灌溉決策。實際上,本系統的ET0預報數據只精確到市縣一級,且依舊存在不小的誤差,對于單塊農田節水具有較小的參考價值。同時本系統僅采用了HS模型來進行ET0預報,但基于氣溫的ET0計算模型還有Thornthwaite模型、簡化的Penman-Monteith模型、McCloud模型、Blaney-Criddle模型等,故后期仍需對模型對比分析來完善系統軟件。

圖3 南京站點ET0預報頁面圖形部分Fig.3 The graphic part of ET0 forecast page in Nanjing station

圖4 南京站點ET0預報頁面表格部分Fig.4 The form part of ET0 forecast page in Nanjing station
實時的ET0預報數據不僅可以使灌區用水管理者和農業生產者更加優化地調度灌溉用水,而且可以更加節約灌溉用水。隨著計算機和互聯網技術的發展,越來越多的系統軟件和APP在生活中發揮了舉足輕重的作用。主要介紹了一個基于LAMP(Linux+Apache+MySQL+PHP)架構開發出江蘇省ET0預報軟件系統,并闡述了該系統的工作原理及開發步驟。系統基于Web技術開發,有網絡的地方就能實現訪問及相應的系統的操作,不局限于時間和地點,對設備幾乎零要求。同時系統功能突出,界面簡單,易操作,可以得到未來15 dET0預報數據,且采用百度提供的Echarts表格使數據變得更加形象直觀。本系統的所有數據都上傳于云端,既可以加密又可以共享給所有網絡用戶。既適合農業生產者參考也適合輔助大型灌區用水管理者灌溉決策。
□
參考文獻:
[1]Ballesteros R, Ortega J F, Moreno M A.FORETo: new software for reference evapotranspiration forecasting[J].Journal of Arid Environments, 2016,124(1):128-141.
[2]羅玉峰, 李思, 彭世彰,等.基于氣溫預報和HS公式的參考作物騰發量預報[J].排灌機械工程學報, 2013,31(11):987-992.
[3]Li Y H, Cui Y L.Real-time forecasting of irrigation water requirements of paddy fields [J].Agricultural Water Management, 1996,31(3):185-193.
[4]Tracy J C, Marino M A, Taghavi S A.Predicting water demand in agricultural regions using time series forecasts of reference crop evapotranspiration[P].Proceedings of the Water Resources Sessions at Water Forum, 1992:50-55.
[5]Marino M A, Tracy J C, Taghavi S A.Forecasting of reference crop evapotranspiration[J].Agricultural Water Management, 1993,24:163-187.
[6]Mao Z.Forecast of crop evapotranspiration[J].ICID Bulletin, 1994,43(1):23-36.
[7]茆智,李遠華,李會昌.逐日作物需水量預測數學模型研究[J].武漢水利電力大學學報, 1995,28(3):253-259.
[8]California Department of Water Resources.California Irrigation Management Information System (CIMIS)[EB/OL].http:∥www.cimis.water.ca.gov/.
[9]Texas A&M University.TexasET[EB/OL].http:∥texaset.tamu.edu/.
[10]趙琪, 羅玉峰, 彭世彰, 等.基于天氣預報和 Penman-Monteith 公式的短期逐日參考作物騰發量預報[J].節水灌溉, 2014,(1):1-4.
[11]Luo Y, Chang X, Peng S, et al.Short-term forecasting of daily reference evapotranspiration using the Hargreaves-Samani model and temperature forecasts [J].Agricultural Water Management, 2014,136(2):42-51.
[12]Xiong Y, Luo Y, Wang Y, et al.Forecasting daily reference evapotranspiration using the Blaney-Criddle model and temperature forecasts [J].Archives of Agronomy & Soil Science, 2016,62(6):790-805.
[13]National Weather Service Weather Forecast Office.Experimental Forecast Reference Crop Evapotranspiration[EB/OL].http:∥www.srh.noaa.gov/abq/?n=hydro-fret.
[14]Allen R G, Pereira L S, Raes D, et al.Crop Evapotranspiration: Guidelines for Computing Crop Water Requirements[R].FAO Irrigation and Drainage Paper No.56.FAO, 1998,56.
[15]Hargreaves G H, Samani Z.Reference crop evapotranspiration from ambient air temperature[R].American Society of Agricultural Engineers (microfiche Collection) (USA), 1985.
[16]胡慶芳, 楊大文, 王銀堂,等.Hargreaves公式的全局率定及適用性評價[J].水科學進展, 2011,22(2):160-167.
[17]趙勃, 王征.基于PHP和MySQL的網站設計與開發[J].信息與電腦:理論版, 2014,(2):35-36.
[18]陳俊宏.PHP與MySQL徹底研究:網頁數據庫設計[M].北京:人民郵電出版社, 1900.
[19]茆智, 李遠華, 李會昌.實時灌溉預報[J].中國工程科學, 2002, 4(5):24-33.
[20]史曉楠, 王全九, 王新,等.參考作物騰發量計算方法在新疆地區的適用性研究[J].農業工程學報, 2006,22(6):19-23.
[21]遲道才, 王曉瑜, 周彬,等.基于天氣預報改進模型ET0實時預報應用[J].人民長江, 2008, 39(8):5-6.