張文戟
(山西省水利水電科學研究院,山西 太原 030002)
在對濱海潮汐水域惠安核電廠溫排放的數值模擬工作中,濱海地區大面積水域平面二維網絡系統的生成是基礎性的工作。網絡點的布置以及生成網格的合理程度,直接影響到后續工作的科學性和可靠性。因此,在設計工作中要準確把握各項原始數據,充分分析地形特點,嚴格按照設計原則布置網格點,最終生成合理的網格系統,為惠安核電廠溫排放的數值模擬工作打下堅實的基礎。
網格系統的生成有著廣泛的實用價值,可分為規則的網格系統和不規則的網格系統兩大類。規則的網格系統是在給出規則的離散數據點的情況下建立的矩形網格。而在實際測量中,一般測出的數據都是非規則的離散數據點,這就要求建立更具靈活性和適應性的三角形網格系統。
目前國內外常用的三角形網格生成方法有徑向掃描生成三角形網格、區域生成三角形網格和自動聯結三角形網格3種方法。
徑向掃描生成三角形網格:一是建立三角網的開始點。該點要求靠近所設計區域的中心,以該點為結點向其他所有點做連線并計算距離和方位。二是對所連線的點以方位為序進行排列,把排好位置的點依次連線,形成一系列細長三角形。在鏈接處理過程中,通過鏈接把數據儲存起來并由這個鏈接形成一個邊界條件。每掃描一次發現三角形凹處即填補,然后將形成鏈接的結點與前后兩個結點進行分析比較,并檢查其是否形成內部三角形。如果形成則將其加入到數據庫中并將第二點去掉,重復處理并使結點形成凸形三角形邊界。三是測試所被連成沒有覆蓋的三角形網有的點,并對每個三角形及與其鄰接三角形進行測試。
生成三角形網格區域:將某個給定區域上的數據點分為邊界結點集和內節點集,如果在內節點集中存在一點使得該點與邊界點集中的任意一點的連線與邊界線只相交于一點,則稱該區域是一個星型區域,該點為星型區域的星型點。然后按照劃分區域為大單元、優化大單元、劃分小單元、優化小單元四個步驟最終生成三角形網。
自動聯結三角形網格離散點較多,只能將每個靠近的離散點組合形成三角形網格的方法。該方法思路清晰、簡單易懂、便于程序的編寫,因此,本文采用自動聯結三角形網格法。
通過在任務區域內合理分區布點,選擇基礎三角形,不斷向外擴展,覆蓋整個區域,然后根據所給地形圖刪除地形邊界外部以及島嶼內部的三角形,最終形成給定區域的平面二維網格系統。
3.2.1 分區規劃
各區網格點間步長不等,要按等比遞增數值進行分配,本次設計采用的步長為125 m,250 m,500 m,1 000 m,2 000 m。由于污染物排放口及其附近區域要求精度較高,此次采用步長125 m布點。在相鄰兩級的網格區布置上,下級的駐點必須是上級的格點。
區域分布比例既要考慮精度及后續數據可靠程度,又要考慮工作量。為在區域比例上平衡矛盾,在保證排污口附近網格密集程度的前提下,各區控制面積隨步長的增大而適當增大。
3.2.2 區域布點
區域布點分兩步進行:第一步,各區域以相應步長并以區域范圍控制點提供的布點范圍進行布置;第二步,以邊界外圍區域和內部島嶼邊界為界限,對第一步分區成果進行篩選、核查。
采用自動聯結三角形網方法,在布點分區完成后,將其中彼此最靠近的三點構成三角形,從而形成無交叉、無重復的三角形網。
第一,選定第一個三角形將其3個頂點的點號分別存入ver(1,1),ver(1,2),ver(1,3)中。三角形的第1個頂點ver(1,1)是n個離散點中左下角的點。然后將距離該點最近的點輸入ver(1,2)中為第2個頂點,找出距離此二點連線中點最近且不與這兩點在一直線上的點輸入到ver(1,3)中,作為第3個頂點。
第二,以三角形為基礎分別以其各邊向外擴展。先從其中一條邊開始,位于對頂點同側的點予以排除。為實現這一目的,要求在搜索擴展點之前限定尋點范圍并用叉積判別正負區原理來實現。方法如下:判斷點 m 和點 n 是否在直線(P1,P2)異側,設 m,n,P1,P2坐標分別為(x1,y1),(x2,y2),(x3,y3),(x4,y4),令 a=(y3-y1)×(x4-x1)-(y4-y1)×(x3-x1),b=(y3-y2)×(x4-x2)-(y4-y2)×(x3-x2),f=a×b,顯然,當 f大于 0 時,m,n 位于(P1,P2)異側;當 f小于 0 時,m,n 位于(P1,P2)同側;當f等于0時,m或n位于直線上。因此,與對頂點在被擴展直線異側的點才具有被擴展性。
在尋點范圍明確后,利用余弦定理找出各點中與擴展邊上兩點組成的角為最大者即為所求。至此,待擴展三角形的一邊已擴展完成。依此方法逐一進行,就可將此三角形擴展完全。然后,依此方法進入下一個三角形的擴展,進而擴展到整個區域。在具體的擴展中,還應注意以下問題:
第一,擴展的終止條件。在程序中具體實施三角形擴展時,設l為形成的計數號,k為用來擴展的三角形計數號。隨著擴展工作不斷進行,l和k均不斷增大,且k總是小于l。開始時,l的增大速度比k快,到擴展工作的末段,由于相互重復擴展的三角形逐漸增多,k的增長速度將超過l,當l等于k時,停止擴展。
第二,是對某條邊的重復擴展問題。由于待擴展的三角形號k在循環擴展過程中始終小于已生成的三角形數l,因此會出現有一些邊還沒來得及擴展就被新生成的三角形占用了。算上其歸屬的擴展三角形,這條邊已被重復用作兩次,已不再具備擴展資格。因此,在對某三角形一邊擴展之前,要對其進行審查。具體方法是:對待擴展邊是否已被擴展三角形以外的其他三角形占有進行判別。如果是,則取消其擴展資格;若不是,方可進行擴展,確保其擁有被擴展的資格后方可進行,否則會大量生成重復、交叉的三角形,并有可能引起不規則三角形的出現。
在濱海潮汐水域的數值模擬計算中,網格布置工作質量的可靠度起著決定作用。因此,有必要對網格布置進行分類及細化,以達到提高研究精度的目的。
作為科學研究的基礎性手段,平面二維網格系統的布置不僅可以對大面積水域的數值模擬作基礎性研究,甚至可以應用于更多的科研領域,如地下水、大面積鹽堿土壤、地理信息系統及高空氣象。通過對網格細化提高研究的精度是一種切實可行的研究方法,該方法已在濱海惠安核電站工程中進行了推廣應用,并取得了較好的效果。