APP下载

基于Matlab水位—流量关系曲线的高水延长

2015-10-26刘涛

南方农业·下旬 2015年9期
关键词:水位

刘涛

摘 要 水位-流量关系曲线的高水延长是流量信息处理的一个重要环节,传统的人工方式工作量大,且精度不高。在Matlab平台编写5个独立M文件,分别实现曼宁公式4种情况和斯蒂文斯法水位-流量曲线外延,并以某,水文站水位流量实测资料为基础检验了方法的正确性,为水文学中水位-流量关系曲线高水延长的绘制提供了一种新的办法。

关键词 水位-流量曲线;Matlab;曼宁公式;斯蒂文斯公式;高水延长

中图分类号:TV122.5 文献标志码:B 文章编号:1673-890X(2015)27--03

测站测流时,由于施测条件限制或其他种种原因,致使最高水位的流量缺测或漏测。为取得全年完整流量过程,必须进行高水时水位-流量关系的延长。高水延长的结果,对洪水期流量过程的主要部分,包括洪峰流量在内,有重大影响,因此延长需慎重[1]。池宸星[2]研究了水位流量关系曲线的计算机辅助率确定与应用。程晓波[3]等人研究了利用Excel规划求解拟合“水位-流量”关系曲线。但都只对已知“水位-流量”散点进行拟合并未延伸。本文对如何应用Matlab实现“水位-流量”关系曲线的高水延长进行了研究,并给出了利用Matlab实现“水位-流量”曲线高水延长的M文件,具有重复和可操作性。

1 水位流量曲线的延长

1.1 水位流量曲线的手工延长

手工方式工作量繁重[2],且精度无法确定。在普通方格纸上,纵坐标是水位,横坐标是流量,点绘的水位流量关系点据密集,分布成一带状,75%以上的中高水流速仪测流点据的平均关系线的偏离不超过±5%,且关系点没有明显的系统偏离,这时即可通过点群中心定一条单一线。点图时,在同一张图纸上依次点绘水位流量、水位面积、水位流速关系曲线,并用同一水位下的面积与流速的乘积,校核水位流量关系曲线中的流量,使误差控制在±2%~±3%。以上3条曲线比例尺的选择,应使它们与横轴的夹角分别近似为45°、60°、60°,且互不相交[1]。

1.2 水位流量曲线Matlab延长

Matlab是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境.在输入输出方面,可以直接向Excel和HDF5进行连接[4]。Cftool是Matlab简单实用而强大的曲线拟合工具箱,支持多种关系曲线模型,如线性、多项式、幂函数等。实际应用时从这些曲线拟合方法中选择最优的作为结果,由于水位流量曲线的特殊性,应用时采用人机交互界面是Matlab的一个重大优势。

Matlab延长水位-流量曲线只需要运行独立的M文件就可以实现曲线的绘制,cftool工具箱界面会给出曲线模型的具体表达式和拟合分析,还能实现图形的输出。

2 程序设计

利用Matlab平台编制“manning1.m”,“manning2.m”,“manning3.m”,“manning4.m”,“stevens.m”5个M文件,分别用来绘制曼宁公式外延4种情况和斯蒂文斯法外延,并都保存在Matlab work子目录中以便调用。

曼宁公式V=(R2/3S1/2)/n     (1)

式(1)中:V为流速,R为水力半径,S为水面比降,n为糙率

延长时,用上式计算流速,用实测大断面资料延长水位面积关系曲线,从而达到延长水位流量的目的.计算流速时,因水力半径R可用大断面资料求得,故关键在于确定水面比降S和糙率n值。给出曼宁公式的一种情况,manning4.m,其他情况类似.

2.1 曼宁公式第4种情况

糙率n和水面比降S均没有资料,则由(S1/2)/n=Q/(AR2/3),画出Z~S1/2/n 曲线 并延长(Z比较大时,S1/2/n趋近于常数)则由Q=(AR2/3S1/2)/n求出Q。

利用Matlab平台编制的M文件,manning4编程和变量解释如下:

Z=input('请输入水位:');

Q1=input(‘请输入流量:);% 只需输入已知水位对应流量

A=input(‘请输入断面面积:);

R=input(‘请输入水力半径:);

m1=length(Q1); %求出流量数组的长度

Z1=Z(:,1:m1); %Z1为已知流量对应的水位

Z2=Z(:,m1+1:end); %Z2为未知流量对应的水位

A1=A(:,1:m1);

A2=A(:,m1+1:end);

R1=R(:,1:m1);

R2=R(:,m1+1:end);

y1=Q1./(A1.*R1.^(2/3));

p1=polyfit(Z1,y1,3); %由于只能由已知水位Z求y1,故根据y1~Z1散点大致形状选择合适多项式拟合次数

y2=polyval(p1,Z2); %根据拟合出曲线求未知流量水位对应的y2

Q2=A2.*R2.^(2/3).*y2;

Q=[Q1,Q2]; %将Q1,Q2合并为一个数组

cftool(Q,Z);  %用拟合工具拟合Q,Z

2.2 斯蒂文斯法

由谢才流速公式导出流量为Q=CA(RS)1/2 式中:C为谢才系数,其余符号同前.

对于断面无明显冲於,水深不大但水面较宽的河槽,以断面平均水深h代替R,则上式可改写为Q=CA(hS)1/2=KAh1/2

式中,K=CS1/2,高水时其值接近常数。故高水时Q-Ah1/2呈线性关系,据此外延.由大断面资料计算Ah1/2并点绘不同高水位Z在Z-Ah1/2曲线上查得Ah1/2值,并以Q-Ah1/2曲线上查得Q值,根据对应的(Z,Q)点据,便可以实现水位与流量关系曲线的高水延长。

利用Matlab平台编制的M文件,stevens编程和变量解释如下:

Z=input('请输入水位:');

Q1=input('请输入流量:');%只需输入已知水位对应流量

A=input('请输入断面面积:');

h=input('请输入水力半径或断面平均水深:');

m1=length(Q1); %求出流量数组的长度

A1=A(:,1:m1);

A2=A(:,m1+1:end);

h1=h(:,1:m1);

h2=h(:,m1+1:end);

m2=A1.*h1.^(1/2);

p1=polyfit(m2,Q1,1); %由于高水时Q1-m2呈线性关系,所以拟合次数为1

m3=A2.*h2.^(1/2); %计算未知流量大断面的Ah1/2值

Q2=polyval(p1,m3); %根据拟合出曲线求未知流量水位对应的流量

Q=[Q1,Q2]; %将Q1,Q2合并为一个数组

cftool(Q,Z); %用拟合工具拟合Q,Z

3 实例

某水文站的水位流量资料如表1所示。

用stevens法实现水位流量曲线的过程如下:

在Command Window运行“stevens”M文件后,窗口会提示输入变量,将表格中变量复制到窗口中后,弹出“cftool”工具箱,选择最合适的曲线模型,则出现水位流量曲线结果如图1,得出的结果与实测结果误差分析见表2。

4 结语

通过编写5个M文件,分别实现曼宁公式四种情况和斯蒂文斯法水位-流量曲线外延,通过“cftool”工具箱选取合适的曲线模型拟合,通过实例分析,验证了程序的正确性.本程序适用于水位-流量曲线高水延长的绘制,具有具有重复和可操作性,为水文学中水位-流量关系曲线延长的绘制提供了一种新的办法.

参考文献

[1]詹道江,徐向阳,陈元芳.工程水文学[M].北京:中国水利水电出版社,2009.

[2]池宸星.水位流量关系曲线的计算机辅助率定与应用[J].水文,2009,29(1):38-41.

[3]陈晓波,高峰,王永伟,等.利用Excel规划求解工具拟合“水位-流量”关系曲线[J].气象水文海洋仪器,2013,2(2):62-65,97.

[4]徐金明.MATLAB实用教程[M].北京:清华大学出版社,北京交通大学出版社,2005.

(责任编辑:刘昀)

猜你喜欢

水位
基于灰度拉伸的图像水位识别方法研究
双塔水库抬高汛期限制水位的可行性探讨
戈家寨水库汛限水位设置的必要性
通航水位智能监测与预警应用
基于MFAC-PID的核电站蒸汽发生器水位控制
基于功能的地下水控制水位确定方法
基于水生态修复的滇池运行水位确定
基于PLC的水位控制系统的设计与研究
七年级数学期中测试题(B)