摘要:該文用Matlab語言進行了水力仿真計算的設計,實現了明渠流,有壓管流和堰流對明渠流、有壓管流和堰流等計算并進行了驗證。
關鍵詞:Matlab;水力計算
中圖分類號:G623 文獻標識碼:A文章編號:1009-3044(2010)03-689-02
水力計算在農田排灌、水利水電,城市給排水工程的規劃設計中經常遇到,由于這些水深都是隱函數的一元高次方程,無解析解,傳統的方法就是試算作圖法、圖解法,這些方法既費時又費力,而且精度不高。近十年來,雖有不少新方法問世,但總有一定的局限性。用計算機進行水工程設計以及水力計算已成為現代水利科技工作者的有效手段。
隨著計算機編程軟件的不斷發展和完善,出現了許多專門應用于工程計算方面的軟件,Matlab 在這些軟件中獨占鰲頭。Matlab 編程代碼接近數學推導公式,簡捷直觀,與科技人員的思維和書寫習慣相適應,操作簡單,人機交互性能好,并且能方便迅速的用三維圖形、圖像、聲音、動畫等表達計算結果。本文用Matlab 語言對明渠流,有壓管流和堰流的水力計算進行了仿真計算,其效率和精度都非常高,而且其編程過程簡單易學,應用非常方便。
1 明渠流的水力仿真計算
1.1 梯形明渠均勻流水深及梯形渠道底寬的函數表達式
梯形明渠均勻流的函數表達式:
以上各式中:A為梯形過水斷面面積m2;x為濕周,Q為流量m3/s;h為均勻流水深m;b為梯形渠道底寬m;m為梯形斷面的邊坡系數;n為渠道糙率,i為渠道底坡。
1.2 應用Matlab 語言編程計算梯形渠道的均勻流水深
梯形明渠均勻流的數學模型程序如下:
f='(b+m*h)*h/(b+2* sq h*rt(1+m^2))^0.4-(n*Q/sqrt(I))^0.6';
梯形明渠均勻流方程中含有6 個參數,只要已知其中任意5個,用同一個模型可以求出第6 個參數。
例題:有一梯形渠道,已知流量Q=4.2m3/s,底坡i = 0.0069,粗糙系數n = 0.03,邊坡系數m = 1.5,渠底寬度b = 1.5m,求均勻流水深H。
由右圖1求出的解有兩個,顯然水深不能為負,因而均勻流水深的,精確解為0.8494270772m。
1.3 梯形明渠臨界水深的函數表達式
梯形明渠臨界水深的函數表達式:
a為動能修正系數;g為重力加速度(m/s2),hk為臨界水深m;AK為相應于臨界水深時的梯形過水斷面面積m2;Bk為相應于臨界水深時的水面寬度m;此處f(hk)為臨界水深函數表示符號,其他符號意義同上。
1.4 應用 Matlab語言編程計算梯形渠道的臨界水深
臨界水深的數學模型程序如下:
f='h-(alpha*Q^2/g*(b+2m*h))^(1/3)/(b+m*h)';
例題:已知某梯形渠道 ,設計流量為 Q = 8500 m3/s,渠底寬度 b = 20 m,邊坡系數 m = 1.5,試求該梯形明渠的臨界水深h。
如圖2所示,求出的梯形渠道臨界水深精確解為17.53099026m。
1.5 梯形渠道收縮水深的函數表達式
梯形收縮水深的求解方程式:
由式(3) 可寫出梯形明渠收縮水深的函數表達式
以上各式中:E0 為上游斷面總水頭m;hc 為收縮水深m;φ為流速系數;A 為收縮斷面面積m2;其他符號意義同上。
1.6 應用 Matlab語言編程計算梯形渠道的收縮水深
梯形收縮水深的數學模型如下:
f =’h-Q/((2*g)^0.5*(b+m*h)*phi*(E-h)^0.5)';
例題:已知壩前斷面總水頭 E = 15. 61 m,通過流量 Q = 180m3/s,梯形河槽底寬 b = 15 m,流速系數φ= 0. 87,求壩下斷面收縮水深。
如圖3所示,求出的解有 3 個,顯然第一、 第三個解為無效解,因此梯形渠道收縮水深精解為 0.7513790244 m。
1.7 梯形明渠共軛水深的函數表達式
梯形明渠共軛水深的函數表達式:
以上各式中:hc1 、hc2 分別為躍前和躍后過水斷面形心點的水深m;A1、A2 分別為躍前和躍后過水斷面面積m2,h1、h2分別為躍前和躍后水深m;此處f(x)為共軛水深數函數表示符號,其他符號意義同上。
1.8 應用 Matlab語言編程計算梯形明渠的共軛水深
梯形明渠共軛水深的數學模型如下:
f='Q^2*(1/((b+m*h2)-1/((b+m*h1))/g+b*(h2^2-h1^2)/2+m*(h2^3-h1 ^3)/3';
例題:已知梯形渠道 b = 5 m,m = 2. 5,Q= 30m3/s,h1 = 0. 45 m,求h2。
如圖4所示,求出的解有5個,前2個解為共軛水深,后3個解為無效。梯形明渠第二共軛水深精確解為 2.57310631m。
2 應用Matlab 語言編程計算短管的流量
短管的流量的數學模型程序如下:
f='Q-1/4*pi*d^2/(x*l/d+b)^0.5*(2*g*H)^0.5';
例題:用虹吸管自鉆井輸水至集水池,虹吸管長l=lAB+lBC=30m+40m= 70m,直徑d=200mm。鉆井至集水池間的恒定水位高差H=1.60m。又已知沿程阻力系數x=0.03,管路進口、120°彎頭、90°彎頭及出口處的局部阻力系數分別為ζ1=0.5,ζ2=0.2,ζ3=0.5,ζ4=1。求虹吸管的流量Q。
b=ζ1+ζ2+ζ3+ζ4=0.5+0.2+0.5+1=2.2
所以(由圖5所示),虹吸管的流量為0.04934m3/s。
3 應用 Matlab語言編程計算矩形薄壁堰的流量
矩形薄壁堰流量的數學模型如下:
1) h﹥P
f='Q1-(0.4034+0.0534H/P+1/(1610H-4.5))*B(2*g)^0.5*H^(3/2)';
2) h﹤P
f='Q2-1.05*(1+0.2(h-P)/0.5)*((P+H-h)/H)^(1/3)*Q1';
例題:有一矩形無側收縮薄壁堰,已知堰寬B=0.5m,上下堰高P=0.5m,堰上水頭H=0.2m,求:1)下游水深為h=0.4m時通過薄壁堰的流量;2)下游水深為h=0.6m時通過薄壁堰的流量。
1) h=0.4﹤P,下游水位低于堰頂,為自由出流。
所以(由圖6所示),下游水深為h=0.4m時通過薄壁堰的流量為0.847m3/s
2) h=0.6﹥P,下游水位高于堰頂,為淹沒出流。
所以(由圖7所示),下游水深為h=0.6m時通過薄壁堰的流量為0.977m3/s。
4 總結
Matlab 編程代碼接近數學推導公式,簡捷直觀,與科技人員的思維和書寫習慣相適應,操作簡單,人機交互性能好,并且能方便迅速的用三維圖形、圖像、聲音、動畫等表達計算結果。本文用Matlab 語言實現了基本的水力學仿真計算,對明渠流、有壓管流和堰流等水力計算進行了深入研究,得到了相應的結果并進行了驗證。
參考文獻:
[1] 嚴煦世,范瑾初.給水工程[M].3版.北京:中國建筑工業出版社,1995.
[2] 彭永臻,崔福義.給水排水工程計算機程序設計[M].北京:中國建筑工業出版社,1994.
[3] 鄭阿奇.ASP.NET實用教程[M].北京:電子工業出版社,2004.
[4] 湯代祿.ASP案例開發集錦[M].北京:電子工業出版社,2005.
[5] 甄鐳..NET與設計模式[M].北京:電子工業出版社,2005.