




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章 基本任务本次课程设计从2013年7月8日至2012年7月12日,主要任务是对广东省东江一级支流西枝江白盆珠水库的上游宝口流域编制预报方案与产汇流计算。其基本任务为:任务一:根据已给的资料、参数及做过的习题,自己编写程序,将流域作为整体进行产流量计算;将计算年径流与实测年径流进行比较;每人计算两年。任务二:根据已给设计暴雨资料、参数及做过的习题,自己编写程序,将流域作为整体进行次洪产流量、划分水源、直接径流汇流、地下径流汇流计算;绘出直接径流过程、地下径流过程、总的流量过程。第二章 基本资料2.1 流域概况白盆珠水库位于广东省东江一级支流西枝江的上游,坝址以上集雨面积856km2 。流域
2、地处粤东沿海的西部,海洋性气候显著,气候温和,雨量丰沛。暴雨成因主要是锋面雨和台风雨,常受热带风暴影响。降雨年际间变化大,年内分配不均,多年平均降雨量为1800mm,实测年最大降雨量为3417mm,汛期49月降雨量占年降雨量的81左右;径流系数0.5-0.7。流域内地势平缓,土壤主要有黄壤和砂壤,具有明显的腐殖层,淀积层和母质土等层次结构,透水性好。台地、丘陵多生长松、杉、樟等高大乔木;平原则以种植农作物和经济作物为主,植被良好。 流域上游有宝口水文站,流域面积为553km2,占白盆珠水库坝址以上集雨面积的64.6。白盆珠水库有6年逐日入库流量资料、逐日蒸发资料和时段入库流量资料:流域内有7个
3、雨量站,其中宝口以上有4个。雨量站分布较均匀,有6年逐日降水资料和时段降水资料;宝口水文站具有6年以上水位、流量资料;流域属山区性小流域且受到地形、地貌等下垫面条件影响,洪水陡涨缓落,汇流时间一般23小时(h),有时更短;一次洪水总历时25天(d)。2.2 基本资料2.2.1 任务一参数及相关实测资料计算流域为白盆珠水库上游的宝口流域,其流域面积为553km2。该流域内有四个雨量站:禾多布、马山、高潭、宝口,其权重系数分别为:0.33、0.14、0.33、0.20。本次课设提供的资料为1987年至1992年该流域径流量、蒸发量及各雨量站的日实测资料,其中我计算年份为1987年与1988年,所使
4、用的相关参数值如下表所示:WM(mm)WUM(mm)WLM(mm)BCIMPW(mm)WU(mm)WL(mm)WD(mm)14020600.20.160.001110104060其中蒸散发折算系数Kc需编程优选,优选范围为0.90-1.30。优选原则为:计算的2年内每年的年径流相对误差尽可能不超过5%。2.2.2 任务二参数及相关实测资料任务二产流参数Kc为任务一中日模优选的值,FC为10.0mm/3h,产流参数Kc用日模优选的值,其他参数取任务1中各组的参数,初始张力水蓄量取各组的容量值。任务二汇流参数CG为0.968,QG0=55.3m3/s,单位线序号1至11对应的Q(m3/s)分别为:
5、0、40、80、130、100、80、48、20、10、5、02.3 产流方式论证宝口流域地处我国南方湿润地区,气候暖热,雨量充沛,多年平均降雨量为1800mm>1000mm,年径流系数在0.50.7之间,大于0.4;流域内土质疏松,植被良好,不易超渗;一次洪水的流量过程陡涨缓落,持续时间25d左右。从流域的气象条件,下垫面条件和流量过程的分析知,该流域降雨径流关系具有蓄满产流的特点,可以按蓄满产流建立产流量预报方案。第三章 计算公式3.1 降雨量计算由已知资料知,该地区雨量站分布均匀,且宝口以上有四个雨量站:禾多布、马山、高潭、宝口,其权重系数分别为:0.33、0.14、0.33、0.
6、20,所以宝口流域平均降雨量P=0.33*P1+0.14*P2+0.33*P3+0.20*P4。3.2 蒸散发量计算蒸散发计算采用三层蒸发计算模式,即:上层蒸发量:EU=Ep下层蒸发量:EL=Ep*WL/WLM深层蒸发量:ED=C*Ep总蒸发量:E=EU+EL+ED式中:Ep为流域蒸发能力(mm);WL为下层土壤含水量(mm);WLM为下层土壤含水量(mm);C为蒸发扩散系数。三层蒸发模式按照先上层后下层的次序,具体计算为:1)当WU+P>=EP时,EU=Ep,EL=0,ED=02)当WU+P<EP,WL>=C*WLM时,EU=WU+P,EL=(EP-EU)*WL/WLM,E
7、D=03)当WU+P<EP, C*(EP-EU)<=WL<C*WLM时,EU=WU+P,EL=C*(EP-EU),ED=04)当WU+P<EP, WL<C*(EP-EU)时,EU=WU+P,EL=WL,ED=C*(EP-EU)-EL3.3 降雨产流量计算1) aPEWMM时,R=PEWWMWM(1)b+1 2) aPEWMM时,R=PE(WMW)3.4 水源划分计算通过稳渗率fc可划分产流中的直接径流和地下径流。次洪的各水源分量为: 3.5 汇流计算根据流域净雨和流域径流单位线,采用卷积的差分形式算出流域出口的流量过程。其计算公式:直接径流过程:QS(i)=RS(
8、i)*U地下径流过程:QG(i)=CG*QG(i-1)+(1-CG)*RG(i)*U总的流量过程:Q(i)=QS(i)+QG(i)第四章 计算结果4.1 任务一结果经过程序优选,Kc=0.98年份实测R(mm)计算R(mm)绝对误差(mm)相对误差(%)19871080110019.31.791988824813-10.2-1.234.2 任务二结果t(i)P(i)R(i)Rd(i)Rg(i)QS(i)QG(i)Q(i)2004/9/23 12:001412.72.710069.969.92004/9/23 15:0014.112.92.91010.884.194.92004/9/23 18:
9、00119.709.733.297.31302004/9/23 21:0018.717.47.41058.31111692004/9/24 0:0029.728.518.51094.31232182004/9/24 3:003635.125.1101841363202004/9/24 6:0038.337.527.5103811485292004/9/24 9:007.86.906.96451547992004/9/24 12:0030.529.619.6107991669652004/9/24 15:0042.641.731.71087417710502004/9/24 18:0093.89
10、2.982.91086418810502004/9/24 21:0084.183.373.310122019814202004/9/25 0:0047.646.836.810177020819802004/9/25 3:0056.455.345.310237021825902004/9/25 6:0050.449.339.310265022728702004/9/25 9:0016.515.45.410260023628402004/9/25 12:005.84.804.8236023726002004/9/25 15:008.37.207.2186024121002004/9/25 18:0
11、02.61.501.5125023614802004/9/25 21:000.200077422810002004/9/26 0:0000003962216172004/9/26 3:0000001682143822004/9/26 6:00000072.82072802004/9/26 9:00000025.02002252004/9/26 12:0000002.701941972004/9/26 15:0000000.001881882004/9/26 18:0000000.001821822004/9/26 21:0000000.00176176第五章 误差统计与分析5.1 精度评定从计
12、算结果可见,年产流量绝对误差均小于100mm,所产流量的相对误差均小于5%。精度统计表明,率定的模型参数是基本合理的。但由于课设时间限制与任务要求,每位同学只用两年的资料来率定Kc,不满足水文情报预报规范中规定:洪水预报方案要求使用样本数量不少于10年的水文气象资料,其中应包括大、中、小水各种代表性年份,并保证有足够代表性的场次洪水资料。显然Kc=0.98的结果还是存在一定问题的。5.2 误差分析影响流域降雨径流过程的因素很多,利用蓄满产流新安江模型的结构与参数能够很好反映湿润地区降雨径流过程的主要规律和特点,因而能获得较好的精度。但是模型本身以及模型计算中有很多概化,会造成误差。造成宝口流域
13、产汇流计算方案误差来源主要有以下几个方面:1.资料代表性的影响。我们每位同学只用两年实测资料来率定Kc,资料必不能满足时期要求及代表性要求。实际操作中,应要求有12年以上的连续的对未来有代表性的实测资料,其中10年为率定期,2年为检验期,且这种资料应具备丰、平、枯水年代表性,资料系列前后一致,受人类影响较小。所以仅用两年的资料率定势必造成Kc一定的误差,而且误差可能还很大。2.量测误差。实测的降雨、蒸发、径流量等水文气象信息及河流、湖泊、地形等下垫面信息是研制预报模型或编制洪水预报方案或进行作业预报的主要依据,在现有站网、仪器设备、观测技术条件下,各种信息的时空变化是难以准确反映的,加上受自然
14、因素等客观条件影响,势必造成各种信息的量测误差。3.模型结构误差。在该蓄满产流新安江模型中,有很多将非线性现象概化为线性现象或者将某些随机因子近似作为确定因子描述等都会带来误差。4.模型参数误差。模型参数是根据输入,通过模型计算输出,再将输出过程与实测过程进行比较,用系统识别的方法作优化调试的,上述所率定出的模型参数Kc可能不是最优。5.人类活动的影响。随着社会经济的快速发展,人类活动的影响加剧,流域内可能新建了一些大中型水库或其他工程措施。影响了该地区原有的产流特点,如汛期提前。5.3 实时校正模型计算值与实测值直接总是存在一定的误差。造成两者间误差的因素很多,若针对每一个单一因素是难于描述
15、或预见的,一般采用实时校正模型来解决。实时校正模型常用的有卡尔曼滤波、自回归模型等。第六章 编写程序FORM 1Private Sub Command1_Click(Index As Integer) Form2.ShowEnd SubPrivate Sub Command2_Click() Form3.ShowEnd SubFORM 2 Private Sub Command1_Click() Form1.Show Form2.Hide End SubPrivate Sub Command2_Click()For m = 0 To 40 Kc = 0.9 + 0.01 * mReDim Ro
16、bs(2), Rcal(2), jderror(2), xderror(3) Dim W0 As Single, WU0 As Single, WL0 As Single, WD0 As Single WU0 = Text10.Text: WL0 = Text11.Text: WD0 = Text12.Text W0 = WL0 + WD0 + WU0 For i = 1 To 2 intYear = 1986 + i '用于定位 If intYear Mod 4 <> 0 And xuYear Mod 100 <> 0 Then intDays = 365 E
17、lse intDays = 366 End If '/读入数据 Open App.Path & ".Data" & intYear & ".csv" For Input As #1 ReDim t(intDays) ReDim Qobs(intDays) ReDim Eo(intDays) ReDim P1(intDays) ReDim P2(intDays) ReDim P3(intDays) ReDim P4(intDays) For j = 1 To 365 Input #1, t(j), Qobs(j), Eo(j
18、), P1(j), P2(j), P3(j), P4(j) Next j Close #1 '/参数赋值 Wum = Text2.Text: Wlm = Text3.Text: C = Text4.Text Wm = Text5.Text: B = Text6.Text: Im = Text7.Text ReDim P(intDays), EP(intDays), PE(intDays) ReDim E(intDays), EU(intDays), EL(intDays), ED(intDays) ReDim W(intDays), WU(intDays), WL(intDays),
19、WD(intDays) ReDim R(intDays) For j = 1 To intDays W(0) = W0: WU(0) = WU0: WL(0) = WL0: WD(0) = WD0 P(j) = 0.33 * P1(j) + 0.14 * P2(j) + 0.33 * P3(j) + 0.2 * P4(j) EP(j) = Kc * Eo(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 Wm
20、m = 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) (1 + B) Else R(j) = PE(j) + W(j - 1) - Wm End If If (WU(j - 1) + PE(j) - R(j) >
21、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
22、) WD(j) = WD(j - 1) End If Else '/不产流,按三层蒸发算 If WU(j - 1) + P(j) >= EP(j) Then 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)
23、 - 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 W0 = W(intDays): WU0 = WU(intDays): WL0 = WL(
24、intDays): WD0 = WD(intDays) For j = 1 To intDays - 1 Robs(i) = Robs(i) + Qobs(j) * 3.6 * 24 / 553 '/年实测径流深 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 jderror(i) = Int(Abs(Rcal(i) - Robs(i)
25、 * 10 + 0.5) / 10 xderror(i) = Int(Abs(Rcal(i) - Robs(i) / Robs(i) * 100 + 0.5) / 100 If xderror(i) <= 0.05 Then If intYear = 1987 Then Picture1.Print Kc; xderror(i) Else Picture2.Print Kc; xderror(i) End If End If Next i If xderror(i - 2) <= 0.05 And xderror(i - 1) <= 0.05 Then xderror(i)
26、= (xderror(i - 2) + xderror(i - 1) / 2 'xderror(i)为两年的平均值 Picture3.Print Kc; xderror(i) End IfNext mText1.Text = InputBox("请输入您选择的Kc") '使用者选用自己认为合适的KcKc = Text1.TextReDim Robs(2), Rcal(2), jderror(2), xderror(3)WU0 = Text10.Text: WL0 = Text11.Text: WD0 = Text12.TextW0 = WL0 + WD0 +
27、 WU0 For i = 1 To 2 intYear = 1986 + i '/用于定位 If intYear Mod 4 <> 0 And xuYear Mod 100 <> 0 Then intDays = 365 Else intDays = 366 End If '/读入数据 Open App.Path & ".Data" & intYear & ".csv" For Input As #1 ReDim t(intDays) ReDim Qobs(intDays) ReDim Eo
28、(intDays) ReDim P1(intDays) ReDim P2(intDays) ReDim P3(intDays) ReDim P4(intDays) For j = 1 To 365 Input #1, t(j), Qobs(j), Eo(j), P1(j), P2(j), P3(j), P4(j) Next j Close #1 Wum = Text2.Text: Wlm = Text3.Text: C = Text4.Text Wm = Text5.Text: B = Text6.Text: Im = Text7.Text ReDim P(intDays), EP(intDa
29、ys), PE(intDays) ReDim E(intDays), EU(intDays), EL(intDays), ED(intDays) ReDim W(intDays), WU(intDays), WL(intDays), WD(intDays) ReDim R(intDays) For j = 1 To intDays W(0) = W0: WU(0) = WU0: WL(0) = WL0: WD(0) = WD0 P(j) = 0.33 * P1(j) + 0.14 * P2(j) + 0.33 * P3(j) + 0.2 * P4(j) EP(j) = Kc * Eo(j) P
30、E(j) = P(j) - EP(j) If PE(j) > 0 Then EU(j) = EP(j) '/蒸发 EL(j) = 0 ED(j) = 0 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 / Wm
31、m) (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(
32、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 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 -
33、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) + E
34、D(j) W(j) = WU(j) + WL(j) + WD(j) Next j W0 = W(intDays): WU0 = WU(intDays): WL0 = WL(intDays): WD0 = WD(intDays) '/输出文件 Open App.Path & "" & intYear & ".out" For Output As #2 For j = 1 To intDays Write #2, t(j), P(j), Eo(j), EP(j), EU(j), EL(j), ED(j), E(j), WU(j
35、), WL(j), WD(j), W(j), R(j) Next j Close #2 '/年统计 For j = 1 To intDays - 1 Robs(i) = Robs(i) + Qobs(j) * 3.6 * 24 / 553 '/年实测径流深 Next j For j = 1 To intDays Rcal(i) = Rcal(i) + R(j) '/年计算径流深 Next j Robs(i) = Format(Robs(i), "0.00") Rcal(i) = Format(Rcal(i), "0.00") jd
36、error(i) = Rcal(i) - Robs(i) xderror(i) = (Rcal(i) - Robs(i) / Robs(i) * 100 jderror(i) = Format(jderror(i), "0.00") xderror(i) = Format(xderror(i), "0.00") Print "实测径流(" & i & ")=" & Robs(i) Print "计算径流(" & i & ")=" &am
37、p; Rcal(i) Print "绝对误差(" & i & ")=" & jderror(i) Print "相对误差(" & i & ")=" & xderror(i) Next iEnd SubFORM 3Private Sub Command1_Click()'/任务二 '/读入数据 Open App.Path & ".Datapdata.csv" For Input As #1 Do While Not EOF(1
38、) intHours = intHours + 1 ReDim Preserve t(intHours) ReDim Preserve EM(intHours) ReDim Preserve P1(intHours) ReDim Preserve P2(intHours) ReDim Preserve P3(intHours) ReDim Preserve P4(intHours) Input #1, t(intHours), EM(intHours), P1(intHours), P2(intHours), P3(intHours), P4(intHours) Loop Close #1 &
39、#39;/参数赋值 Kc = Text1.Text: Wum = 20: Wlm = 60: C = 0.16 Wm = 140: B = 0.2: Im = 0.001 ReDim P(intHours), EP(intHours), PE(intHours) ReDim E(intHours), EU(intHours), EL(intHours), ED(intHours) ReDim W(intHours), WU(intHours), WL(intHours), WD(intHours) ReDim R(intHours) '/初始状态 W(0) = Val(Text2.Te
40、xt) + Val(Text3.Text) + Val(Text4.Text): WU(0) = Val(Text2.Text): WL(0) = Val(Text3.Text): WD(0) = (Text4.Text) For j = 1 To intHours P(j) = Int(0.33 * P1(j) + 0.14 * P2(j) + 0.33 * P3(j) + 0.2 * P4(j) * 10 + 0.5) / 10 EP(j) = Kc * EM(j) PE(j) = P(j) - EP(j) If PE(j) > 0 Then '/产流计算 EU(j) = E
41、P(j) EL(j) = 0 ED(j) = 0 Dim A As Single, Wmm As Single Wmm = (1 + B) * Wm / (1 - Im) If Abs(W(j - 1) - Wm) < 0.1 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) (1 + B) Else R(j) = PE(j)
42、+ W(j - 1) - Wm End If R(j) = Int(R(j) * 10 + 0.5) / 10 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(
43、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 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(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论