【水文模型】11 芝加哥雨型生成器

任务

2022/12/31

根据如下设计暴雨强度公式,编写芝加哥雨型生成器,用于各相关部门在科学规划、设计、新建改造和管理排水防涝设施上使用。

i = A ( 1 + c ∗ l g T m ) ( t + b ) n i=\frac{A(1+c*lgT_m)}{(t+b)^{n}} i=(t+b)nA(1+clgTm)

式中: i i i为降雨强度(mm/min), q q q为设计暴雨强度[L/(s ⋅ \cdot hm^2)], q = 166.7 ∗ i q = 166.7 * i q=166.7i t t t为降雨历时(min), T m T_m Tm为重现期(年), A , c , b , n A,c,b,n A,c,b,n为暴雨强度公式参数。

本地文档:E:\Projects\names\xls\芝加哥雨型生成器

欢迎关注,点赞,评论,一键三连!😃

源代码

完整程序及示例请点击➡️此处⬅️下载

以下仅展示主函数和输入输出示例。

作者创作不易,感谢支持!😃😃😃

作者简介

很高兴认识您!
我叫卢家波,河海大学水文学及水资源博士研究生,研究兴趣为高效洪水淹没预测、洪水灾害预警、机器学习、替代模型和降阶模型。
变化环境下,极端洪水事件多发,我希望能通过研究为水灾害防御做出贡献,为人民服务。
欢迎交流讨论和研究合作,vx Jiabo_Lu
主页 https://lujiabo98.github.io
简历 https://lujiabo98.github.io/file/CV_JiaboLu_zh.pdf
博客 https://blog.csdn.net/weixin_43012724?type=blog
来信请说明博客标题及链接,谢谢。

// 芝加哥雨型过程线.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
// 2023/1/1
// 作者:卢家波
// vx:Jiabo_Lu
// 请按以下格式引用:
// 芝加哥雨型生成器,CSDN,2023年3月13日,https://blog.csdn.net/weixin_43012724/article/details/129505354。
// 本软件不得用于商业用途,仅做学习交流。
// 参考资料:
// [1]关于发布南通市暴雨强度公式及设计暴雨雨型的通知. http://szyl.nantong.gov.cn/ntsjsj/gggs/content/0611ca09-5074-4dfd-ad7e-65dc1a50edc0.html
// [2]芝加哥雨型过程线公式. https://www.vivifree.com/rain-model-chicago-formula.html
// [3]芝加哥雨型生成器 Ver2.09. https://www.vivifree.com/rain-model-chicago.html
// [4]深圳市新版暴雨强度总、分公式. http://weather.sz.gov.cn/qixiangfuwu/qihoufuwu/qihouguanceyupinggu/baoyuqiangdugongshi/mindex.html

#include <iostream>

#include "ChicagoRainstormPattern.h"

int main()
{
    ChicagoRainstormPattern Pattern;

    //Pattern.setParameter(9.972, 1.004, 12.000, 0.657, 0.430, 120, 1.0, 2);
    //Pattern.setParameter(9.5981, 0.846, 7.000, 0.656, 0.4, 120, 1.0, 2);  //直接设置参数

    Pattern.readParameter();  //从文件中读取参数

    Pattern.generate();

    Pattern.display();

    Pattern.save();
}

程序说明

程序设计了类ChicagoRainstormPattern,用于生成芝加哥雨型过程线。

程序可以选择从文本或程序中读取暴雨公式参数,对应的函数分别为readParameter()setParameter

readParameter():从Parameter.txt读取暴雨公式参数,默认为程序当前文件夹,可在函数形参中添加路径;

setParameter:设置暴雨公式参数;

generate():生成芝加哥雨型过程线的函数,包括4个步骤:

  1. 计算时间序列、峰前时间和峰后时间
  2. 采用K.C法计算设计暴雨雨型的峰前瞬时雨强
  3. 采用K.C法计算设计暴雨雨型的峰后瞬时雨强
  4. 计算降雨总量、平均雨强等统计值

display():输出结果到控制台;

save():输出结果到文本results.txt,默认为程序当前文件夹,可在函数形参中添加路径。

使用方法

方法1:通过文本交互

  1. 修改文本.\芝加哥雨型生成器\芝加哥雨型过程线\x64\Release\Parameter.txt中的暴雨公式参数
  2. 运行程序.\芝加哥雨型生成器\芝加哥雨型过程线\x64\Release\芝加哥雨型过程线.exe
  3. 从文本.\芝加哥雨型生成器\芝加哥雨型过程线\x64\Release\results.txt查看雨型生成结果

方法2:通过程序交互

  1. 使用Visual Studio 2022打开.\芝加哥雨型生成器\芝加哥雨型过程线\芝加哥雨型过程线.sln,修改setParameter()函数中的暴雨公式参数
  2. 运行本地Windows调试器
  3. 从控制台查看雨型生成结果

Parameter.txt

暴雨强度公式参数 A 9.5981
暴雨强度公式参数 c  0.846
暴雨强度公式参数 b 7.000
暴雨强度公式参数 n 0.656
雨峰位置系数,[0,1] r 0.4
降雨历时,min t 120
计算步长,min dt 1.0
设计重现期,年 TM 2

results.txt

重现期 TM = 2年
降雨历时 t = 120min
峰值比例 r = 0.4
降雨总量 H = 60.6345mm
平均雨强 iAverage = 0.501903mm/min

时间min	降雨强度mm/min	降雨总量mm
0	0.190802	0.190802
1	0.193676	0.384479
2	0.19666	0.581139
3	0.199761	0.780899
4	0.202986	0.983885
5	0.206342	1.19023
6	0.20984	1.40007
7	0.213489	1.61356
8	0.217298	1.83085
9	0.22128	2.05213
10	0.225447	2.27758
11	0.229814	2.5074
12	0.234395	2.74179
13	0.239207	2.981
14	0.24427	3.22527
15	0.249605	3.47487
16	0.255236	3.73011
17	0.261189	3.9913
18	0.267494	4.25879
19	0.274184	4.53298
20	0.281299	4.81427
21	0.288881	5.10316
22	0.296981	5.40014
23	0.305656	5.70579
24	0.314973	6.02077
25	0.325009	6.34577
26	0.335853	6.68163
27	0.347613	7.02924
28	0.360414	7.38966
29	0.374407	7.76406
30	0.389771	8.15383
31	0.406729	8.56056
32	0.425548	8.98611
33	0.446564	9.43267
34	0.470199	9.90287
35	0.496986	10.3999
36	0.52762	10.9275
37	0.563011	11.4905
38	0.604382	12.0949
39	0.653413	12.7483
40	0.71247	13.4608
41	0.784996	14.2457
42	0.876187	15.1219
43	0.994252	16.1162
44	1.1529	17.2691
45	1.37675	18.6458
46	1.71438	20.3602
47	2.27524	22.6355
48	3.35994	25.9954
49	2.55223	28.5476
50	2.0517	30.5993
51	1.71438	32.3137
52	1.47309	33.7868
53	1.29262	35.0794
54	1.1529	36.2323
55	1.04171	37.274
56	0.951219	38.2253
57	0.876187	39.1014
58	0.812992	39.9144
59	0.759049	40.6735
60	0.71247	41.3859
61	0.671841	42.0578
62	0.636089	42.6939
63	0.604382	43.2983
64	0.576065	43.8743
65	0.550617	44.4249
66	0.52762	44.9526
67	0.50673	45.4593
68	0.487668	45.947
69	0.470199	46.4172
70	0.454128	46.8713
71	0.439291	47.3106
72	0.425548	47.7361
73	0.41278	48.1489
74	0.400884	48.5498
75	0.389771	48.9396
76	0.379366	49.3189
77	0.3696	49.6885
78	0.360414	50.0489
79	0.351758	50.4007
80	0.343584	50.7443
81	0.335853	51.0801
82	0.328529	51.4087
83	0.321578	51.7302
84	0.314973	52.0452
85	0.308687	52.3539
86	0.302697	52.6566
87	0.296981	52.9536
88	0.291521	53.2451
89	0.286299	53.5314
90	0.281299	53.8127
91	0.276506	54.0892
92	0.271909	54.3611
93	0.267494	54.6286
94	0.26325	54.8919
95	0.259167	55.151
96	0.255236	55.4063
97	0.251448	55.6577
98	0.247796	55.9055
99	0.24427	56.1498
100	0.240866	56.3906
101	0.237576	56.6282
102	0.234395	56.8626
103	0.231316	57.0939
104	0.228335	57.3223
105	0.225447	57.5477
106	0.222648	57.7704
107	0.219933	57.9903
108	0.217298	58.2076
109	0.21474	58.4223
110	0.212255	58.6346
111	0.20984	58.8444
112	0.207492	59.0519
113	0.205208	59.2571
114	0.202986	59.4601
115	0.200822	59.6609
116	0.198714	59.8596
117	0.19666	60.0563
118	0.194658	60.251
119	0.192706	60.4437
120	0.190802	60.6345

运行结果

在这里插入图片描述

参考文献

[1]关于发布南通市暴雨强度公式及设计暴雨雨型的通知.
[2]芝加哥雨型过程线公式.
[3]芝加哥雨型生成器 Ver2.09.
[4]深圳市新版暴雨强度总、分公式.

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卢家波

如果对你有帮助,请我喝杯茶吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值