前言:本站為你精心整理了Excel函數(shù)在農(nóng)業(yè)中的巧用范文,希望能為你的創(chuàng)作提供參考價值,我們的客服老師可以幫助你提供個性化的參考范文,歡迎咨詢。
1材料與方法
主要選用的資料山東莒南報送的土壤常數(shù)和常用土壤濕度持水量表都是出自《氣象電碼技術(shù)問題匯編》[1](1988年1月1日00∶00開始執(zhí)行),根據(jù)國家氣象局頒發(fā)的《氣象電碼》和有關(guān)電碼編報文件規(guī)定精神,結(jié)合山東省氣象情報服務(wù)需要和省局以往下發(fā)有關(guān)編報規(guī)定文件,綜合整理編寫的。其中,莒南報送的土壤常數(shù)是根據(jù)莒南當(dāng)?shù)貙崪y確定;常用土壤濕度持水量表則是根據(jù)《氣象電碼技術(shù)問題匯編》[1]中“不同類型土壤的土壤濕度與占田間最大持水量關(guān)系表”中的數(shù)據(jù)結(jié)合莒南實地情況查算出來。查用了農(nóng)業(yè)氣象測墑規(guī)范、常用土壤濕度持水量表及莒南氣象局報送的土壤常數(shù)等資料,主要是excel函數(shù)綜合運用,表格查算運用IF語句的多層套用的方法。
2程序設(shè)計方法的實現(xiàn)
用Excel提供的四則運算函數(shù)編寫程序完成農(nóng)業(yè)氣象測墑中對土壤樣本數(shù)據(jù)的基本計算,用邏輯函數(shù)編寫程序?qū)崿F(xiàn)對土壤濕度持水量的查表計算工作。
2.1程序設(shè)計簡介農(nóng)業(yè)氣象中的土壤相對濕度計算分為2個部分:第1部分是固定地段的20個土壤樣本計算;第2部分是全縣普查的32個土壤樣本計算。這2個部分主要用到了+、-、×、÷4種運算,對應(yīng)的函數(shù)有SUM、PRODUCT。如加法運算SUM(B2,C2),那么相應(yīng)的減法運算為SUM(B2,-C2),同樣乘法運算為PRODUCT(E2,F2),除法運算為PRODUCT(E2,1/F2)。2個部分都用到了查表計算,其中,第2部分要查表格的數(shù)據(jù)較多,也是運用函數(shù)運算的難點,主要是涉及到算法問題。用Excel設(shè)計表格數(shù)據(jù)的查詢是該研究主要說明的。
2.2程序設(shè)計思路及方法的實現(xiàn)程序設(shè)計分3個階段:第1階段,把固定地段和全縣普查中單純涉及到+、-、×、÷4種運算的部分設(shè)計好;第2階段,設(shè)計土壤持水量的表格數(shù)據(jù)查詢;第3階段,代入具體數(shù)據(jù)測試計算結(jié)果的準(zhǔn)確度。
2.2.1含水重、干土重、土壤含水量求和、平均等計算的實現(xiàn)。第1階段的設(shè)計完成了含水重、干土重、土壤含水量求和、平均的計算。這個階段算法上比較簡單,主要遇到小數(shù)的四舍五入方面的問題。剛開始帶入初始數(shù)據(jù)驗證,計算結(jié)果總是有個別數(shù)據(jù)有零點幾的誤差,經(jīng)過對計算過程的分析,發(fā)現(xiàn)產(chǎn)生誤差主要原因在于把取1位有效小數(shù)跟四舍五入到小數(shù)點后1位的概念等同了,如1.24取1位有效小數(shù)顯示是1.2,實際計算中仍保留沒有顯示的0.04,四舍五入到小數(shù)點后1位也是1.2,但是2個顯示是1.2的數(shù)值在大小上是不相等的,很明顯1.24>1.2。計算過程中,2個取1位有效小數(shù)的1.24相加[1.2(4)+1.2(4)=2.4(8)]顯示是2.4,但是計算結(jié)果四舍五入的話就變成了2.5。由此可知,解決誤差的方法就是每一步計算結(jié)果都要四舍五入。
2.2.2土壤濕度持水量查表計算程序設(shè)計方法。第2階段即全縣普查中的土壤濕度持水量查表計算的程序設(shè)計,是各種Excel函數(shù)的綜合運用,其中邏輯函數(shù)的運用起到了非常重要的作用。設(shè)計思路是通過IF函數(shù)的多層套用來完成對表格數(shù)據(jù)的選擇計算,如IF(F11>60,(IF(F11>90,“優(yōu)秀”),“合格”),“不合格”),說明為F11≤60時顯示“不合格”,當(dāng)F11>90時顯示“優(yōu)秀”,否則(60<F11≤90的情況)為合格。設(shè)10或20cm土壤含水量平均值為a,a對應(yīng)的土壤濕度持水量為b,對a向下取為最近的整數(shù)設(shè)為A,取整過程對應(yīng)的函數(shù)為INT(a),A對應(yīng)的土壤濕度持水量為B,B0為山嶺、丘陵、平原、湖洼中的一類土壤濕度持水量數(shù)組的第1個數(shù)值(為15或17或22),A0為B0對應(yīng)的土壤含水量平均,B、B1為表1中顯示的2個鄰近的土壤濕度持水量,且B1>B。土壤濕度持水量b計算方法是:b=B+(a-A)×(B1-B)(1)式中,B、(a-A)部分很容易用函數(shù)表達(dá)出來,但是(B1-B)部分是隨B變化的數(shù)值,用函數(shù)比較難表達(dá),是一個難點。下面主要討論(B1-B)的取值問題。通過對表1中土壤濕度持水量大小變化的分析,發(fā)現(xiàn)對應(yīng)土壤濕度持水量后面數(shù)值減前面數(shù)值的差值(B1-B)變化是有規(guī)律的。
如山嶺、丘陵對應(yīng)土壤濕度持水量后面數(shù)值減前面數(shù)值差值,即(B1-B)都是5,平原的前后數(shù)值差值(B1-B)依次為5、4、4、5、4、4、5、4、5、4、4、5、4、4、5、4、4、5、4,湖洼的前后數(shù)值差值(B1-B)依次為4、4、3、4、4、3、4、4、4、3、4、4、3、4、4、3、4、4、4、3、4。那么由10cm或20cm土壤含水量平均數(shù)值a,查表算得的土壤濕度持水量的算法如下。2.2.2.1山嶺、丘陵。b=B+(a-A)×(B1-B)=A×5([a-A]×5=a×5(2)2.2.2.2平原。先分析其前后數(shù)值差的規(guī)律5、4、4、5、4、4、5、4、5、4、4、5、4、4、5、4、4、5、4,可以看出(B1-B)的差值是4或5,即是4+0或4+1。設(shè)單下劃線的差值5、4、4為有規(guī)律數(shù)段,雙下劃線的5、4少1個數(shù),為無規(guī)律數(shù)段。為了分析方便,先假定(B1-B)差值數(shù)列都是由5、4、4這樣3個數(shù)的小段組成,如5、4、4、5、4、4、5、4、4…,由于(B1-B)差值數(shù)列以3個數(shù)值為1個循環(huán)出現(xiàn)差值5,那么出現(xiàn)4+0或4+1的情況就能用算式4+INT[(B-B0)/3]表示(INT為向下取整函數(shù))。如果都是5、4、4的數(shù)段那么算法就容易多了,但是出現(xiàn)了5、4使得原差值數(shù)列循環(huán)變的無規(guī)律,為了解決這個問題,可以把原差值數(shù)列分為2個部分5、4、4、5、4、4、5、4和5、4、4、5、4、4、5、4、4、5、4,那么每個部分又都由有規(guī)律的數(shù)段組成了,用分情況討論的方法分別編寫算法式子就可以解決問題。由于5、4和5、4在原差值數(shù)列中的位置不一樣,5、4出現(xiàn)在原差值數(shù)列中間,其后面一個數(shù)為5而不是4,所以歸為無規(guī)律的數(shù)段,5、4在原差值數(shù)列最后,可以看作是5、4、4前面一部分,所以歸為有規(guī)律數(shù)段。以平原的土壤濕度持水量查算為例:不規(guī)律的數(shù)段5、4中的第1個的差值5(即57-52=5)出現(xiàn)在A=13點處。下面以13為界線分情況討論。(1)當(dāng)a<13時,A取數(shù)值4,那么A=4對應(yīng)的土壤濕度持水量B為17,則:X1=[17(4×(A-4)](INT[(A-4(2)/3],X2=[17(4×(A(1-4)](INT[(A(1-4(2)/3]。土壤濕度持水量的算法:b1=B((a-A)×(B1-B)=X1+(a-A)×(X2-X1)。(2)當(dāng)a≥13時,A取數(shù)值13,那么A=13對應(yīng)的土壤濕度持水量B為57,則:X3=[57+4×(A-13)](INT[(A-13)/3],X4=[57(4×(A(1-13)](INT[(A(1-13)/3]。土壤濕度持水量的算法:b2=B((a-A)×(B1-B)=X3((a-A)×(X4-X3)。用邏輯函數(shù)的IF語句來反映討論的情況有IF(A<13,B1,B2)具體函數(shù)為:IF(a<13,(4+INT((A+1-4+2)/3)-INT((A-4+2)/3))×(a-A))+(17+4×(A-4))+INT((A-4+2)/3),(4+INT((A+1-13)/3)-INT((A-13)/3))×(a-A)+(57+4×(A-13))+INT((A-13)/3))。工作表中的函數(shù)應(yīng)用舉例見圖2。2.2.2.3湖洼。先分析差值的規(guī)律4、4、3、4、4、3、4、4、4、3、4、4、3、4、4、3、4、4、4、3、4。數(shù)值的循環(huán)情況跟平原的相似,只是出現(xiàn)了2處不規(guī)律的數(shù)段,把上面的差值數(shù)列分為了3段4、4、3、4、4、3、4、和4、4、3、4、4、3、4、4、3、4、和4、4、3、4這樣每段的差值又有規(guī)律了。這個就要求分3種情況討論分別編寫算法公式。分別是a<15、15≤a≤25、a≥25。
算法編寫中用到IF函數(shù)的2層套用就可以了.2.2.3抄錄計算結(jié)果程序設(shè)計。第3階段為了方便抄錄計算結(jié)果,可以給個別工作表單元格設(shè)定顏色,這樣能防止看花眼抄錯行。為驗證計算的準(zhǔn)確度,帶入之前人工計算過的3套初始數(shù)據(jù)。計算機(jī)通過Excel函數(shù)計算出來的結(jié)果與人工算的結(jié)果完全一致,這說明用Excel工作表來計算農(nóng)業(yè)氣象測墑數(shù)值是可行的。下面是設(shè)計好的Excel工作表格,其中包含了一次具體的計算過程。(1)固定地段的Excel工作表格(2)全縣普查的Excel工作表格(圖5)。使用該Excel計算工作表的時候,只需要輸入濕土重和干土重就能得到需要的含水量、干土重、土壤含水量、土壤持水量等數(shù)據(jù)結(jié)果。
3結(jié)語
Excel在農(nóng)業(yè)氣象測墑計算中的應(yīng)用減少了工作時間,提高了工作效率,計算結(jié)果精確度為100%。對土壤濕度持水量表的查算涉及到數(shù)據(jù)的選擇處理用到了IF語句的多層套用,這實際體現(xiàn)了分情況討論的思想。用Excel中函數(shù)提供的IF語句來設(shè)計表格數(shù)據(jù)查算實現(xiàn)起來不困難,并且Ex-cel工作表格界面簡單直觀容易被縣局工作人員學(xué)習(xí)接受。綜上,Excel在農(nóng)業(yè)氣象測墑計算中的應(yīng)用,特別是運用Ex-cel來設(shè)計表格數(shù)據(jù)查算有一定的推廣價值。