袁 超
(中國電建集團(tuán)西北勘測設(shè)計研究院有限公司,西安 710065)
水位流量關(guān)系是水電站工程設(shè)計中關(guān)鍵性的基礎(chǔ)工作,計算成果的可靠性對水能計算、樞紐消能防沖、確定機(jī)組安裝高程、施工設(shè)計等方面存在一定影響[1]。由于水工建筑物下游水位流量關(guān)系和河道水面線確定失當(dāng),導(dǎo)致工程局部破壞甚至危害主體建筑物安全等事故經(jīng)常發(fā)生[2]。水文觀測資料證明,河道中任何斷面的水位與流量關(guān)系,受泥沙淤積、河床沖刷、回水頂托、洪水波漲落等因素影響,都不是單一曲線,而是一多值對應(yīng)的曲線族[2-3]。國內(nèi)學(xué)者針對水位流量關(guān)系曲線計算方法做了大量的研究工作。羅銘等人推導(dǎo)了山區(qū)河流水位流量關(guān)系曲線計算公式[4]。馬經(jīng)安總結(jié)了單一水位流量關(guān)系曲線高水延長的常用方法[5]。楊克君等人分析了復(fù)式河槽流量計算的各種方法[6]。孫孝波、程銀才等人對受洪水漲落影響的水位流量關(guān)系單值化方法進(jìn)行了研究[7-8]。王昕、池宸星、吉辛望等人介紹了計算機(jī)軟件在水位流量曲線定線方面的應(yīng)用[9-11]。在水利水電工程前期設(shè)計階段,壩廠址河段尚無水位流量觀測資料,常用水力學(xué)方法推求壩址斷面水位流量關(guān)系曲線。大斷面測量數(shù)據(jù)成果存儲格式主要為.dwg和.xlsx,橫斷面形式有單式和復(fù)式兩種。利用Excel自帶功能推求大斷面水力參數(shù),計算難度較大,因此,針對Excel表格數(shù)據(jù),編制一款單(復(fù))式斷面水位流量關(guān)系曲線計算程序是十分必要的。本文基于VBA技術(shù),根據(jù)曼寧公式進(jìn)行水位流量關(guān)系曲線計算程序設(shè)計與開發(fā),為快遞、高效計算水利水電工程設(shè)計斷面水位流量關(guān)系曲線提供借鑒。
曼寧公式是1889年由美國水利學(xué)者曼寧提出的,反映水流與河床的部分關(guān)系以及河床內(nèi)部諸因素間的相互關(guān)系[12]。該公式適用于河道順直、河底平坦、河床沖淤變化小等河槽控制條件好的河段[5]。計算公式為:
式中:Q為斷面平均流量,m3/s;V為斷面平均流速,m/s;A為過水?dāng)嗝婷娣e,m2;n為河床糙率;R為水力半徑,m;S為水面比降。
過水?dāng)嗝婷娣e與水力半徑的計算公式如下:
×[L(i)-L(i-1)]
(2)
式中:Z為計算水位,m;L(i)為設(shè)計斷面起點距,m;H(i)為河底高程,m;X為濕周,m;R為水力半徑,m。
根據(jù)水電工程水位流量關(guān)系曲線計算要求,進(jìn)行程序功能設(shè)計,具體如下:
(1) 大斷面累距和高程數(shù)據(jù)輸入采用Excel數(shù)據(jù)區(qū)域選擇方式;
(2) 分單式、復(fù)式兩種斷面形式計算;
(3) 可設(shè)置不同水位計算步長;
(4) 可計算給定水位點對應(yīng)的水力要素;
(5) 水位流量曲線計算成果輸出采用Excel表格和圖形。
(1) 界面設(shè)計基本原則是保持與Excel軟件界面風(fēng)格保持統(tǒng)一,以下拉式菜單的方式嵌入Excel軟件,如圖1所示。
圖1 水位流量關(guān)系曲線程序下拉式菜單
(2) 大斷面數(shù)據(jù)(累距和高程)、特征高程點、復(fù)式斷面左右分界點(累距和高程)的均以數(shù)據(jù)區(qū)域選擇的方式輸入,其余參數(shù)按列表選擇框的方式輸入,具體見圖2。
圖2 水位流量關(guān)系曲線程序計算界面
(3) 計算結(jié)果輸出以數(shù)據(jù)列表和圖形的形式展示,數(shù)據(jù)保存采用Excel表格和圖形,具體見圖3~4。
圖3 水位流量關(guān)系曲線程序計算結(jié)果圖形界面
圖4 水位流量關(guān)系曲線程序計算結(jié)果表格界面
采用曼寧公式計算水位流量關(guān)系曲線的編程難點在于給定不同水位下復(fù)式斷面的水力要素計算,為此采用過程設(shè)計思路,將水力要素計算作為一個過程進(jìn)行封裝,參數(shù)變量為水位H0、高程H、累距L、過水面積A、河寬W、水力半徑R、濕周P,計算過程如下:
SubHp(H0AsVariant,H()AsDouble,l()AsDouble,AreaAsDouble,WidthAsDouble,RadiusAsDouble,PerimeterAsDouble)
DimjAsInteger
DimdAsDouble
Forj= 1ToUBound(H) - 1
IfH(j) >H0AndH(j+ 1) d= (l(j+ 1) -l(j)) * (H0-H(j+ 1))/(H(j) -H(j+ 1)) Area=Area+ 0.5 * (H0-H(j+ 1)) *d Perimeter=Perimeter+ (d^2 + (H0-H(j+ 1))^2)^0.5 Width=Width+d ElseIfH(j) <=H0AndH(j+ 1) <=H0Then d=l(j+ 1) -l(j) Area=Area+ 0.5 * (2 *H0-H(j) -H(j+ 1)) *d Perimeter=Perimeter+ (d^2 + (H(j) -H(j+ 1))^2)^0.5 Width=Width+d ElseIfH(j) d= (l(j+ 1) -l(j)) * (H0-H(j))/(H(j+ 1) -H(j)) Area=Area+ 0.5 * (H0-H(j)) *d Perimeter=Perimeter+ (d^2 + (H0-H(j))^2)^0.5 Width=Width+d EndIf IfPerimeter> 0Then Radius=Area/Perimeter Else Radius= 0 EndIf Nextj EndSub 根據(jù)某工程壩址大斷面測量資料,數(shù)據(jù)格式為.xlsx,打開大斷面Excel數(shù)據(jù)表格,通過加載宏添加本程序,在水文工具菜單中選擇水位流量關(guān)系激活本程序,分別選擇大斷面累距與高程數(shù)據(jù)系列,勾選復(fù)式斷面復(fù)選框,并選擇左右端點,設(shè)置計算步長、糙率、比降等參數(shù),點擊計算按鈕完成計算,結(jié)果圖4和圖6所示。點擊保存按鈕,可將計算結(jié)果保存為Excel數(shù)據(jù)表格和圖形。與已有計算成果對比,本程序計算結(jié)果是準(zhǔn)確的。 圖5 水位流量關(guān)系曲線程序計算結(jié)果圖形界面 圖6 水位流量關(guān)系曲線程序計算結(jié)果 經(jīng)實例檢驗,基于VBA技術(shù)開發(fā)的大斷面水力學(xué)參數(shù)與水位流量關(guān)系曲線計算程序計算結(jié)果準(zhǔn)確,可用于水電工程設(shè)計斷面水位流量關(guān)系計算。本程序中數(shù)據(jù)輸入、程序計算及成果輸出均基于Excel數(shù)據(jù)表格,具有操作簡便、可移植性、計算高效等特點,具有較好的工程實用價值。3 實例驗證
4 結(jié) 語