周传争水文预报课程设计报告

更新时间:2023-04-13 06:34:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

周传争水文预报课程设计报告

水文预报课程设计(文天学院11级)

班级

学号

姓名周

成绩

河海大院

2014年1月4日

1

周传争水文预报课程设计报告

一基本任务

任务一:

根据已给数据资料(本文选取1995、1996年的历史数据)、参数,编写程序将流域作为整体:

(1)进行日模型产流量计算;

(2)将计算年径流与实测年径流进行比较,优选蒸发折算系数Kc;

任务二

根据已给设计暴雨资料、参数,编写程序,将流域作为整体:

(1)进行次洪产流量、划分水源

(2)直接径流汇流、地下径流汇流计算;

(3)绘出直接径流过程、地下径流过程、总的流量过程(绘制成图)。

二基本资料

(1)研究流域概况

呈村流域控制面积为290 km2,地势南高北低,相对高差较大,平均海拔高程为583 m,流域河道平均坡度为0.95%,最大汇流路径长度为36 km。流域内植被良好,雨量充沛,多年平均降雨量约为2100 mm,流域降水在年内年际分配极不均匀,为典型的湿润流域。该流域植被类型主要包括常绿针叶林、落叶阔叶林、混合林、森林地、林地草原、牧草地与作物地,土壤类型主要为黏壤土。流域内地势平缓,土壤主要有黄壤和砂壤,具有明显的腐殖层,淀积层和母质土等层次结构,透水性好。台地、丘陵多生长松、杉、樟等高大乔木;平原则以种植农作物和经济作物为主,植被良好。

2

周 传 争 水文预报课程设计报告

3

三 基本数据

(1) 计算的呈村流域面积2902

km 。

(2) 流域内有10个雨量站:呈村、董坑呜、棣甸、樟源口 、汪村、用功城、左

龙、冯村、田里、大连,各站面积比例分别为:0.1, 0.1, 0.10, 0.1,0.1, 0.1, 0.1, 0.1, 0.1, 0.1

(3) 资料放在/周传争Data/文件夹下,以年份命名的文件,数据格式为:T (i )、

Q(i)、E(i)、P1(i)、 P2(i)、P3(i)、P4(i)、P5(i)、P6(i)、P7(i)、P8(i)、P9(i)、P10(i)。

(4)暴雨资料放在/周传争Data/文件夹下pdata.csv

(5)单位线数据在/周传争Data/文件夹下unitgraph.csv

(5)计算参数如下表

周传争水文预报课程设计报告

表一任务一计算参数

表二任务二参数表

表三各参数物理意义

四计算公式

1.蒸散发计算

根据流域特点,蒸散发计算采用的是三层蒸散发计算模式。

三层蒸发模式的具体计算如下:

(1)当WU+P≥Ep时

EU= Ep EL=0 ED=0

4

周 传 争 水文预报课程设计报告

5 (2)当WU+P

EU=WU+P EL=(Ep-EU)* WL/WLM ED=0

(3)当WU+P

EU=WU+P EL=C*(Ep-EU) ED=0

(4)当WU+P

EU=WU+P EL=WL ED=C*(Ep-EU)-EL

土壤蒸发量:E=EU+EL+ED (同时刻相加)

2.产流量计算

根据流域特点,产流量计算系根据蓄满产流理论得出的。蓄满产流,即任一地点上,土壤含水量达田间持水量前,降雨量全部补充土壤含水量,不产流;当土壤蓄满后,其后续降雨量全部产生径流。

PE>0,产流;否则不产流。

周 传 争 水文预报课程设计报告

6

初始初始土湿分布与计算

建立降雨流量关系

1

11-1-)b W a WMM WM +

??=????

(1)当PE+a

1

(1b PE a R PE W WM WMM

++=+--

(2)当PE+a>=WMM

()R PE WM W =--

3,水源划分

流域坡地上的降雨产流量因产流过程的条件和运动路径不同,受流域的调蓄作用不同,各径流成分在流量过程线上的反应是不一样的。常需按各种径流分成分别计算或模拟,因而要对产流量进行水源划分,本报告采用二水源的水源划分结构。

周 传 争 水文预报课程设计报告

7

()i i i i i i i i PE FC PE FC i i i i PE FC r RG FC r

PE r RS PE FC PE >≤>=?

+=

-∑∑∑即

4汇流计算 根据流域净雨和流域径流单位线,地下径流汇流采用线性水库用卷积的差分形式算出流域出口的流量过程。

计算公式如下:

QS(I)=RS(I)*U

QG(I)=CG*RG(I)*U+(1-CG)*QG(I-1)

Q(I)=QS(I)+QG(I)

式中, U 为单位转换系数。 2()

3.6(h)F km U t =?

五 注意事项

(1)用给定权重计算流域面平均雨量

(2)编程注意闰年天数366,非闰年天数365

(3)参数Kc 自己优选,优选范围:0.90-1.30

(4)Kc 优选原则:计算的2年资料的Kc 应相同并使得2年内每年的年径流相

对误差尽可能不超过5%

六 计算结果

任务一:

详细率定过程见文件夹/周传争Data/周传争日模优选Kc 计算结果.csv 考虑到使两年相对误差在5%以内,kc 优选值在0.9—1.3以内最终结果如

周传争水文预报课程设计报告

下表:

表四日模计算成果表

任务二:

次模计算结果见文件夹/周传争Data/周传争任务二:次洪水源划分及汇流结果.csv, 汇流过程如下表、图

表五,次洪水源划分及汇流结果

P(i), R(i), Rd(i), Rg(i), QS(i), QG(i), Q(i)

1.3 0.5 0 0.5 0 4.4 4.4

0.3 0.1 0 0.1 0 4.4 4.4

0.3 0.1 0 0.1 0 4.5 4.5

0.6 0.2 0 0.2 0 4.6 4.6

0.3 0.1 0 0.1 0 4.6 4.6

8

周传争水文预报课程设计报告

0.3 0.1 0 0.1 0 4.7 4.7 0.5 0.2 0 0.2 0 4.8 4.8 0 0 0 0 0 4.8 4.8 0.1 0 0 0 0 4.7 4.7 0.1 0 0 0 0 4.7 4.7 0.2 0.1 0 0.1 0 4.7 4.7 0.2 0.1 0 0.1 0 4.7 4.7 0.1 0 0 0 0 4.7 4.7

0.3 0.1 0 0.1 0 4.7 4.7

1.7 0.7 0 0.7 0 5.3 5.3 3.2 1.4 0.5 0.9 0 6.0 6.0 1.6 0.7 0 0.7 0 6.6 6.6

1.8 0.8 0 0.8 0.25 7.2 7.5

2.7 1.2 0.3 0.9 0.6 7.9 8.5

3.4 1.6 0.6 1 1.5 8.7 10.2 3.2 1.6 0.6 1 3.4 9.5 12.9 2.7 1.4 0.4 1 6.66 10.3 17.0 1 0.5 0 0.5 6.92 10.6 17.5 1 0.5 0 0.5 8.570001 11.0 19.5 0.9 0.5 0 0.5 12.93 11.3 2

4.2 0.6 0.3 0 0.3 18.05 11.4 29.5 0.5 0.3 0 0.3 20.69 11.6 32.2 0.5 0.3 0 0.3 19.47 11.7 31.2 0.5 0.3 0 0.3 1

5.76 11.8 27.6 0.4 0.2 0 0.2 12.98 11.9 24.9 2.2 1.3 0.1 1.2 10.99 12.8 23.8

4.7 2.9 1.7 1.2 9.52 13.7 23.3

5 3.3 2 1.3 8.04 14.7 22.8 3.1 2.2 0.8 1.4 7.29 15.8 23.1 1.7 1.2 0 1.2 8.23 16.7 24.9 5 4.1 2.4 1.7 12.39 18.0 30.4 2.2 2.1 0.1 2 22.47 19.

6 42.1 1.2 1.1 0 1.1 40.98 20.4 61.3 1.2 1 0 1 52.62 21.0 73.6 4.4 4.3 2.3 2 53.22 22.6 75.8 7.2 7.1 5.1 2 52.8

7 24.1 77.0 4.1 4 2 2 61.13 25.6 86.7 6 5.9 3.9 2 57.23 27.1 84.3 5.5 5.3 3.3 2 57.16 28.6 85.7

3 2.9 0.9 2 69.95 30.0 100.0 2.5 2.

4 0.4 2 102.16 31.

5 133.

6 2.5 2.4 0.4 2 137.46 32.9 170.3

2 1.9 0 1.9 148.64 34.2 182.8 2.8 2.6 0.7 1.9 161.41 35.5 196.9

9

周传争水文预报课程设计报告

5 4.9 2.9 2 159.31 36.9 196.2 2.3 2.2 0.2 2 140.98 38.3 179.2 0.

6 0.5 0 0.5 124.6

7 38.3 163.0 0.6 0.6 0 0.6 111.03 38.4 149.4 0.6 0.6 0 0.6 102.59 38.5 141.1 0.4 0.4 0 0.4 101.49 38.4 139.9 0 0 0 0 101.89 38.0 139.9 0.1 0.1 0 0.1 84.7 37.7 122.4 0.1 0.1 0 0.1 67.93001 37.4 105.3 0.1 0.1 0 0.1 56.07 37.0 93.1 0 0 0 0 48.84 36.6 85.5 0 0 0 0 43.19 36.2 79.4 0 0 0 0 36.82 35.

8 72.6 0 0 0 0 30.68 35.4 66.1 0 0 0 0 25.13 35.0 60.2 0 0 0 0 20.34 34.7 55.0 0 0 0 0 17.41 34.3 51.7 0 0 0 0 15.13 33.

9 49.0 0 0 0 0 12.92 33.5 46.4 0 0 0 0 10.64 33.2 43.8 0 0 0 0 8.14 32.8 40.9 0 0 0 0 6.14 32.4 38.6 0 0 0 0 4.67 32.1 36.7 0 0 0 0 3.4 31.7 35.1 0 0 0 0 2.52 31.4 33.9 0 0 0 0 1.97 31.0 33.0 0 0 0 0 1.51 30.7 32.2 0 0 0 0 1.09 30.3 31.4 0 0 0 0 0.71 30.0 30.7 0 0 0 0 0.33 29.7 30.0 0 0 0 0 2.00E-02 29.4 29.4 0 0 0 0 0 29.0 29.0 0 0 0 0 0 28.7 28.7 0 0 0 0 0 28.4 28.4 0 0 0 0 0 28.1 28.1 0 0 0 0 0 27.8 27.8 0 0 0 0 0 27.5 27.5 0 0 0 0 0 27.2 27.2 0 0 0 0 0 26.9 26.9

0 0 0 0 0 26.6 26.6

0 0 0 0 0 26.3 26.3

0 0 0 0 0 26.0 26.0

0 0 0 0 0 25.7 25.7

0 0 0 0 0 25.4 25.4

10

周传争水文预报课程设计报告

0 0 0 0 0 25.1 25.1 0 0 0 0 0 24.9 24.9 0 0 0 0 0 24.6 24.6 0 0 0 0 0 24.3 24.3 0 0 0 0 0 24.1 24.1 0 0 0 0 0 23.8 23.8 0 0 0 0 0 23.5 23.5 0 0 0 0 0 23.3 23.3 0 0 0 0 0 23.0 23.0 0 0 0 0 0 22.8 22.8 0 0 0 0 0 22.5 22.5 0 0 0 0 0 22.3 22.3 0 0 0 0 0 22.0 22.0 0 0 0 0 0 21.8 21.8 0 0 0 0 0 21.5 21.5 0 0 0 0 0 21.3 21.3 0 0 0 0 0 21.1 21.1 0 0 0 0 0 20.8 20.8 0 0 0 0 0 20.6 20.6 0 0 0 0 0 20.4 20.4 0 0 0 0 0 20.2 20.2 0 0 0 0 0 19.9 19.9 0 0 0 0 0 19.7 19.7 0 0 0 0 0 19.5 19.5 0 0 0 0 0 19.3 19.3 0 0 0 0 0 19.1 19.1 0 0 0 0 0 18.9 18.9 0 0 0 0 0 18.7 18.7 0 0 0 0 0 18.4 18.4 0 0 0 0 0 18.2 18.2 0 0 0 0 0 18.0 18.0 0 0 0 0 0 17.8 17.8 0 0 0 0 0 17.7 17.7 0 0 0 0 0 17.5 17.5 0 0 0 0 0 17.3 17.3 0 0 0 0 0 17.1 17.1 0 0 0 0 0 16.9 16.9 0 0 0 0 0 16.7 16.7 0 0 0 0 0 16.5 16.5 0 0 0 0 0 16.3 16.3 0 0 0 0 0 16.2 16.2 0 0 0 0 0 16.0 16.0 0 0 0 0 0 15.8 15.8 0 0 0 0 0 15.6 15.6

11

周传争水文预报课程设计报告

0 0 0 0 0 15.5 15.5

0 0 0 0 0 15.3 15.3

0 0 0 0 0 15.1 15.1

0 0 0 0 0 15.0 15.0

0 0 0 0 0 14.8 14.8

0 0 0 0 0 14.6 14.6

0 0 0 0 0 14.5 14.5

0 0 0 0 0 14.3 14.3

0 0 0 0 0 14.1 14.1

图一呈村次模汇流过程

七误差分析

误差统计与分析:

从计算结果可见,年产流量绝对误差均小于100mm,所产流量的相对误差均小于5%。精度统计表明,率定的模型参数是基本合理的。但由于课设时间限制与任务要求,每位同学只用两年的资料来率定Kc,不满足《水文情报预报规范》中规定:洪水预报方案要求使用样

12

周传争水文预报课程设计报告

本数量不少于10年的水文气象资料,其中应包括大、中、小水各种代表性年份,并保证有足够代表性的场次洪水资料。显然Kc=1.21的结果还是存在一定问题的。由于kc值得选取需要多年的资料且包含丰水年,枯水年,平水年。因此本文的kc值选取偶然性太大,没有代表性。其他参数已知,对结果的影响不计。

八计算程序

'//任务一

Private intYear As Integer

Private intDays As Integer

'//任务二

Private intHours As Integer

Private strYMDHM() As String

Private sngQobs() As Single

Private sngEM() As Single

Private sngP1() As Single

Private sngP2() As Single

Private sngP3() As Single

Private sngP4() As Single

Private sngP5() As Single

Private sngP6() As Single

Private sngP7() As Single

Private sngP8() As Single

Private sngP9() As Single

Private sngP10() As Single

'//参数相关

Dim Kc As Single, Wum As Single, Wlm As Single, C As Single '//蒸发相关

Dim Wm As Single, B As Single, Im As Single '//产流相关

13

周传争水文预报课程设计报告

'//计算相关

Private P() As Single, EP() As Single, PE() As Single

Private E() As Single, EU() As Single, EL() As Single, ED() As Single Private W() As Single, WU() As Single, WL() As Single, WD() As Single Private R() As Single

'//年统计相关

Private Robs() As Single, Rcal() As Single, JDR() As Single, XDR() As Single

Private Sub Command1_Click()

'//任务一

ReDim Robs(2), Rcal(2), JDR(2), XDR(2)

Dim deltaKc As Single, intKcNums As Integer, intKcNumsMax As Integer '//Kc的增加量、循环次数和最大循环次数

deltaKc = 0.01: intKcNums = 0.6: intKcNumsMax = 60

'//Kc变化

Kc = 0.9:

Do

For i = 1 To 2

Robs(i) = 0: Rcal(i) = 0

intYear = 1994 + i '//定位文件和判断闰年

If intYear Mod 4 <> 0 Then

intDays = 365

Else

intDays = 366

End If

14

周传争水文预报课程设计报告

'//--------------------------------------------------------------------------------------

'//读入数据

Open "F:\周传争水文预报课程设计\周传争Data\" & intYear & ".csv" For Input As #1

ReDim strYMDHM(intDays)

ReDim sngQobs(intDays)

ReDim sngEM(intDays)

ReDim sngP1(intDays)

ReDim sngP2(intDays)

ReDim sngP3(intDays)

ReDim sngP4(intDays)

ReDim sngP5(intDays)

ReDim sngP6(intDays)

ReDim sngP7(intDays)

ReDim sngP8(intDays)

ReDim sngP9(intDays)

ReDim sngP10(intDays)

For j = 1 To intDays

Input #1, strYMDHM(j), sngQobs(j), sngEM(j), sngP1(j), sngP2(j), sngP3(j), sngP4(j), sngP5(j), sngP6(j), sngP7(j), sngP8(j), sngP9(j), sngP10(j)

Next j

Close #1

'//--------------------------------------------------------------------------------------

'//参数赋值

Wum = 20: Wlm = 40: C = 0.18

Wm = 120: B = 0.4: Im = 0.01

ReDim P(intDays), EP(intDays), PE(intDays)

ReDim E(intDays), EL(intDays), EU(intDays), ED(intDays)

ReDim W(intDays), WL(intDays), WU(intDays), WD(intDays)

15

周传争水文预报课程设计报告

ReDim R(intDays)

'//初始状态

W(0) = 90: WU(0) = 10: WL(0) = 20: WD(0) = 60

For j = 1 To intDays

P(j) = 0.1 * sngP1(j) + 0.1 * sngP2(j) + 0.1 * sngP3(j) + 0.1 * sngP4(j) + 0.1 * sngP5(j) + 0.1 * sngP6(j) + 0.1 * sngP7(j) + 0.1 * sngP8(j) + 0.1 * sngP9(j) + 0.1 * sngP10(j)

EP(j) = Kc * sngEM(j)

PE(j) = P(j) - EP(j)

If PE(j) > 0 Then

EU(j) = EP(j) '//蒸发

EL(j) = 0

ED(j) = 0

'//-----------------------------------------

Dim A As Single, Wmm As Single

Wmm = Wm * (1 + B) / (1 - Im)

If Abs(W(j - 1) - Wm) < 0.01 Then

A = Wmm

Else

A = Wmm * (1 - (1 - W(j - 1) / Wm) ^ (1 / (1 + B)))

End If

A = A + PE(j)

If A <= Wmm Then

R(j) = PE(j) + W(j - 1) - Wm + Wm * (1 - A / Wmm) ^

16

周传争水文预报课程设计报告

(1 + B)

Else

R(j) = PE(j) + W(j - 1) - Wm

End If

'//-------------------------------------------------------------

If (WU(j - 1) + PE(j) - R(j)) > Wum Then '//第一层

WU(j) = Wum

If (WU(j - 1) + PE(j) - R(j) - Wum) + WL(j - 1) > Wlm Then '//第二层

WL(j) = Wlm

WD(j) = W(j - 1) + PE(j) - R(j) - WU(j) - WL(j)

Else

WL(j) = (WU(j - 1) + PE(j) - R(j) - Wum) + WL(j - 1)

WD(j) = WD(j - 1)

End If

Else

WU(j) = WU(j - 1) + PE(j) - R(j)

WL(j) = WL(j - 1)

WD(j) = WD(j - 1)

End If

Else '//不产流,按三层蒸发算

If WU(j - 1) + P(j) >= EP(j) Then

17

周传争水文预报课程设计报告

EU(j) = EP(j)

EL(j) = 0

ED(j) = 0

Else

EU(j) = WU(j - 1) + P(j)

If WL(j - 1) > Wlm * C Then

EL(j) = (EP(j) - EU(j)) * (WL(j - 1) / Wlm) ED(j) = 0

Else

If WL(j - 1) >= C * (EP(j) - EU(j)) Then

EL(j) = C * (EP(j) - EU(j))

ED(j) = 0

Else

EL(j) = WL(j - 1)

ED(j) = C * (EP(j) - EU(j)) - EL(j)

End If

End If

End If

WU(j) = WU(j - 1) + P(j) - EU(j)

WL(j) = WL(j - 1) - EL(j)

WD(j) = WD(j - 1) - ED(j)

End If

E(j) = EU(j) + EL(j) + ED(j)

W(j) = WU(j) + WL(j) + WD(j)

Next j

'//年统计

18

周传争水文预报课程设计报告

For j = 1 To intDays - 1

Robs(i) = Robs(i) + sngQobs(j) * 3.6 * 24 / 290 '//年实测径流深

Next j

For j = 1 To intDays

Rcal(i) = Rcal(i) + R(j) '//年计算径流深

Next j

Robs(i) = Int(Robs(i) * 10 + 0.5) / 10

Rcal(i) = Int(Rcal(i) * 10 + 0.5) / 10

JDR(i) = Int(Abs(Rcal(i) - Robs(i)) * 10 + 0.5) / 10

XDR(i) = Int(Abs(Rcal(i) - Robs(i)) / Robs(i) * 100 + 0.5) / 100

Next i

Dim resumeCal As Boolean

resumeCal = False

''' For i = 1 To UBound(JDR)

'''' If XDR(i) > 0.05 Then

'' resumeCal = True

'' intKcNums = intKcNums + 1

'' Kc = Kc + deltaKc

'' Exit For

19

周传争水文预报课程设计报告

'''' End If

'''' Next i

''' If resumeCal = False Then

'//输出文件

Open "F:\周传争水文预报课程设计\周传争结果\周传争日模优选Kc 计算结果.csv" For Append As #3

Write #3, Format(Kc, ".00"), intKcNums

For i = 1 To UBound(JDR)

Write #3, 1994 + i, Robs(i), Rcal(i), JDR(i), XDR(i)

Next i

Close #3

intKcNums = intKcNums + 1

Kc = Kc + deltaKc

''' End If

Loop Until (intKcNums >= intKcNumsMax)

MsgBox "亲,您已完成KC试算过程!"

End Sub

Private Sub Command2_Click()

For i = 1 To 2

intYear = 1994 + i '//用于定位

If intYear Mod 4 <> 0 Then

intDays = 365

20

周传争水文预报课程设计报告

Else

intDays = 366

End If

'//读入数据

Open "F:\周传争水文预报课程设计\周传争Data\" & intYear & ".csv" For Input As #1

ReDim strYMDHM(intDays)

ReDim sngQobs(intDays)

ReDim sngEM(intDays)

ReDim sngP1(intDays)

ReDim sngP2(intDays)

ReDim sngP3(intDays)

ReDim sngP4(intDays)

ReDim sngP5(intDays)

ReDim sngP6(intDays)

ReDim sngP7(intDays)

ReDim sngP8(intDays)

ReDim sngP9(intDays)

ReDim sngP10(intDays)

For j = 1 To intDays

Input #1, strYMDHM(j), sngQobs(j), sngEM(j), sngP1(j), sngP2(j), sngP3(j), sngP4(j), sngP6(j), sngP7(j), sngP8(j), sngP9(j), sngP10(j)

Next j

Close #1

'//参数赋值

Kc = Text1.Text

Wum = 20: Wlm = 40: C = 0.18

Wm = 120: B = 0.4: Im = 0.01

21

本文来源:https://www.bwwdw.com/article/hd3l.html

Top