" />
所屬欄目:建筑設計論文 發布日期: 熱度:
摘要:研究拓撲關系在環狀給水管網中的應用,通過自動生成減少數據輸入量,更加方便的實現對管網的平差計算。利用AutoCAD下的VisualLISP開發語言編制程序,通過對管網圖形的分析和處理,實現對管段和節點的自動編號,在此基礎上,結合圖論的有關知識完成基環的自動搜索,生成回路矩陣;并能自動生成最小平方和法初分流量所用到的鄰接矩陣,從而為環狀給水管網的快速電算提供了可能。
關鍵詞:拓撲關系;基環;鄰接矩陣;VisualLISP
前言
在實際工作中,管網的設計、繪制大都是在AutoCAD中完成,因此基于AutoCAD對管網進行水力計算具有一定的實用性。在進行管網的水力計算過程中,需要確定基環、基環間的公共管段、管網的基本關系矩陣等,即管網的拓撲關系[1][2]。目前這些拓撲關系一般是通過人工確定的,特別對于大型管網的計算,既浪費時間也容易產生錯誤。VisualLISP是AutoCAD下的二次開發語言,借助其對AutoCAD圖形強大的處理能力,編制程序實現了管網水力計算和分析的自動化,可以完成對管網的自動編號,自動生成管網基本關系矩陣,從而完成管網拓撲關系的自動搜索,避免了大量原始數據和圖形拓撲數據的輸入,為管網的水力計算提供了方便。
1 拓撲關系的自動搜索
1.1管段和節點的自動編號[3]
管網圖形全部用直線(Line)來繪制,并使其都位于同一層上,方便訪問其底層數據庫。用VisualLISP的SsGet函數建立一個關于所有管線的選擇集,用SsLength函數可以得到管線的數目LenOfPipe。用Repeat函數循環LenOfPipe次,依次得到各個管線的圖元名,同時使用EntGet函數得到各個圖元的屬性,利用組碼或者ActiveX得到想要的圖元屬性,可以很方便的得到各個管線的端點坐標、管線長度等信息。使用Command函數調用AutoCAD的TEXT命令,從而對各個管線進行標注,顯示在圖形中。在得到所有管線端點坐標的基礎上,通過條件函數的使用得到所有節點的集合Totalpoint,使用Length函數可以得到管網中節點的個數,同樣對節點進行編號、標注。并且生成由節點號和節點坐標組成的表PointP;由管段號和管段兩端節點號組成的表PipeP。
1.2鄰接矩陣的生成
在對管網圖形中節點和管段編號的基礎上,利用對象選擇集函數可以得到節點i的所有以它為端點的管段,并生成節點管段表pointpipe,其格式為:(節點號管段號…),如1節點的節點管段表為(1910);根據節點管段表生成節點節點表pointp和管段節點表pipepoint,表pointp格式為:(節點號節點號…),如1節點的節點節點表為(137);表pipepoint的格式為:(管段號節點號節點號),如1管段的管段節點表為(189)。
鄰接矩陣用來表示節點之間的關系,鄰接矩陣的行數為節點數,列數也為節點數。鄰接矩陣A的元素值確定的步驟如下:
1,把矩陣A的所有元素值置為零;由節點管段表確定以i節點為端點的管段p,k,…,m。
2,對照節點節點表,可以得到管段p,k,…,m的另外一個端點h,j,…,l。
3,利用ActiveX函數確定管段的角度,并按其角度大小對管段p,k,…,m進行排列,若k<p<…<m,則依次填充i行h列,j列,…,l列值分別為2,1,…,n。
1.3基環的自動搜索[4]
利用鄰接矩陣可以自動判別基環,并通過鄰接矩陣轉化一個新的關聯矩陣B,用來判別基環的公共管段。基環的判別方法如下:
1, 令矩陣B維數和矩陣A相同,并把矩陣A中各元素值相應的賦予矩陣B中各元素,從而確定矩陣B;
2, 從第一行開始搜索矩陣B,找到大于零的元素,相應確定矩陣A的元素,從而確定節點i某一基環的起點,j為此基環的第二個節點;由元素確定元素,計算+1值,若為j行最大值,令+1值為1,根據此值確定其為元素,則此基環的第三個節點為節點k;
3, 按照步驟2的方法搜索基環的其他節點,若搜索到某一節點為i,則此次搜索結束,得到此基環的各個組成節點i,j,k…i。令此基環為第一個基環;
4, 從新定義矩陣B中各元素值。把此次搜索過程中所經歷的元素,,…所對應矩陣B中的元素,,…的值依次變為-1。若搜索的為第m個基環,則矩陣B中的元素,,…的值依次變為-m;
5, 按步驟2—5繼續搜索基環,直到矩陣B中沒有大于零的元素為止;由于搜索的結果包括外圍所有節點組成的輪廓環,通過調用面積函數,確定面積最大的環即為輪廓環,從而只得到基環。若輪廓環為L,令其所經歷的矩陣B中元素值變為零,其他小于-L的值全部加1。
2 矩陣的生成
管網圖形中管段、節點、環這三者之間的關系,可以用兩個基本關系矩陣[5][6]來表達。其余的關系矩陣可以由這兩個基本關系矩陣派生。基本關系矩陣包括環—管段矩陣和環—節點矩陣。
環—管段矩陣的行數為基環數,列數為包含管段數最多的基環所包括的管段的數目,矩陣元素為環所包括的管段的編號,運算關聯矩陣B,可以生成環—管段矩陣。步驟如下:
搜索矩陣B中元素,找到值為-n的所有元素,確定其中每個元素的所在的行和列,由此并參照管段節點表分別確定各個管段號,這些管段即為基環n的各組成管段,并分別把這些管段號填充到矩陣的n行各列中去。
環—節點矩陣的行數為基環數,列數為包含節點最多的基環所包括的節點的數目,矩陣元素為環所包括的節點的編號,運算關聯矩陣B,也可以生成環—節點矩陣。步驟如下:搜索矩陣B中元素,找到值為-n的所有元素,確定其中第一個元素所在的行和列,并把其行號和列號分別填充到矩陣的n行的第一列和第二列中去,再確定值為-n的其余元素的列號,
分別填充到矩陣的n行的其余列中。
3結論
本論文實現了對管網節點和管段的自動編號,完成了給水管網基環的自動搜索,為管網的水力計算提供了必要的數據準備,能準確、快捷地對管網進行平差計算。這種方法提高了給水管網計算的效率。
參考文獻:
文章標題:拓撲關系在環狀給水管網中的應用
轉載請注明來自:http://www.digitalguess.com/fblw/ligong/jianzhusheji/9505.html
A、B、C類核心期刊是以什么為依據...關注:313
sci投稿中關于online常見的問題匯...關注:636
攝影藝術領域AHCI期刊推薦《Phot...關注:526
Nature旗下多學科子刊Nature Com...關注:679
中小學教師值得了解,這些教育學...關注:304
2025年寫管理學論文可以用的19個...關注:508
測繪領域科技核心期刊選擇 輕松拿...關注:186
及時開論文檢索證明很重要關注:224
中國水產科學期刊是核心期刊嗎關注:294
國際出書需要了解的問題解答關注:246
合著出書能否評職稱?關注:197
電信學有哪些可投稿的SCI期刊,值...關注:185
通信工程行業論文選題關注:194
SCIE、ESCI、SSCI和AHCI期刊目錄...關注:288
評職稱發論文好還是出書好關注:170
復印報刊資料重要轉載來源期刊(...關注:149
SCI期刊分析
copyright © www.digitalguess.com, All Rights Reserved
搜論文知識網 冀ICP備15021333號-3