- 相關(guān)推薦
淺析數據庫技術(shù)在海河流域水資源綜合規劃中的應用
論文關(guān)鍵詞:數據庫技術(shù);水資源規劃;供需分析;海河流域
論文摘要:海河流域水資源綜合規劃采用水資源系統配置模擬模型對全流域進(jìn)行了長(cháng)系列的供需分析,生成了近2萬(wàn)行供需平衡數據。如果采用常規手工分析方法進(jìn)行供需分析,難于適應規劃的進(jìn)度和精度要求。介紹如何利用Foxpro數據庫系統提供的強大數據處理功能,實(shí)現供需平衡數據的統計分析和輸出,并給出了實(shí)用的程序片段,不僅對提高水資源規劃工作效率有所幫助,而且其思路和方法對其他專(zhuān)業(yè)規劃也具有一定的參考價(jià)值。
1引言
海河委員會(huì )在水資源綜合規劃中委托中國水科院水資源所開(kāi)發(fā)研制了海河流域水資源系統配置模型,配置模型以水資源三級區套地市作為基本計算分區,同時(shí)又根據規劃精度的要求對分區作了進(jìn)一步細化,共劃分107個(gè)計算單元。利用配置模型對全流域進(jìn)行了長(cháng)系列的供需分析.生成了基準年、2010、2020和2030年4個(gè)規劃水平年107個(gè)計算單元45年的供需平衡數據,不僅數據量大,而且方案反復調整,十分煩瑣,若采用常規手工統計分析方法,對計算單元供需平衡數據按不同分區進(jìn)行各種頻率的供需分析,難于適應規劃的進(jìn)度和精度要求。運用Foxpro數據庫系統提供的強大數據處理功能.基本實(shí)現了不同水資源分區供需分析長(cháng)系列成果生成、均值統計、各種保證率成果確定、大型調水工程不同保證率供水量統計及最終成果表編制等工作的程序化,極大地提高了工作效率。
2建立基礎數據庫
水資源配置模型運行后導出的供需平衡數據為包含107個(gè)計算單元的1956-2000年的系列數據.文件數據格式既可選擇Excel表格,也可選擇以Tab為分隔的數據文件.表格基本格式見(jiàn)表1(僅列部分字段)。
Foxpro數據庫系統具有直接導入以上兩種數據格式文件并生成相應數據庫的功能。以Tba分隔數據文件為例,如水資源配置模型導出文件名為balance.dat則導入并建立數據庫的程序為:
use單元供需分析.dbf
delel all
pack
append from balance.Dat type delimited with tab
其中,“單元供需分析.dbf”為事先建立.其字段為與balance.dat相一致的數據庫文件。
按水資源綜合規劃要求.供需分析成果以省級區套水資源二級區(以下簡(jiǎn)稱(chēng)省套二級區)為單元.保證率主要根據統計單元的降水頻率確定。因此.需建立一個(gè)以省套二級區為統計單元的長(cháng)系列降水量數據庫“降水排序.dbf”.字段包括:年份、二級區碼、省級碼、降水量和降水排序(降水量降序排列號)5個(gè)字段,其中年份為1956-2000年。
為了簡(jiǎn)化統計分析的程序代碼,構建了一個(gè)貯存省級行政區及二級區組合碼的數據庫“省套二級區編碼.dbf'’,數據庫記錄包括了海河流域省級行政區與二級區的所有可能組合.海河流域有l6個(gè)省套二級區,因此共有l6個(gè)記錄。字段包括:wt_code(二級區碼)、pry_code(省級碼)、wt_na(二級區名稱(chēng))、plv_na(省級區名稱(chēng))4個(gè)字段。
3數據庫記錄編碼
供需平衡數據的統計分析,主要以計算單元編碼作為統計區域分類(lèi)的線(xiàn)索,選擇合適的編碼方式和規則尤為重要。以字母和數據構成的編碼具有簡(jiǎn)潔、便于重新組合的優(yōu)點(diǎn)。在海河流域水資源配置模型中,計算單元編碼由1個(gè)字母和l5個(gè)數字組成,其中前3位代表水資源二級區,如C02為海河北系;前7位代表水資源三級區,如C010100為灤河山區;8~9位為省級行政區,如l3為河北;而第l0位以后的編碼為地市級行政區等信息。
對計算單元供需平衡數據按不同分區要求進(jìn)行統計分析的操作,實(shí)際上是對數據庫記錄(行)進(jìn)行分類(lèi)、合并、排序、提取的過(guò)程。為了達到分類(lèi)合并的目的,在“單元供需分析.dbf”數據庫中增加了1個(gè)“組合碼”字段,用于存儲重新分類(lèi)統計的組合編碼。
4供需平衡數據的分析
為了生成省套二級區的供需分析長(cháng)系列成果,并進(jìn)行各種頻率的供需分析,首先需對“單元供需分析.dbf”數據庫中的每個(gè)記錄進(jìn)行分類(lèi),如哪些記錄屬于海河北系河北省1956年的數據?通過(guò)提取單元編碼中代表二級區及省級區的編碼,并與年份進(jìn)行組合,即可形成不同年份省套二級區的組合碼,將其存人數據庫的組合碼字段,為同類(lèi)合并(相加)創(chuàng )造了條件。數據庫系統對已索引或排序的數據庫提供了方便的同類(lèi)合并功能,以下程序片段,輕而易舉地完成了省套二級區供需分析長(cháng)系列數據的整理工作。
use單元供需分析.dbf
copy all to temp.dbf
use temp.dbf
repl all組合碼with yearl+substr(code0,1,3)+substr(code0,8,2)1
index on組合碼to ch_code
total on組合碼to省套二級區系列.dbf
其中:temp.dbf為臨時(shí)數據庫,是“單元供需分析.dbf”數據庫的復制文件.對其進(jìn)行操作可避免改變原有數據庫:yearl和code0分別為年份和單元編碼字段。
在數據庫系統的工作區1打開(kāi)先前建立的“省套二級區編碼.dbf”,并保持打開(kāi)狀態(tài)。在工作區2反復打開(kāi)或關(guān)閉用于查找不同降水頻率對應年份的“降水排序.dbf”、用于提取不同保證率供需平衡數據的“省套二級區系列.dbf”及存儲統計分析結果的“省套二級區供需分析.dbf”,并進(jìn)行數據的統計、復制、添加、分區名稱(chēng)及保證率的填寫(xiě)等操作。以工作區1第1個(gè)記錄(第一個(gè)省套二級區)為起始,提取省套二級區信息,利用do while not eofO循環(huán)語(yǔ)句。在兩個(gè)工作區之間來(lái)回變換,進(jìn)行重復的統計分析操作,直到完成最后一個(gè)省套二級區的統計分析。程序片段(僅以50%保證率和平均值統計為例)如下:
sele1 &&選擇工作區1
use省套二級區編碼.dbf
do while not eof0 &&循環(huán)開(kāi)始
prv_nal=prv_na &&提取要統計的省級區名
wt_na1=wt_na &&提取要統計的二級區名
prv_codel=pry_code &&提取要統計的省級區編碼
wt_codel=wt_code &&提取要統計的二級區編碼
sele2 &&選擇工作區2
use降水排頻.Dbf &&在排頻文件中找到年份
locate for省級碼=prv_codel and二級區碼=wt_codel and降水排序=23
year50=年份
use省套二級區系列.Dbf &&在數據庫中提取對應省套二級區和頻率的記錄
Locate for substr(code0,1,3)=wt_code1and substr(code0,8,2)=prv_codel and year0=year50
Copy next 1 to tmp50.dbf
average all城鎮需水to城鎮需水1 for substr(code0,1,3)=wt_codel and substr(code0,8,2)=pry_codel
…
use省套二級區供需分析表.dbf
append from tmp50.dbf
repl name0 with pry_nal
repl code0 with wt_nal
repl ch_code with“50%”
append blank
repl ch_code with“多年平均”
repl城鎮需水with城鎮需水1
…
sele 1
skip &&工作區1記錄指針加1
enddo &&循環(huán)結束語(yǔ)句
close all
其中:“降水排序=23”定位條件,用于查找降水量由大到小排序的第23個(gè)記錄,按經(jīng)驗頻率計算,在45年系列中的頻率正好為50%的年份。
以上程序已完成省套二級區供需分析,并形成了相應的數據庫。最后通過(guò)以下兩個(gè)語(yǔ)句將省套二級區供需分析數據庫文件轉換成Excel文件格式的表格:
use省套二級區供需分析表.dbf
copy all to省套二級區供需分析表.Xls type xls
生成的Excel表格.表頭為數據庫結構中的字段名,過(guò)于簡(jiǎn)單,利用Excel的鏈接功能,將其與具有滿(mǎn)足要求表頭的Excel文件相鏈接,便解決了正式表格的編制問(wèn)題。
5按分區降水排頻存在的問(wèn)題及解決辦法
受農田灌溉需水過(guò)程、徑流年內分布及水庫對地表水徑流調節作用等因素的影響,按分區降水排頻可能出現遇偏枯年份供水量并不減小或缺水并不明顯的特殊情況,不符合一般的規律。在現實(shí)中,也有類(lèi)似的例子,如海河流域1980年為枯水年,但由于上一年為豐水年,水庫蓄水比較充足,在需水量大又有水可供的情況下,全流域地表水供水量達到了149億m3,比平水年還要大。為避免出現類(lèi)似的情況,在供需分析中,分別采取了對應頻率附近3年平滑法(取近似頻率所對應3年的平均值)及3年中取偏大或偏小值年份(如95%頻率取3年中供水最小值或缺水最大值)法對成果進(jìn)行了調整,必要時(shí)輔以人工分析,以使所選擇的典型年更具代表性。
【淺析數據庫技術(shù)在海河流域水資源綜合規劃中的應用】相關(guān)文章:
綜合智能控制技術(shù)在電網(wǎng)規劃中的應用03-26
淺析數據融合技術(shù)及其在林業(yè)中的應用03-19
淺析多媒體技術(shù)在高校音樂(lè )教學(xué)中的應用03-08
淺析數據庫管理系統中模糊查詢(xún)技術(shù)的正確使用03-04
淺析力學(xué)在機械中的應用05-19