中小河道库容量计算程序及说明.doc_第1页
中小河道库容量计算程序及说明.doc_第2页
中小河道库容量计算程序及说明.doc_第3页
中小河道库容量计算程序及说明.doc_第4页
中小河道库容量计算程序及说明.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

自由断面下河道水面积、库容量与水位的关系的计算程序崇明县农村水利所 赖海珍1. 程序使用计算机高级语言:Microsoft Visual Basic 6.0 中文专业版。2. 程序已知条件自由断面河道实测断面数据准坐标(起点距河底高程)。3. 程序功能通过计算机高级语言程序,构造适合的计算方法,计算不同水位下(04.0或以下)河道水面积、库容量。4. 程序计算方法程序开始 程序说明 定义变量,读写文件的定义,其它说明输入水深 程序计算范围,要求输入测量数据河底高程的最小及最大值程序循环 给定步长0.1,分别计算hLhH之间不同水位的库容量数据处理 找出给定水位下与实测河底曲线的两个交点(编制子程序1)数据积分 利用等距节点求积公式计算河道库容量(编制子程序2)水面积计算 两交点差与河道计算长度的乘积结果输出循环结束程序结束5.程序源代码- 10 -Private Sub Command1_Click()Dim hl, hh, sum, sumq, h, f0, f1, length As Singlemsg1$ = 请输入操作者姓名:handlers$ = InputBox$(msg1$)Text5.Text = handlers$Kill e:slghsl44.datOpen e:slghsl11.dat For Input As #1Open e:slghsl22.dat For Output As #2hl = 10Input #1, lengthDoInput #1, x0, y0If y0 = hl Then hl = y0End If hh = y0Loop Until EOF(1) = TruePrint #2, lengthPrint #2, hl, hhText1.Text = 最高水深 + Str$(hh) + 米, + 最低水深 + Str$(hl) + 米Text2.Text = 河道长度为 + Str$(length) + 米Close #1Close #2For jh = hl + 0.05 To hh Step 0.05 Open e:slghsl33.dat For Output As #3 Open e:slghsl99.dat For Append As #9 Print #9, jh Close #9 Print #3, length Print #3, hl, hh Close #3 Call sortion(jh) Open e:slghsl33.dat For Input As #3 n = 1 Input #3, length, hl1, hh1 Input #3, lev, plu begx = lev Do Input #3, lev, plu endx = lev n = n + 1 Loop Until EOF(3) = True Close #3 Open e:slghsl33.dat For Input As #4 Open e:slghsl44.dat For Append As #5 sum = 0# Input #4, length wdth = endx - begx area = wdth * length Print #5, Print #5, 计算条件:水深 h = , jh Print #5, 初始值:X-Begin = , begx, 终了值 X-End = , endx Print #5, 河道长度 Length = , length Print #5, 河道水面积 Area = , area Text3.Text = 河道水面积为 + Str$(area) + 平方米 Var = n Mod 2 Select Case VarCase 1 Input #4, hl, hh Input #4, xa, ya x0 = xa y0 = ya Do Input #4, xb, yb X1 = xb Y1 = yb Input #4, Xc, yc X2 = Xc Y2 = yc h = (X2 - x0) / 40 f0 = jh - y0 x = x0 For i = 1 To 40 x = x + h f1 = jh - (x - X1) * (x - X2) * y0 / (x0 - X1) / (x0 - X2) + (x - x0) * (x - X2) * Y1 / (X1 - x0) / (X1 - X2) + (x - x0) * (x - X1) * Y2 / (X2 - x0) / (X2 - X1) t = (f0 + f1) * h / 2 sum = sum + t fo = f1 Next sumq = sum * length Print #5, f0, f1, sum, sumq x0 = X2 y0 = Y2 Loop Until EOF(4) = True Print #5, 河道库容量 Volume = , sumq Text4.Text = 河道库容量为 + Str$(sumq) + 立方米 Close #4 Close #5Case 0 Input #4, hl, hh Input #4, xx, yy Input #4, xa, ya ss = (jh - yy) * (xx - xa) / 2 Print #5, ss x0 = xa y0 = ya Do Input #4, xb, yb X1 = xb Y1 = yb Input #4, Xc, yc X2 = Xc Y2 = yc h = (X2 - x0) / 40 f0 = jh - y0 x = x0 For i = 1 To 40 x = x + h f1 = jh - (x - X1) * (x - X2) * y0 / (x0 - X1) / (x0 - X2) + (x - x0) * (x - X2) * Y1 / (X1 - x0) / (X1 - X2) + (x - x0) * (x - X1) * Y2 / (X2 - x0) / (X2 - X1) t = (f0 + f1) * h / 2 sum = sum + t fo = f1 Next sumq = sum * length Print #5, f0, f1, sum, sumq x0 = X2 y0 = Y2 Loop Until EOF(4) = True Print #5, 河道库容量 Volume = , sumq Text4.Text = 河道库容量为 + Str$(sumq) + 立方米 Close #4 Close #5 End SelectNextKill e:slghsl99.datEnd SubPrivate Sub sortion(ByVal h As Single) 子程序Open e:slghsl11.dat For Input As #6Open e:slghsl33.dat For Append As #7xk = 0yk = 0Input #6, lengthDo xl = xk yl = yk Input #6, x0, y0 xk = x0 yk = y0Loop Until y0 h Then xm = xk + (xl - xk) * (h - yk) / (yl - yk) Print #7, xm, h Print #7, xk, yk End IfEnd IfSTART:Input #6, x3, y3If y3 h Then xn = x3 + (xl - x3) * (h - y3) / (yl - y3) Print #7, xn, h End If End IfEnd IfClose #6Close #7End SubPrivate Sub Command2_Click()EndEnd SubPrivate Sub Command3_Click()Form2.ShowForm1.HideEnd SubPrivate Sub Command4_Click()Form3.ShowForm1.HideEnd SubPrivate Sub Timer1_Timer()Label1.FontName = 华文楷体Label1.FontSize = 16Label1.Caption = 今天是 + Date$ + ,现在时间 + Time$End Sub6、程序操作说明6.1、程序功能说明主程序:主要功能是在给定的数据中,找出水深方向上最大及最小的值,界定数据积分时的上下限以及将子程序2给出的数据用等距节点求积公式得出所需的河道库容量及水面积。子程序:主要功能是在给定的数据中,通过三点曲线拟合的方式,分离出符合给定水深条件的全部数据。6.2、程序操作说明1、建立一个文件夹作为主存储文件目录;要求为 E:slgh(程序定义);2、在文件夹E:slgh 下建立一个文件sl11.dat ;3、将计算程序拷贝到指定目录 E:slgh 下;4、运行该程序,会要求输入操作者姓名;5、从 E:slgh 下检查计算成果文件sl44.dat,并

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论