寧鵬飛,許經(jīng)宇,高乃東,陳中竹
(吉林省水利水電勘測(cè)設(shè)計(jì)研究院,吉林 長(zhǎng)春 130021)
在水利工程中,土壩滲流量計(jì)算和浸潤(rùn)線的位置確定是土壩設(shè)計(jì)的重要工作,常常通過滲流量及浸潤(rùn)線確定土壩的安全性。在計(jì)算時(shí),根據(jù)壩體上下游水位、壩體形狀及材料等參數(shù)采用試算法確定浸潤(rùn)線方程。由于人工計(jì)算工程量大而且誤差大,因此本文引用Excel中的VBA編程進(jìn)行計(jì)算,大大地提高了計(jì)算的速度和精度。
在土壩設(shè)計(jì)中,各種土壩如均質(zhì)土壩、粘土心墻土壩、斜墻土壩無排水設(shè)備和貼坡排水等滲流計(jì)算理論基本相同,文章將以不透水地基上均質(zhì)土壩為例來論述VBA的滲流計(jì)算中應(yīng)用(如圖1所示)。
圖1 筑于水平不透水地基上的均質(zhì)土壩圖
土壩滲流常假定為平面問題去進(jìn)行分析,一般采用兩段法,建立上游段流量方程和下游段流量方程,通過方程聯(lián)立來求出浸潤(rùn)曲線下游溢出點(diǎn)的高度及單寬流量。
上游段所通過的單寬滲流量為:
下游段所通過的單寬流量為:
浸潤(rùn)曲線的方程式為:
式中:H1為壩上游水深;H2為下游水深;m1為上游邊坡;m2為下游邊坡;k為壩體滲透系數(shù);ΔL為等效矩形寬度;L為上游水位壩坡交點(diǎn)和下游壩坡與壩基交點(diǎn)的距離;hk為出水點(diǎn)水深;a0為逸出點(diǎn)水位以上的高度;q上游為壩體上游段單寬流量;q下游為壩體下游段單寬流量。
根據(jù)通過上下游段的單寬流量相等,由公式(1)、(2)、(3)、(4)聯(lián)立導(dǎo)出:
表1 迭代計(jì)算表
可以看出,公式(6)的兩側(cè)為關(guān)于a0的高次非線性方程,用一般純數(shù)學(xué)的解析方法是難以求解的。而Excel的VBA程序恰好能夠?qū)崿F(xiàn)這一功能。據(jù)此,運(yùn)用VBA編制程序計(jì)算可以在滿足設(shè)計(jì)要求的前提下準(zhǔn)確、高效地完成任務(wù)。
吉林省某均質(zhì)壩建于不透水地基上,壩高17 m,上游水深為15 m,下游水深為2 m,上游邊坡為3,下游邊坡為2,壩頂寬6 m,壩體土的滲透系數(shù)經(jīng)實(shí)驗(yàn)測(cè)得為0.001 cm/s。要求:計(jì)算單寬流量并畫出壩體內(nèi)的浸潤(rùn)線曲線。
通過以上已知條件,把 H1,H2,m1,m2,K,b 帶入公式(6)兩側(cè),則左右分別為關(guān)于a0的表達(dá)式,只要計(jì)算出一個(gè)a0使左右兩式的值相等,即為所求。根據(jù)a0的物理意義,取值范圍為 a0∈[0,(H1-H2)],給 a0賦予初始值(取 0.01),將分別得到公式(6)兩側(cè)的兩個(gè)值,如果兩值差的絕對(duì)值不滿足要求(如大于0.000 1),則繼續(xù)給a0賦予新值,新值為原值基礎(chǔ)上加一個(gè)微量(如0.001),重新計(jì)算,直到認(rèn)為兩值相等(即小于0.000 1),停止運(yùn)算,此時(shí)a0的值即為所求。通過公式(4)的變形公式hk=a0+H2可求hk,在計(jì)算出hk后通過公式(5)則能求出浸潤(rùn)曲線方程。
VBA是基于Microsoft Excel提供的IDE編程環(huán)境實(shí)現(xiàn)的一種自動(dòng)化程序語言,通過在Excel的“宏”實(shí)現(xiàn)程序的自動(dòng)化運(yùn)行。在“工具”菜單下找到“宏”,點(diǎn)開“Visual Basic編輯器”,執(zhí)行以下程序即可實(shí)現(xiàn)例題的求解結(jié)果。
將已知條件輸入編好的電子表格中,按“點(diǎn)擊計(jì)算”按鈕再開始循環(huán)計(jì)算,直到L3和M3相等為止,a0,hk即為所求結(jié)果,如表1所示。
表2 浸潤(rùn)線坐標(biāo)點(diǎn)計(jì)算
將hk值帶入到公式(5)中,得下式:
根據(jù) x 的取值范圍[0,L+ΔL-m2·hk],即[0,42.1],計(jì)算出浸潤(rùn)線坐標(biāo)點(diǎn)如表2所示。
按描點(diǎn)法繪出如圖1中所示的浸潤(rùn)曲線,其上游段是從A′點(diǎn)開始的,而實(shí)際式(7)從A點(diǎn)滲入壩體,故需對(duì)前段A′F加以修正,采用近似方法把A點(diǎn)作為上游起點(diǎn),與F點(diǎn)光滑連接。
通過VBA在滲流計(jì)算中的應(yīng)用,將復(fù)雜的試算過程用計(jì)算機(jī)程序來實(shí)現(xiàn),省去了大量計(jì)算的工作時(shí)間和查表帶來的誤差以及人工試算的繁雜過程,并通過在Excel表格中的可視化做到了輸入、輸出格式直觀方便,大大提高了準(zhǔn)確率和工作效率。此方法適合大部分含有復(fù)雜試算過程的工程計(jì)算,比如溢流壩下游收縮水深,明渠均勻流正常水深及臨界水深、消力池收縮水深等,供參考使用。
[1]神龍工作室編著.Excel高效辦公:VBA范例應(yīng)用[M].北京:人民郵電出版社,2006.
[2]李煒主編.水力學(xué)計(jì)算手冊(cè)(第二版)[M].北京:中國(guó)水利水電出版社,2006.