王鋒
(中國水電顧問集團成都院,成都 610072)
FORTRAN語言中文叫公式翻譯(FORmula T RANslation)語言,是IBM公司發(fā)明的最早的計算機高級語言。從20世紀(jì)70年代末起,FORT RAN語言用于PC計算機。Fortran語言是一門適合科學(xué)計算和工程分析的程序設(shè)計語言[1],盡管其歷史悠久,仍可利用它解決工程計算中遇到的繁瑣問題。
某工程是一座以航運、發(fā)電為主,兼具灌溉和旅游等綜合效益的一等樞紐工程,樞紐建筑物主要由船閘、泄洪閘、沖砂閘、河床式電站廠房等組成,有效庫容23.92億m3,設(shè)計洪水重現(xiàn)期500年一遇、校核洪水重現(xiàn)期2000年一遇,相應(yīng)的洪峰流量分別為59700 m3/s、67100 m3/s。5孔沖沙閘單孔凈寬16m,總凈寬80m,最大閘高55m,均采用寬頂堰,堰頂高程178.00,沖沙閘采用閘室分縫分離式結(jié)構(gòu),中閘墩厚度為4.2m,左側(cè)邊閘墩厚度3.6m,右側(cè)邊墩與施工縱向圍堰結(jié)合左邊墻(厚7m)結(jié)合。沖沙閘右側(cè)是與施工縱向圍堰結(jié)合的1孔泄洪閘,泄水孔口寬度為13m,為寬頂堰,堰頂高程183.00m,最大閘高55m。圍堰改建泄洪閘右側(cè)布置15孔泄洪閘,單寬13m,孔口總凈寬為195m,均為寬頂堰堰,堰頂頂高程181.00m,最大閘高63.5m,采用閘室分縫分離式結(jié)構(gòu),中墩厚度為3.8m,右側(cè)邊墩厚度為3.0m,左側(cè)邊墩與施工縱向圍堰結(jié)合左邊墻 (厚5m)結(jié)合。
該工程泄流計算具有流量大 (校核洪水=67100 m3/s)、堰頂水深深 (40m左右)、淹沒度大、閘孔數(shù)多且堰頂高程不同 (3個高程)的特點。泄流計算時,尤其是高水位計算時,淹沒度大,淹沒系數(shù)未知,需要試算求解,而不同堰頂高程對應(yīng)的上下游水深不同,淹沒系數(shù)不同,這更加大了手工試算的難度和工作量?,F(xiàn)有泄流計算程序,大多都是針對單一堰頂高程編寫,本工程不能適用,因此,采用FORTRAN編寫一段小程序來解決繁瑣的手工計算問題。
計算采用 《水力學(xué)》[2]中的寬頂堰流的計算公式
式中σs為淹沒系數(shù),查表內(nèi)插求得,ε1為側(cè)收縮系數(shù),m為流量系數(shù),n為閘孔數(shù),b′為閘孔凈寬,g為重力加速度,H為堰頂水頭。
泄流計算公式簡單,單一堰頂高程高淹沒度下的試算也并不復(fù)雜,但3個不同堰頂高程的聯(lián)合泄流試算則因為步驟繁瑣而工作量偏大,這恰好是“程序”最擅長的工作。通過簡單分解,將計算拆分成幾個簡單的“函數(shù)”,最后通過主程序調(diào)用各“函數(shù)”計算結(jié)果,即可完成一次計算;調(diào)整變量(下游水位)后,重復(fù)上述過程,得出新的結(jié)果。前后兩次計算結(jié)果差值滿足精度要求時,試算完成,進行下一水位試算。計算時,需要輸入的數(shù)據(jù)是閘址下游護坦處的“水位~流量”關(guān)系曲線,試算以下游水位為變量,聯(lián)合泄流總量為計算結(jié)果。程序流程簡圖見下圖2:
計算中需要輸入、輸出的數(shù)據(jù)均采用dat文件,包括下游水位~流量關(guān)系曲線和淹沒系數(shù)表,輸出文件為opt.dat。除主程序采用寬頂堰堰流公式外,下游水位插值和淹沒系數(shù)插值都為插值運算, 分別對應(yīng)子函數(shù) f1(x)、 f2(x), 行進流速子函數(shù)f3(x)根據(jù)上游河床斷面和上游水位求解。
本計算以堰頂最低的沖沙閘堰頂水頭HS=6m始計算至HS=45m,水位間隔1m。每個水位計算時,上游水位HS確定,假設(shè)下游水位為Hx=0.8HS(淹沒系數(shù)=1),算出樞紐聯(lián)合泄流總量Q1;根據(jù)Q1通過下游水位插值函數(shù)f1(x)得出對應(yīng)下游水位Hx1;又由Hx1通過淹沒系數(shù)插值函數(shù)f2(x),得出沖沙閘、圍堰改閘、泄洪閘各自對應(yīng)的淹沒系數(shù)σs1、σs2、σs3;將算出的淹沒系數(shù)帶入主程序得出新的泄流總量Q2;試算循環(huán)控制根據(jù)前后兩次計算出的總泄流量差值ΔQ=│Q1-Q2│為控制條件,當(dāng)ΔQ<1m3/s時,試算結(jié)束,進行下一水位試算。
根據(jù)水位~流量關(guān)系和淹沒系數(shù)表建立輸入文件 swll.dat和 ymxs.dat,輸入入口形狀系數(shù)0.1,運行程序得出泄流計算成果,見表1,表中列出了樞紐閘門全部開啟自由出流時,沖沙閘、圍堰改閘和泄洪閘在上游水位為184m~222m(間隔1m)時的泄流參數(shù),包括行進水頭、淹沒系數(shù)、下游水位以及各閘段的泄流總量。
圖2 泄流計算程序流程簡圖
表1 泄流計算成果表
隨機抽取一個上游水位216m為例,將沖沙閘、圍堰改閘、泄洪閘對應(yīng)側(cè)收縮系數(shù)ε1、淹沒系數(shù)σs和流量系數(shù)m代入公式 (1),經(jīng)驗證,總泄量Q為57339.83 m3/s,程序計算結(jié)果準(zhǔn)確。
根據(jù)表1的計算成果,作出本工程的水位-流量曲線見圖3。圖中上、下兩條曲線分別為樞紐上、下游水位-流量曲線,兩曲線基本平行,上、下游水位差不大。
現(xiàn)有通用計算程序有時不能滿足特殊工程計算需求,當(dāng)面對復(fù)雜的計算時,通過編寫小程序進行計算可提高工作效率。類似本工程泄流計算具有高淹沒、大流量、多堰高的特點,現(xiàn)有泄流計算程序,大多都是針對單一堰頂高程編寫,本工程不能適用。由于涉及3組堰頂高程淹沒系數(shù)的試算,手工計算繁瑣。通過利用Fortran編寫小程序進行計算,大大提高計算速度,也為其他類似工程計算積累了經(jīng)驗。
[1]彭國倫.Fort ran 95程序設(shè)計 [M].北京:中國電力出版社,2002.
[2]成都科技大學(xué)水力學(xué)教研室 吳持恭.水力學(xué) [M].北京:高等教育出版社,1995.
[3]中華人民共和國水利行業(yè)標(biāo)準(zhǔn)SL265—2001,水閘設(shè)計規(guī)范[S].