国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      小流域淤地壩壩系規(guī)劃用壩系拓?fù)湟晥D的生成方法

      文檔序號(hào):6460220閱讀:203來(lái)源:國(guó)知局
      專利名稱:小流域淤地壩壩系規(guī)劃用壩系拓?fù)湟晥D的生成方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種拓?fù)湟晥D的生成方法,具體地說(shuō),是涉及一種小流域淤地壩壩 系規(guī)劃用的壩系拓?fù)湟晥D的生成方法。
      技術(shù)背景"淤地壩壩系"是黃土高原地區(qū)特有的水土保持溝道工程體系。在黃土高原地 區(qū),為防止水土流失,以小流域?yàn)閱卧?,在小流域各?jí)溝道內(nèi)系統(tǒng)地建設(shè)"淤地壩" 群體,稱為"壩系"。在暴雨發(fā)生時(shí),坡面上產(chǎn)生的洪水和泥沙進(jìn)入溝道,被這些 淤地壩群全部攔蓄或部分?jǐn)r蓄。對(duì)一座淤地壩來(lái)說(shuō),如果其上游沒(méi)有其它淤地壩, 那么它攔蓄的是上游集水范圍內(nèi)坡面上產(chǎn)生的洪水和泥沙;如果其上游有其它淤地 壩,那么它攔蓄的是自上游淤地壩到該淤地壩所在的區(qū)間集水范圍內(nèi)坡面上產(chǎn)生的 洪水和泥沙,以及從上游淤地壩下瀉的洪水和泥沙。洪水對(duì)溝道的沖蝕因?yàn)閴蜗档?存在而大大減弱,此外,隨著時(shí)間推移,被攔蓄的泥沙在淤地壩前逐漸淤高,抬高 了侵蝕基準(zhǔn)面,進(jìn)一步減弱水土侵蝕作用。因此,壩系是有效的水土保持溝道工程 體系。另外,壩系還可看作是一種農(nóng)業(yè)生產(chǎn)工程,因?yàn)樵趬吻皵r蓄的泥沙淤積到一 定程度后,就可利用淤積的壩地進(jìn)行農(nóng)業(yè)生產(chǎn)(如種植玉米等作物),而不用擔(dān)心 洪水的危害??梢?jiàn),有效合理建設(shè)壩系是十分重要的。壩系中的壩一般分為骨干壩、中小型壩兩類(lèi),其中,前者主要承擔(dān)防洪功能, 后者主要承擔(dān)淤地生產(chǎn)功能。為經(jīng)濟(jì)合理地建設(shè)壩系,須事先進(jìn)行方案設(shè)計(jì),這稱 為"小流域壩系規(guī)劃",或簡(jiǎn)稱"壩系規(guī)劃"。在規(guī)劃時(shí),壩的數(shù)量、骨干壩與中 小型壩的布設(shè)比例、每座壩的類(lèi)型、位置、主要組成(即壩體、放水建筑物、溢洪 道)、工程主要參數(shù)(例如設(shè)計(jì)洪水頻率、壩高等)、建設(shè)的時(shí)間都需要細(xì)致分析 確定,在擬定了這樣一套方案后,通常還要對(duì)其進(jìn)行各種分析,以得知壩系整體的 防洪能力、生產(chǎn)保收能力、壩系相對(duì)穩(wěn)定系數(shù)、需要的投資額度等指標(biāo)。當(dāng)方案無(wú) 法達(dá)到預(yù)期的目標(biāo)時(shí),需要再作調(diào)整并重新分析、論證。整個(gè)規(guī)劃過(guò)程十分復(fù)雜, 在此不再贅述。防洪能力分析、生產(chǎn)保收能力分析是設(shè)計(jì)壩系規(guī)劃方案的關(guān)鍵過(guò)程,其實(shí)質(zhì)是 在某些假定條件下,逐年模擬該壩系整體的淤積情況、對(duì)特定頻率暴雨的抵抗能力 的變化情況、生產(chǎn)保收能力的變化情況等。對(duì)一個(gè)特定的年份、特定的暴雨頻率, 模擬分析過(guò)程中需要計(jì)算洪水和泥沙的產(chǎn)生、攔蓄、下瀉,各個(gè)壩的洪水過(guò)程,上 游壩到下游壩的洪水泥沙"傳遞"等數(shù)據(jù)。在相鄰兩個(gè)年份之間,要考慮新壩的建 成、已有壩增加的泥沙淤積。這些其實(shí)只是極簡(jiǎn)化的描述而已,實(shí)際上模擬分析的 過(guò)程、規(guī)則都是十分復(fù)雜的,而且計(jì)算量很大。隨著地理信息系統(tǒng)(GIS)技術(shù)的發(fā)展和應(yīng)用, 一些文獻(xiàn)中提出了基于GIS技術(shù) 的小流域壩系規(guī)劃方法,'并有部分軟件產(chǎn)品推出。應(yīng)用GIS技術(shù),流域溝道中一系 列"幾何點(diǎn)"之間的上下游關(guān)系可被自動(dòng)計(jì)算得出,進(jìn)而得到壩間的上下游關(guān)系, 并且,其它基本信息也可用已知的軟件技術(shù)求出。但是,在這些文獻(xiàn)和產(chǎn)品中,壩 系基本信息的計(jì)算過(guò)程與專業(yè)分析的計(jì)算過(guò)程被混淆在一起,而且專業(yè)分析的計(jì)算 量是十分龐大的,這樣便導(dǎo)致了計(jì)算流程復(fù)雜化、代碼高度耦合、缺陷率高、軟件 開(kāi)發(fā)和維護(hù)困難。另外,當(dāng)壩系規(guī)劃所依據(jù)的理論、工作規(guī)范發(fā)生變化時(shí),修改或 增加專業(yè)分析功能的困難非常大。另外,目前一些專門(mén)輔助進(jìn)行小流域壩系規(guī)劃的計(jì)算機(jī)軟件誕生了。這些軟件 具備支持對(duì)壩系運(yùn)行模擬、分析的功能(例如防洪能力分析、生產(chǎn)保收能力分析), 該功能可稱為"專業(yè)分析功能"。在運(yùn)行專業(yè)分析功能時(shí),軟件需要一些基本的信 息支持,如壩數(shù)量、壩間的上下游關(guān)系等。但是,這些軟件不能自動(dòng)提供進(jìn)行專業(yè) 分析所需的基本信息,這些基本信息需要由用戶進(jìn)行人工分析后,以某種格式向軟 件提供。由于小流域中通常存在數(shù)十座以上的壩,人工分析并錄入數(shù)據(jù)的工作十分 繁重,且易出錯(cuò),因而用戶會(huì)很自然地減少、回避做這種繁重的工作。例如,在規(guī) 劃過(guò)程中減少供比較、選擇的方案的數(shù)量,對(duì)每個(gè)方案盡量不進(jìn)行調(diào)整、優(yōu)化等。 這勢(shì)必會(huì)降低壩系規(guī)劃的精確度。而且,壩系規(guī)劃工作中的專業(yè)分析包括大量的計(jì) 算環(huán)節(jié),而每種計(jì)算環(huán)節(jié)的舍用、計(jì)算環(huán)節(jié)相互之間的關(guān)系(嵌套或并行)都須由 基本信息和工作規(guī)范共同決定,每種專業(yè)分析需要不同的基本信息,有時(shí)基本信息 需跟隨模擬計(jì)算的結(jié)果而動(dòng)態(tài)調(diào)整。由此可見(jiàn),根據(jù)實(shí)際計(jì)算需求而生成適于壩系規(guī)劃方案的基本信息,是目前研 制壩系規(guī)劃急需解決的問(wèn)題。 發(fā)明內(nèi)容本發(fā)明的目的在于提供一種小流域淤地壩壩系規(guī)劃用壩系拓?fù)湟晥D的生成方 法,該方法可為小流域淤地壩壩系規(guī)劃專業(yè)分析生成關(guān)于壩系基本信息的壩系拓?fù)?視圖,該壩系拓?fù)湟晥D對(duì)不同業(yè)務(wù)要求的專業(yè)分析具有很強(qiáng)的通用性。為了實(shí)現(xiàn)上述目的,本發(fā)明采用了以下技術(shù)方案一種小流域淤地壩壩系規(guī)劃用壩系拓?fù)湟晥D的生成方法,其特征在于它包括步驟步驟l:對(duì)欲進(jìn)行壩系規(guī)劃的流域,準(zhǔn)備出該流域的數(shù)字高程模型; 步驟2:根據(jù)該流域的數(shù)字高程模型,計(jì)算出該流域的水流方向圖; 步驟3:在該流域的水流方向圖上,確定壩系規(guī)劃方案中的每個(gè)壩的位置; 步驟4:根據(jù)壩系規(guī)劃方案中的壩情況,創(chuàng)建初始?jí)蜗低負(fù)湟晥D; 步驟5:根據(jù)壩系規(guī)劃方案中的壩在水流方向圖中的位置情況,基于在全流域范 圍、全體壩均存在的假設(shè),生成壩系拓?fù)湟晥D。所述步驟4可位于步驟K步驟2或步驟3之前。 本發(fā)明的優(yōu)點(diǎn)是 在本發(fā)明中,由于壩系的基本信息用拓?fù)湟晥D的形式來(lái)表達(dá),拓?fù)湟晥D既包括 了滿足條件的淤地壩的信息,也包括了壩之間的關(guān)系信息,故將該拓?fù)湟晥D用作支 持專業(yè)分析功能的媒介,可有效地將專業(yè)分析計(jì)算過(guò)程與拓?fù)湫畔⒂?jì)算過(guò)程相隔離, 專業(yè)分析計(jì)算過(guò)程中不再需要任何額外的拓?fù)湫畔⒌挠?jì)算,流程控制很容易實(shí)現(xiàn), 減小了代碼的耦合性,專業(yè)人員在開(kāi)發(fā)專業(yè)分析功能時(shí),可將分析、設(shè)計(jì)、編碼的 重點(diǎn)放在業(yè)務(wù)邏輯上,不受拓?fù)湫畔⒂?jì)算問(wèn)題的干擾,減少了專業(yè)分析過(guò)程中的出 錯(cuò)可能,降低了小流域淤地壩壩系規(guī)劃輔助軟件的開(kāi)發(fā)難度,提高了軟件的復(fù)用性。 而且,當(dāng)由于壩系規(guī)劃理論、工作規(guī)范發(fā)生變化而需要修改或增加專業(yè)分析功能時(shí), 軟件的開(kāi)發(fā)工作也是容易實(shí)現(xiàn)的。


      圖1是本發(fā)明壩系拓?fù)湟晥D的生成方法的實(shí)施流程圖; 圖2是初始?jí)蜗低負(fù)湟晥D的 一個(gè)實(shí)例;圖3是圖2所示的初始?jí)蜗低負(fù)湟晥D中的一個(gè)元素的組成示意圖; 圖4是一個(gè)不符合觀察條件的元素的上下游壩關(guān)系視圖; 圖5是刪除圖4所示元素的第一步實(shí)施示意圖;圖6是刪除圖4所示元素的第二步實(shí)施示意圖;圖7是刪除圖4所示元素后得到的新上下游壩關(guān)系視圖。
      具體實(shí)施方式
      在具體描述本發(fā)明前,先要指出的是,本發(fā)明中所稱的壩系拓?fù)湟晥D指的是一 個(gè)壩系規(guī)劃方案在某些觀察條件下得到的拓?fù)浔磉_(dá),該拓?fù)浔磉_(dá)主要包括小流域 中存在的淤地壩以及這些壩之間的上下游關(guān)系。若該壩系規(guī)劃處于某些限定條件(如 忽略中小型淤地壩)下,那么該拓?fù)浔磉_(dá)應(yīng)包括符合限定條件的淤地壩以及這些壩 之間的上下游關(guān)系。用于小流域壩系規(guī)劃的計(jì)算機(jī)輔助軟件在進(jìn)行專業(yè)分析功能前, 先要得到上述這些壩系的基本信息,即壩系拓?fù)湟晥D。如圖1所示,生成壩系拓?fù)湟晥D的過(guò)程如下步驟h對(duì)欲進(jìn)行壩系規(guī)劃的流域,準(zhǔn)備出該流域的數(shù)字高程模型。數(shù)字高程模型(DEM)是對(duì)地形表面作數(shù)字化表達(dá)時(shí)最常用的一種方式,DEM 由平面上在X、 Y方向均等距緊鄰排列的網(wǎng)格點(diǎn)形成,每個(gè)網(wǎng)格點(diǎn)賦有一個(gè)代表該 區(qū)域的平均高程的值。步驟2:根據(jù)該流域的數(shù)字高程模型,計(jì)算出該流域的水流方向圖。 在GIS領(lǐng)域,DEM和水流方向圖都屬于柵格數(shù)據(jù)。在DEM上,每個(gè)網(wǎng)格點(diǎn)都 有8個(gè)相鄰的網(wǎng)格點(diǎn),即分別位于該網(wǎng)格點(diǎn)的右方、右上方、上方、左上方、左方、 左下方、下方、右下方的網(wǎng)格點(diǎn)。通常,假設(shè)每個(gè)網(wǎng)格點(diǎn)的水流都流向低于它的相鄰網(wǎng)格點(diǎn),如果周?chē)卸鄠€(gè)低于該網(wǎng)格點(diǎn)的相鄰網(wǎng)格點(diǎn),則流向其中高程最小的網(wǎng) 格點(diǎn)處,這就是"最大缺度"假設(shè)。本發(fā)明可基于這個(gè)最大坡度假設(shè),并輔以凹地 填平等算法,來(lái)求出每個(gè)網(wǎng)格點(diǎn)的水流方向(該水流方向即為以上8個(gè)方向之一),從而在壩系規(guī)劃方案中涉及的流域范圍內(nèi)計(jì)算出水流方向圖。其中的最大坡度假設(shè)、凹地填平等算法都是GIS領(lǐng)域公知的技術(shù),在此不再贅述。當(dāng)然,水流方向圖還可 以采用其它公知的算法來(lái)計(jì)算。步驟3:在該流域的水流方向圖上,確定壩系規(guī)劃方案中的每個(gè)壩的位置。在壩系規(guī)劃方案中,每個(gè)現(xiàn)有的壩或計(jì)劃建設(shè)的壩都記錄著自己的位置,該位置是以地理坐標(biāo)表示的。將所有的壩的位置投射到水流方向圖上的過(guò)程為將壩的 實(shí)際地理坐標(biāo)用數(shù)字高程模型所基于的坐標(biāo)系來(lái)表示,表示為點(diǎn)p(x,y);用與劃分?jǐn)?shù)字高程模型網(wǎng)格相同的方法,將該點(diǎn)p(x,y)轉(zhuǎn)換為行列坐標(biāo)c(row,col),其中行坐標(biāo) 值row和列坐標(biāo)值col均為實(shí)數(shù);通過(guò)四舍五入的方法,將行坐標(biāo)值row和列坐標(biāo)值COl均變?yōu)檎麛?shù);根據(jù)變?yōu)檎麛?shù)的行列坐標(biāo)值,在數(shù)字高程模型中檢索到一個(gè)相應(yīng)的網(wǎng)格點(diǎn),該網(wǎng)格點(diǎn)即為該壩的位置在數(shù)字高程模型中的對(duì)應(yīng);由于水流方向圖與DEM 是同樣規(guī)格的,即有相同的空間參照系統(tǒng),有相同的網(wǎng)格劃分,網(wǎng)格點(diǎn)一一對(duì)應(yīng), 所以,根據(jù)得到的每個(gè)壩的位置在DEM中對(duì)應(yīng)的網(wǎng)格點(diǎn),很容易便可確定出該壩在 水流方向圖上的對(duì)應(yīng)網(wǎng)格點(diǎn)。步驟4:根據(jù)壩系規(guī)劃方案中的壩情況,創(chuàng)建初始?jí)蜗低負(fù)湟晥D。 在本發(fā)明中,初始?jí)蜗低負(fù)湟晥D的數(shù)據(jù)組織形式可為一維數(shù)組、關(guān)系型數(shù)據(jù)庫(kù) 表、二叉樹(shù)結(jié)構(gòu)或鏈表,也可為能夠體現(xiàn)淤地壩的存在性和壩間相互關(guān)系的任何形 式。初始?jí)蜗低負(fù)湟晥D的元素個(gè)數(shù)為壩系規(guī)劃方案中淤地壩的數(shù)量,每個(gè)元素具有 本壩、本壩的上游壩和本壩的下游壩三個(gè)組成部分,其中,本壩部分與壩系規(guī)劃方 案中的壩一一對(duì)應(yīng),本壩的上、下游壩部分置為不存在。下面以一維數(shù)組形式的拓?fù)湟晥D為例進(jìn)行詳細(xì)說(shuō)明如圖2,該拓?fù)湟晥D為一個(gè)一維數(shù)組,該數(shù)組的初始大小(即元素個(gè)數(shù))為壩系 規(guī)劃方案中淤地壩的個(gè)數(shù),如圖2所示,假設(shè)該數(shù)組具有N個(gè)元素Elementl至 ElementN。如圖3,設(shè)數(shù)組中的某個(gè)元素為ElementX,該元素具有三個(gè)組成部分該元素 本身代表的壩,即本壩,記為ElementX;該本壩具有與其存在聯(lián)系的上、下游壩, 該本壩的上游壩記為元素ElementU,該本壩的下游壩記為元素ElementD。上、下游 壩用指針表示。創(chuàng)建數(shù)組后,設(shè)置每個(gè)元素中的本壩部分,使得數(shù)組的每一個(gè)元素 與壩系規(guī)劃方案中的壩一一對(duì)應(yīng),并且將每個(gè)元素中的上游壩部分和下游壩部分均 置為不存在??梢钥闯?,此時(shí)的初始拓?fù)湟晥D實(shí)際上是沒(méi)有任何拓?fù)湫畔⒌?。步驟5:根據(jù)壩系規(guī)劃方案中的壩在水流方向圖中的位置情況,基于在全流域范 圍、全體壩均存在的假設(shè),生成壩系拓?fù)湟晥D。需要注意的是,該步驟生成的拓?fù)湟晥D沒(méi)有應(yīng)用任何空間、時(shí)間或其它條件加以限制,也沒(méi)有考慮建壩時(shí)間等情況, 該拓?fù)湟晥D僅僅是基于在全流域范圍、全體壩均存在的假設(shè)而得到的。該步驟具體 為由上可知,拓?fù)湟晥D中的某一元素的本壩部分用ElementX表示,該本壩的上游 壩部分用ElementU表示,該本壩的下游壩部分用ElementD表示,該本壩在水流方 向圖上的對(duì)應(yīng)網(wǎng)格點(diǎn)為CellX,對(duì)初始拓?fù)湟晥D中的每一個(gè)元素進(jìn)行如下處理a) 根據(jù)所述水流方向圖,取得該元素的本壩ElementX對(duì)應(yīng)的網(wǎng)格點(diǎn)CellX;b) 在所述水流方向圖上,取得網(wǎng)格點(diǎn)CellX的水流方向,據(jù)此得到該水流方向 所指向的緊鄰網(wǎng)格點(diǎn),該緊鄰網(wǎng)格點(diǎn)記為CellD;c) 判斷該網(wǎng)格點(diǎn)CellD是否位于所述水流方向圖的范圍內(nèi)若該網(wǎng)格點(diǎn)CellD 位于所述水流方向圖的范圍之外,則將該本壩的下游壩部分ElementD置為不存在, 結(jié)束對(duì)該本壩部分ElementX的處理過(guò)程;若該網(wǎng)格點(diǎn)CellD位于所述水流方向圖的 范圍之內(nèi),則繼續(xù)步驟d);d) 判斷該網(wǎng)格點(diǎn)CellD是否為其它壩的位置在所述水流方向圖上的對(duì)應(yīng)若是, 則將該本壩部分ElementX的下游壩部分ElementD置為對(duì)應(yīng)于網(wǎng)格點(diǎn)CellD的元素 的本壩部分,將對(duì)應(yīng)于網(wǎng)格點(diǎn)CellD的元素的上游壩部分置為EIementX,然后結(jié)束 對(duì)該本壩部分ElementX的處理過(guò)程;若不是,則繼續(xù)步驟e);e) 用網(wǎng)格點(diǎn)CellD替換網(wǎng)格點(diǎn)CdlX,繼續(xù)步驟b)。完成上述步驟后,拓?fù)湟晥D中的所有元素的ElementD、 ElementU部分都將被置 為不存在或是代表該本壩的上游壩或下游壩的元素。此時(shí),拓?fù)湟晥D的拓?fù)潢P(guān)系完 成了,拓?fù)湟晥D通過(guò)各個(gè)上下游壩的聯(lián)接而形成了一個(gè)網(wǎng)絡(luò)。需要注意的是,上述歩驟的執(zhí)行順序不是固定的,步驟4在步驟K步驟2或步 驟3之前實(shí)施均可。在實(shí)際應(yīng)用中,由于壩系構(gòu)建分析的復(fù)雜性,用戶需要的不僅僅是上述得到的 基于在全流域范圍、全體壩均存在假設(shè)的簡(jiǎn)單的壩系拓?fù)湟晥D。在上述初步得到的 壩系拓?fù)湟晥D的基礎(chǔ)上,還需要根據(jù)用戶給定的壩系規(guī)劃方案和限定條件來(lái)優(yōu)化當(dāng) 前的壩系拓?fù)湟晥D,而最終生成符合用戶需求的壩系拓?fù)湟晥D。 一般,限定條件可 包括時(shí)間(如年份)、空間(如某個(gè)集水范圍)或其它條件(如是否忽略中小型壩) 等。當(dāng)前的壩系拓?fù)湟晥D可根據(jù)用戶規(guī)劃需要而進(jìn)行任意限定條件單獨(dú)或組合情況 下的分析處理。下面分別以時(shí)間、壩類(lèi)型和空間條件為例進(jìn)行說(shuō)明。設(shè)拓?fù)湟晥D中的某一元素的本壩部分用ElementX表示,該本壩的上游壩部分用 ElementU表示,該本壩的下游壩部分用ElementD表示。若存在時(shí)間觀察條件,則對(duì)當(dāng)前壩系拓?fù)湟晥D中的每一個(gè)元素進(jìn)行如下處理 取得該元素本壩部分ElementX的建成年份,將該本壩的建成年份與時(shí)間觀察條件中指定的年份進(jìn)行比較;若該本壩的建成年份小于等于觀察條件中指定的年份,說(shuō)明該壩在指定的年份內(nèi),是已經(jīng)建好并起到淤地壩工程作用的壩,則對(duì)該元素不進(jìn)行處理;若該本壩的建成年份大于觀察條件中指定的年份,即不符合觀察條件,則對(duì)該元素進(jìn)行下面的處理a. 若該元素的上游壩部分ElementU不等于不存在,則將以該上游壩部分 ElementU作為本壩部分的元素的下游壩部分置為該本壩ElementX的下游壩部分 ElementD,且繼續(xù)步驟b;若該元素的上游壩部分ElementU等于不存在,則繼續(xù)步 驟b;b. 若該元素的下游壩部分ElementD不等于不存在,則將以該下游壩部分 ElementD作為本壩部分的元素的上游壩部分置為該本壩ElementX的上游壩部分 ElementU,且繼續(xù)步驟c;若該元素的下游壩部分ElementD等于不存在,則繼續(xù)步驟C;c. 刪除本壩部分為ElementX的元素。根據(jù)時(shí)間觀察條件對(duì)壩系拓?fù)湟晥D進(jìn)行處理后,不符合時(shí)間觀察條件的壩的任 何信息將不會(huì)存在于拓?fù)湟晥D中,拓?fù)湟晥D的網(wǎng)絡(luò)完整性得以保持。若存在壩類(lèi)型觀察條件,則對(duì)當(dāng)前壩系拓?fù)湟晥D中的每一個(gè)元素進(jìn)行如下處理-取得該元素本壩部分ElementX的壩類(lèi)型,將該本壩的壩類(lèi)型與壩類(lèi)型觀察條件 中指定的壩類(lèi)型進(jìn)行比較;若該本壩的壩類(lèi)型是觀察條件中指定的壩類(lèi)型,則對(duì)該元素不進(jìn)行處理; 若該本壩的壩類(lèi)型不是觀察條件中指定的壩類(lèi)型,則對(duì)該元素進(jìn)行下面的處理a. 若該元素的上游壩部分ElementU不等于不存在,則將以該上游壩部分 ElementU作為本壩部分的元素的下游壩部分置為該本壩ElementX的下游壩部分 ElementD,且繼續(xù)步驟b:若該元素的上游壩部分ElementU等于不存在,則繼續(xù)步 驟b;b. 若該元素的下游壩部分ElementD不等于不存在,則將以該下游壩部分 ElementD作為本壩部分的元素的上游壩部分置為該本壩ElementX的上游壩部分 ElementU,且繼續(xù)步驟c;若該元素的下游壩部分ElementD等于不存在,則繼續(xù)步驟C;c. 刪除本壩部分為ElementX的元素。根據(jù)壩類(lèi)型觀察條件對(duì)壩系拓?fù)湟晥D進(jìn)行處理后,不符合壩類(lèi)型觀察條件的壩的任何信息將不會(huì)存在于拓?fù)湟晥D中,拓?fù)湟晥D的網(wǎng)絡(luò)完整性得以保持。若存在空間觀察條件(空間觀察條件是指限定的子流域。該限定條件用子流域的邊界在地圖上的投影表示,為一個(gè)單環(huán)的平面多邊形。),則對(duì)當(dāng)前壩系拓?fù)湟?圖中的每一個(gè)元素進(jìn)行如下處理取得該元素本壩部分ElementX的地理位置,將該地理位置轉(zhuǎn)換為空間坐標(biāo)點(diǎn), 該空間坐標(biāo)點(diǎn)為平面多邊形所在坐標(biāo)系上的一個(gè)二維幾何點(diǎn),將該本壩的空間坐標(biāo) 點(diǎn)與空間觀察條件中指定的平面多邊形進(jìn)行比較,即判斷該幾何點(diǎn)是否位于給定的 平面多邊形內(nèi)部;若該本壩的坐標(biāo)點(diǎn)位于該平面多邊形內(nèi)部或邊緣,則對(duì)該元素不進(jìn)行處理; 若該本壩的坐標(biāo)點(diǎn)位于該平面多邊形外部,則對(duì)該元素進(jìn)行下面的處理a. 若該元素的上游壩部分ElementU不等于不存在,則將以該上游壩部分 ElementU作為本壩部分的元素的下游壩部分置為該本壩ElementX的下游壩部分 ElementD,且繼續(xù)步驟b;若該元素的上游壩部分ElementU等于不存在,則繼續(xù)步 驟b;b. 若該元素的下游壩部分ElementD不等于不存在,則將以該下游壩部分 ElementD作為本壩部分的元素的上游壩部分置為該本壩ElementX的上游壩部分 ElementU,且繼續(xù)步驟c;若該元素的下游壩部分ElementD等于不存在,則繼續(xù)步驟C;c. 刪除本壩部分為ElementX的元素。根據(jù)空間觀察條件對(duì)壩系拓?fù)湟晥D進(jìn)行處理后,不符合空間觀察條件的壩的任 何信息將不會(huì)存在于拓?fù)湟晥D中,拓?fù)湟晥D的網(wǎng)絡(luò)完整性得以保持。圖4至圖7示出了在一維數(shù)組形式的拓?fù)湟晥D中,刪除一個(gè)不符合觀察條件的 元素的過(guò)程,該被刪除的元素的上下游壩部分均存在,如圖4所示。首先,將以該 上游壩部分ElementU作為本壩部分的元素的下游壩部分置為該本壩ElementX的下 游壩部分ElementD,如圖5所示,增加箭頭線①,去掉箭頭線②,然后,將以該下 游壩部分ElementD作為本壩部分的元素的上游壩部分置為該本壩ElementX的上游 壩部分ElementU,如圖6所示,增加箭頭線③,去掉箭頭線④,最后,刪除本壩部 分為ElementX的元素,得到圖7所示的新關(guān)系視圖。由上可看出,通過(guò)上面各種觀察條件限定而處理得到的壩系拓?fù)湟晥D呈現(xiàn)了壩 系規(guī)劃方案在特定的時(shí)間、壩類(lèi)型、空間條件下的狀態(tài),并且該壩系拓?fù)湟晥D包含 了淤地壩之間的上下游關(guān)系,該壩系拓?fù)湟晥D可為專業(yè)分析過(guò)程提供足夠的基本信 息,實(shí)現(xiàn)拓?fù)湫畔⑴c專業(yè)分析功能相隔離的需求,從而可明顯降低實(shí)現(xiàn)專業(yè)分析功 能的難度,減小專業(yè)分析代碼的耦合性,降低軟件產(chǎn)品的缺陷率,提高軟件產(chǎn)品的 復(fù)用性。在本發(fā)明中,拓?fù)湟晥D的概念是十分靈活的,視圖中的淤地壩的數(shù)量可為0個(gè) 或0個(gè)以上。當(dāng)視圖中存在1個(gè)以上淤地壩時(shí),任意兩個(gè)淤地壩之間可能存在上下 游關(guān)系或不存在任何關(guān)系。淤地壩之間的關(guān)系也可以不是直接存在的,例如,拓?fù)?視圖中存在骨干壩G1、小型壩X1、中型壩Z2, G1位于Z2的下游,Z2位于X1的 下游,自然,G1也位于X1的下游,但在拓?fù)湟晥D中可以不直接記錄后一個(gè)關(guān)系,而是在需要知道G1與X1的關(guān)系時(shí)才通過(guò)簡(jiǎn)單推算得到。在生成用戶所需的壩系拓?fù)湟晥D后,用戶便可基于該壩系拓?fù)湟晥D提供的關(guān)于 壩系的基本信息而對(duì)壩系進(jìn)行專業(yè)分析了。例如,某個(gè)壩系有5座壩,壩系從2007年建設(shè)到2011年建設(shè)完成,2007年新 修建1座壩,2008年新修建2座壩,2009年新修建1座壩,2010年沒(méi)有新修建壩, 2011年新修建1座壩?,F(xiàn)需要分析2012年的保收能力。下面簡(jiǎn)單描述分析過(guò)程保收能力分析與壩類(lèi)型沒(méi)有關(guān)系,其只與時(shí)間、空間有關(guān)系。保收能力是指在 某一年內(nèi)的某座壩淤積厚度小于30cm,在IO年一遇的洪水下,淹水深度小于80cm, 則認(rèn)為此壩保收。不滿足此條件為不保收,在壩系中保收的壩地面積除以壩地總面 積為壩系的保收能力。可見(jiàn),計(jì)算保收能力需要兩個(gè)條件A、 2012年每一座壩的 淤積厚度;B、 2012年在IO年一遇的洪水下,每一座壩的淹水深度。求得2012年的壩系保收能力需要下面六個(gè)步驟來(lái)完成第一步計(jì)算到2012年每一座壩的淤積厚度;第二步計(jì)算2012年在10年一遇的洪水下每一座壩的淹水深度; 第三步判斷2012年每一座壩是否保收; 第四步計(jì)算壩系中保收的壩地總面積; 第五步計(jì)算壩系中壩地的總面積; 第六步計(jì)算壩系的保收能力。在上述整個(gè)計(jì)算過(guò)程中,步驟一和歩驟二中的淤積厚度計(jì)算和淹水深度計(jì)算需 要多次用到壩系拓?fù)湟晥D。如,在淤積厚度計(jì)算中,需要借助壩系拓?fù)湟晥D而逐年 求出每座壩的區(qū)間面積和來(lái)泥量,而在淹水深度計(jì)算中,需要借助壩系拓?fù)湟晥D而 求出2012年每座壩的區(qū)間面積、來(lái)泥量等數(shù)據(jù),這些繁瑣的計(jì)算都是人工不可能實(shí) 現(xiàn)的。由于保收能力分析與壩類(lèi)型沒(méi)有關(guān)系,而只與時(shí)間、空間有關(guān)系,所以保收 能力分析較簡(jiǎn)單。而實(shí)際的專業(yè)分析是更加繁瑣復(fù)雜的,故可見(jiàn),在專業(yè)分析前事 先生成蘊(yùn)含有各種壩系基本信息的壩系拓?fù)湟晥D是十分必要和重要的。本發(fā)明的優(yōu)點(diǎn)是在本發(fā)明中,由于壩系的基本信息用拓?fù)湟晥D的形式來(lái)表達(dá),拓?fù)湟晥D既包括 了滿足條件的淤地壩的信息,也包括了壩之間的關(guān)系信息,故將該拓?fù)湟晥D用作支 持專業(yè)分析功能的媒介,可有效地將專業(yè)分析計(jì)算過(guò)程與拓?fù)湫畔⒂?jì)算過(guò)程相隔離, 專業(yè)分析計(jì)算過(guò)程中不再需要任何額外的拓?fù)湫畔⒌挠?jì)算,流程控制很容易實(shí)現(xiàn), 減小了代碼的耦合性,專業(yè)人員在開(kāi)發(fā)專業(yè)分析功能時(shí),可將分析、設(shè)計(jì)、編碼的 重點(diǎn)放在業(yè)務(wù)邏輯上,不受拓?fù)湫畔⒂?jì)算問(wèn)題的干擾,減少了專業(yè)分析過(guò)程中的出 錯(cuò)可能,降低了小流域淤地壩壩系規(guī)劃輔助軟件的開(kāi)發(fā)難度,提高了軟件的復(fù)用性。 而且,當(dāng)由于壩系規(guī)劃理論、工作規(guī)范發(fā)生變化而需要修改或增加專業(yè)分析功能時(shí), 軟件的開(kāi)發(fā)工作也是容易實(shí)現(xiàn)的。
      權(quán)利要求
      1、一種小流域淤地壩壩系規(guī)劃用壩系拓?fù)湟晥D的生成方法,其特征在于它包括步驟步驟1對(duì)欲進(jìn)行壩系規(guī)劃的流域,準(zhǔn)備出該流域的數(shù)字高程模型;步驟2根據(jù)該流域的數(shù)字高程模型,計(jì)算出該流域的水流方向圖;步驟3在該流域的水流方向圖上,確定壩系規(guī)劃方案中的每個(gè)壩的位置;步驟4根據(jù)壩系規(guī)劃方案中的壩情況,創(chuàng)建初始?jí)蜗低負(fù)湟晥D;步驟5根據(jù)壩系規(guī)劃方案中的壩在水流方向圖中的位置情況,基于在全流域范圍、全體壩均存在的假設(shè),生成壩系拓?fù)湟晥D。
      2、 根據(jù)權(quán)利要求1所述的壩系拓?fù)湟晥D的生成方法,其特征在于 所述步驟3進(jìn)一步包括將壩的實(shí)際地理坐標(biāo)用所述數(shù)字高程模型所基于的坐標(biāo)系來(lái)表示,表示為點(diǎn)p(x,y);用與劃分所述數(shù)字高程模型網(wǎng)格相同的方法,將該點(diǎn) p(x,y)轉(zhuǎn)換為行列坐標(biāo)c(row,col),其中行坐標(biāo)值row和列坐標(biāo)值col均為實(shí)數(shù);通過(guò) 四舍五入的方法,將行坐標(biāo)值row和列坐標(biāo)值col均變?yōu)檎麛?shù);根據(jù)變?yōu)檎麛?shù)的行列 坐標(biāo)值,在所述數(shù)字高程模型中檢索到一個(gè)相應(yīng)的網(wǎng)格點(diǎn),該網(wǎng)格點(diǎn)即為該壩的位 置在所述數(shù)字高程模型中的對(duì)應(yīng);根據(jù)所述水流方向圖與所述數(shù)字高程模型的網(wǎng)格 點(diǎn)的 一 一 對(duì)應(yīng),確定該壩在所述水流方向圖上的對(duì)應(yīng)網(wǎng)格點(diǎn)。
      3、 根據(jù)權(quán)利要求1所述的壩系拓?fù)湟晥D的生成方法,其特征在于 在所述步驟4中,所述初始?jí)蜗低負(fù)湟晥D的元素個(gè)數(shù)為壩系規(guī)劃方案中淤地壩的數(shù)量,每個(gè)元素具有本壩、本壩的上游壩和本壩的下游壩三個(gè)組成部分,其中, 本壩部分與壩系規(guī)劃方案中的壩一一對(duì)應(yīng),本壩的上、下游壩部分置為不存在。
      4、 根據(jù)權(quán)利要求3所述的壩系拓?fù)湟晥D的生成方法,其特征在于 所述的初始?jí)蜗低負(fù)湟晥D的數(shù)據(jù)組織形式為一維數(shù)組、關(guān)系型數(shù)據(jù)庫(kù)表、二叉樹(shù)結(jié)構(gòu)、鏈表中的任一種。
      5、 根據(jù)權(quán)利要求1所述的壩系拓?fù)湟晥D的生成方法,其特征在于 所述步驟5進(jìn)一步包括設(shè)拓?fù)湟晥D中的某一元素的本壩部分用ElementX表示,該本壩的上游壩部分用 ElementU表示,該本壩的下游壩部分用ElementD表示,該本壩在所述水流方向圖上 的對(duì)應(yīng)網(wǎng)格點(diǎn)為CellX,對(duì)初始拓?fù)湟晥D中的每一個(gè)元素進(jìn)行如下處理a) 根據(jù)所述水流方向圖,取得該元素的本壩ElementX對(duì)應(yīng)的網(wǎng)格點(diǎn)CellX;b) 在所述水流方向圖上,取得網(wǎng)格點(diǎn)CellX的水流方向,據(jù)此得到該水流方向 所指向的緊鄰網(wǎng)格點(diǎn),該緊鄰網(wǎng)格點(diǎn)記為CellD;c) 判斷該網(wǎng)格點(diǎn)CellD是否位于所述水流方向圖的范圍內(nèi)若該網(wǎng)格點(diǎn)CellD位于所述水流方向圖的范圍之外,則將該本壩的下游壩部分ElementD置為不存在, 結(jié)束對(duì)該本壩部分ElementX的處理過(guò)程;若該網(wǎng)格點(diǎn)CellD位于所述水流方向圖的 范圍之內(nèi),則繼續(xù)步驟d);d) 判斷該網(wǎng)格點(diǎn)CellD是否為其它壩的位置在所述水流方向圖上的對(duì)應(yīng)若是, 則將該本壩部分ElementX的下游壩部分ElementD置為對(duì)應(yīng)于網(wǎng)格點(diǎn)CellD的元素 的本壩部分,將對(duì)應(yīng)于網(wǎng)格點(diǎn)CellD的元素的上游壩部分置為ElementX,然后結(jié)束 對(duì)該本壩部分ElementX的處理過(guò)程;若不是,則繼續(xù)步驟e);e) 用網(wǎng)格點(diǎn)CellD替換網(wǎng)格點(diǎn)CellX,繼續(xù)步驟b)。
      6、 根據(jù)權(quán)利要求1所述的壩系拓?fù)湟晥D的生成方法,其特征在于 所述步驟4可位于步驟1、步驟2或步驟3之前。
      7、 根據(jù)權(quán)利要求1或6所述的壩系拓?fù)湟晥D的生成方法,其特征在于 所述生成方法還包括設(shè)拓?fù)湟晥D中的某一元素的本壩部分用ElementX表示,該本壩的上游壩部分用ElementU表示,該本壩的下游壩部分用ElementD表示,若存在時(shí)間觀察條件,則對(duì)當(dāng)前壩系拓?fù)湟晥D中的每一個(gè)元素進(jìn)行如下處理 取得該元素本壩部分ElementX的建成年份,將該本壩的建成年份與時(shí)間觀察條件中指定的年份進(jìn)行比較;若該本壩的建成年份小于等于觀察條件中指定的年份,則對(duì)該元素不進(jìn)行處理; 若該本壩的建成年份大于觀察條件中指定的年份,則對(duì)該元素進(jìn)行下面的處理a. 若該元素的上游壩部分ElementU不等于不存在,則將以該上游壩部分 ElementU作為本壩部分的元素的下游壩部分置為該本壩ElementX的下游壩部分 ElementD,且繼續(xù)步驟b;若該元素的上游壩部分ElementU等于不存在,則繼續(xù)步 驟b;b. 若該元素的下游壩部分ElementD不等于不存在,則將以該下游壩部分 ElementD作為本壩部分的元素的上游壩部分置為該本壩ElementX的上游壩部分 ElementU,且繼續(xù)步驟c;若該元素的下游壩部分ElementD等于不存在,則繼續(xù)步驟C;c. 刪除本壩部分為ElementX的元素。
      8、 根據(jù)權(quán)利要求1或6所述的壩系拓?fù)湟晥D的生成方法,其特征在于 所述生成方法還包括-設(shè)拓?fù)湟晥D中的某一元素的本壩部分用ElementX表示,該本壩的上游壩部分用ElementU表示,該本壩的下游壩部分用ElementD表示,若存在壩類(lèi)型觀察條件,則對(duì)當(dāng)前壩系拓?fù)湟晥D中的每一個(gè)元素進(jìn)行如下處理 取得該元素本壩部分ElementX的壩類(lèi)型,將該本壩的壩類(lèi)型與壩類(lèi)型觀察條件中指定的壩類(lèi)型進(jìn)行比較;若該本壩的壩類(lèi)型是觀察條件中指定的壩類(lèi)型,則對(duì)該元素不進(jìn)行處理; 若該本壩的壩類(lèi)型不是觀察條件中指定的壩類(lèi)型,則對(duì)該元素進(jìn)行下面的處理a. 若該元素的上游壩部分ElementU不等于不存在,則將以該上游壩部分 ElementU作為本壩部分的元素的下游壩部分置為該本壩ElementX的下游壩部分 ElementD,且繼續(xù)步驟b;若該元素的上游壩部分ElementU等于不存在,則繼續(xù)步 驟b;b. 若該元素的下游壩部分ElementD不等于不存在,則將以該下游壩部分 ElementD作為本壩部分的元素的上游壩部分置為該本壩ElementX的上游壩部分 ElementU,且繼續(xù)步驟c;若該元素的下游壩部分ElementD等于不存在,則繼續(xù)步 驟c;c. 刪除本壩部分為ElementX的元素。
      9、根據(jù)權(quán)利要求1或6所述的壩系拓?fù)湟晥D的生成方法,其特征在于 所述生成方法還包括設(shè)拓?fù)湟晥D中的某一元素的本壩部分用ElementX表示,該本壩的上游壩部分用ElementU表示,該本壩的下游壩部分用ElementD表示,若存在空間觀察條件,則對(duì)當(dāng)前壩系拓?fù)湟晥D中的每一個(gè)元素進(jìn)行如下處理 取得該元素本壩部分ElementX的地理位置,將該地理位置轉(zhuǎn)換為空間坐標(biāo)點(diǎn),將該本壩的空間坐標(biāo)點(diǎn)與空間觀察條件中指定的平面多邊形進(jìn)行比較;若該本壩的坐標(biāo)點(diǎn)位于該平面多邊形內(nèi)部或邊緣,則對(duì)該元素不進(jìn)行處理; 若該本壩的坐標(biāo)點(diǎn)位于該平面多邊形外部,則對(duì)該元素進(jìn)行下面的處理a. 若該元素的上游壩部分ElementU不等于不存在,則將以該上游壩部分 ElementU作為本壩部分的元素的下游壩部分置為該本壩ElementX的下游壩部分 ElementD,且繼續(xù)步驟b;若該元素的上游壩部分ElementU等于不存在,則繼續(xù)步 驟b;b. 若該元素的下游壩部分ElementD不等于不存在,則將以該下游壩部分 ElementD作為本壩部分的元素的上游壩部分置為該本壩ElementX的上游壩部分 ElementU,且繼續(xù)步驟c;若該元素的下游壩部分ElementD等于不存在,則繼續(xù)步驟C;c. 刪除本壩部分為ElementX的元素。
      全文摘要
      本發(fā)明公開(kāi)了一種壩系拓?fù)湟晥D的生成方法,它包括步驟1.對(duì)欲進(jìn)行壩系規(guī)劃的流域,準(zhǔn)備出該流域的數(shù)字高程模型;2.根據(jù)該流域的數(shù)字高程模型,計(jì)算出該流域的水流方向圖;3.在該流域的水流方向圖上,確定壩系規(guī)劃方案中的每個(gè)壩的位置;4.根據(jù)壩系規(guī)劃方案中的壩情況,創(chuàng)建初始?jí)蜗低負(fù)湟晥D;5.根據(jù)壩系規(guī)劃方案中的壩在水流方向圖中的位置情況,基于在全流域范圍、全體壩均存在的假設(shè),生成壩系拓?fù)湟晥D。本發(fā)明生成的壩系拓?fù)湟晥D可有效將專業(yè)分析與拓?fù)湫畔⒂?jì)算過(guò)程相隔離,減小代碼的耦合性,減少專業(yè)分析過(guò)程中的出錯(cuò)可能,降低軟件的開(kāi)發(fā)難度,提高軟件的復(fù)用性。
      文檔編號(hào)G06F17/50GK101221598SQ20081005696
      公開(kāi)日2008年7月16日 申請(qǐng)日期2008年1月28日 優(yōu)先權(quán)日2008年1月28日
      發(fā)明者史明昌, 李團(tuán)宏, 黃兆偉 申請(qǐng)人:北京地拓科技發(fā)展有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1