CN113570150A - 一种基于json的洪水预报方法 - Google Patents
一种基于json的洪水预报方法 Download PDFInfo
- Publication number
- CN113570150A CN113570150A CN202110886951.3A CN202110886951A CN113570150A CN 113570150 A CN113570150 A CN 113570150A CN 202110886951 A CN202110886951 A CN 202110886951A CN 113570150 A CN113570150 A CN 113570150A
- Authority
- CN
- China
- Prior art keywords
- data
- dimensional
- json
- array
- flood
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01W—METEOROLOGY
- G01W1/00—Meteorology
- G01W1/10—Devices for predicting weather conditions
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A10/00—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE at coastal zones; at river basins
- Y02A10/40—Controlling or monitoring, e.g. of flood or hurricane; Forecasting, e.g. risk assessment or mapping
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Environmental & Geological Engineering (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Quality & Reliability (AREA)
- Theoretical Computer Science (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Atmospheric Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Ecology (AREA)
- Environmental Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种基于JSON的洪水预报方法,包括:将洪水预报的数据根据维度信息分为零维数据、一维数据、二维数据、三维数据和复合数据五个类别,根据各类数据的类别对洪水预报数据进行JSON接口格式转换;将格式转换后的各类数据组合构成初步预报方案;经过历史实测数据率定初步预报方案的各类数据后,依次对初步预报方案中的各类数据进行数据交换形成最终的洪水预报方案。本发明提出的接口将各种数据按照维度信息归纳为五类,统一设计了带两个索引、以JSON数组为核心、按常用数据类型分类的方案,并通过自嵌套设计,可以方便的存储模型和参数、次洪和预报方案等数据。该接口方案可以提高洪水预报模型的研发效率。
Description
技术领域
本发明涉及洪水预报数据接口技术领域,具体涉及一种基于JSON的洪水预报方法。
背景技术
洪水预报模型是用计算机对流域上发生的水文过程进行模拟的技术。国外发达国家在注重研究模型理论的同时,也非常重视水文模型的产品化工作。我国在水文模型通用化、产品化研究方面起步较晚,大多数水文业务部门所用的洪水预报系统中,水文模型是针对特定问题、特定区域研制开发的,重复开发现象比较严重,其主要原因之一就是水文模型输入输出数据复杂、接口难以通用。目前研究接口方案的成果较少,国内常用的主要是开放式公共模型接口(Open Modelling Interface and environment,OpenMI)和全国洪水预报系统接口。
OpenMI基于标准化接口定义,以“契约”的形式规范各个独立模块,提供了一套独立于具体数据变量的标准元数据结构来描述交互数据项,包括数据项的语义、单位、维数、时间和空间描述及数据操作等,从而实现不同类型、不同领域、不同标准模块之间的相互连接。但是其对GIS、多线程、分布式程序的支持仍有不足。
全国洪水预报系统中,将常用洪水预报模型的输入和输出数据归纳为九种,这些数据按固定顺序存于一个控制文件中,预报模型构件依据其不同预报模型类型在相应顺序中存取相应的输入和输出信息,以此构成可通用的标准预报模型构件。但是存在磁盘文件的读写效率瓶颈、相对封闭的文件编码标准等问题。
为此,本发明提出了一种新的基于JSON的洪水预报方法。
发明内容
为解决上述问题,本发明的目的在于提供一种基于JSON的洪水预报方法。
为实现上述目的,本发明提供了如下的技术方案。
一种基于JSON的洪水预报方法,包括以下步骤:
将洪水预报的数据根据维度信息分为零维数据、一维数据、二维数据、三维数据和复合数据五个类别,根据各类数据的类别对洪水预报数据进行JSON接口格式转换;
将格式转换后的各类数据组合构成初步预报方案;
经过历史实测数据率定初步预报方案的各类数据后,依次对初步预报方案中的各类数据进行数据交换形成最终的洪水预报方案。
优选地,所述零维数据为无维度信息的单值数据,所述零维数据的JSON接口格式为:
"dotarray":[{"id":"a1","v":b1},{"id":"a2","v":b2},…,{"id":"an","v":bn}]
其中,dotarray为零维数组数据类型,包括文本数据数组dottxt、单精度数据数组dotsng、整型数组dotint、日期时间数组dotdat、双精度数据数组dotdbl和长整型数组dotlng;id为模型名称索引;a1~an为数据模型名称;b1~bn为数据内容。
优选地,所述一维数据的JSON接口格式为:
{
"linearray1":[{"id":"a1","v":[data1]},{{"id":"a2","v":[…]}}]
"linearray2":[{"id":"a3","v":[data2]},{"id":"a4","v":[…]}]
}
其中,linearray为一维数组类型,包括日期数组linedate、单精度linesng、整型lineint、双精度dotdbl、和长整型dotlng。
优选地,所述二维数据包括空间二维数据和与时间对应的一维数组;所述二维数据中的空间二维数据的JSON接口格式为:
{
"boxint":[{"id":"","v":[data1,data2,……],
"dotarray":[{"id":"a1","v":b1},{"id":"a2","v":b2},……],
"dotarray":[{"id":"a3","v":b3},{"id":"a4","v":b4},……],
……
}
其中,boxint为二维整型数组,id闲置;
所述二维数据中的与时间对应的一维数组的JSON接口格式为:
{
"linedat":[{"id":"a1","v":["date1","date2"…"daten"]}]
"linesng":[{"id":"date1","v":[data1]},{"id":"date2","v":[data2]},……,{"id":"daten","v":[datan]}]
}。
优选地,将所述空间二维数据的JSON接口格式中的闲置的id索引节点存储位改为对应的时间,即为所述三维数据中的JSON接口格式。
优选地,所述复杂数据为零维到三维基础结构无法清晰描述的数据,通过零维到三维基础结构组合构成。
优选地,所述洪水预报的数据包括:起始状态数据、等时段水位流量数据、实测水位流量数据、等时段点雨量数据、等时段面雨量数据、等时段径流深数据、结束状态数据、等时段水位流量数据、空间数据和GIS数据。
本发明有益效果:
本发明提出一种基于JSON的洪水预报方法,该方法提出的接口方案将各种数据按照维度信息归纳为五类,统一设计了带两个索引、以JSON数组为核心、按常用数据类型分类的方案,并通过自嵌套设计,可以方便的存储模型和参数、次洪和预报方案等数据。该接口方案可以提高洪水预报模型的研发效率。
附图说明
图1是本发明实施例的流程图;
图2是本发明实施例的洪水预报计算流程示意图;
图3是本发明实施例的洪水预报方参数优选流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例
一种基于JSON的洪水预报方法,流程图如图1所示,包括以下步骤:
将洪水预报的数据根据维度信息分为零维数据、一维数据、二维数据、三维数据和复合数据五个类别,根据各类数据的类别对洪水预报数据进行JSON接口格式转换;
将格式转换后的各类数据组合构成初步预报方案;
经过历史实测数据率定初步预报方案的各类数据后,依次对初步预报方案中的各类数据进行数据交换形成最终的洪水预报方案。
(1)零维数据
"dottxt":[{"id":"名称","v":"新安江模型"},{"id":"版权","v":"某大学测试版"},…,{"id":"作者","v":"张三"}]
其中:dottxt表示存储零维文本数据的JSON数组。因为零维数据有多种数据类型,不同类型的数据分别用不同的JSON数组来表达,如一个常见的模型参数可以表示为:
{
"dottxt":[{"id":"名称","v":"不透水系数"},{"id":"单位","v":"%"}],
"dotsng":[{"id":"取值","v":5.2},{"id":"最小值","v":0},{"id":"最大值","v":10}],
"dotint":[{"id":"可以优选","v":1}]
}
其中:dotsng表示存储零维单精度数据的JSON数组;dotint对应整型(32位),此处用来兼容一个布尔型数据。其它情况下还常常用到:日期时间dotdat、双精度dotdbl、长整型(64位)dotlng,后两个变量类型在洪水预报模型中很少用到,常用单精度和整型来代替。
(2)一维数据
以洪水预报模型中常用的实测流量数据为例,可以用一个日期时间和一个单精度数组来组合表示:
{
"linedat":[{"id":"实测流量","v":["\/Date(15778080+0800)\/","\/Date(15778090+0800)\/",……,"\/Date(15778110+0800)\/"]},{{"id":"实测水位","v":[…]}}]
"linesng":[{"id":"实测流量","v":[100.3,127.5,…,95.6]},{"id":"实测水位","v":[…]}]
}
其中:linedat表示存储一维日期数组的JSON数组。这里的id不仅是数据索引,还表示linedat和linesng中的数据配对。
洪水预报模型中的水位-流量关系(单组或多组)、累积降雨-降雨强度-径流系数关系、蓄泄曲线等,都可以用这种一维数据的JSON格式表达。以水库调度中的简单闸门开启预案为例,可以表示为:
{
"linesng":[
{"id":"坝前数位","v":[90.0,92.1,95.5]},{"id":"闸门开度","v":[0,0.5,1.2]},{"id":"开启数量","v":[0,1,3]}]
}
其中:linesng表示存储一维单精度数组的JSON数组。其它情况下还可能用到:整型(32位)lineint、双精度dotdbl、长整型(64位)dotlng等,但在后两个变量类型在洪水预报模型中很少用到,常用单精度和整型来代替。
(3)二维数据
洪水预报模型中常用二维数据有两种,一种是空间二维数据,以5×3的DEM栅格数据为例:
{
"boxint":[{"id":"","v":[[4,5,6,7,8],[4,5,6,7,8],[5,6,7,8,9]],
"dotsng":[{"id":"左经度","v":111.43},{"id":"下维度","v":51.34},{"id":"分辨率","v":0.0083333}],
"dotint":[{"id":"行数","v":3},{"id":"列数","v":5},{"id":"无资料标识","v":-99}]
}
其中,boxint表示存储二维整型数组的JSON数组,因为只有一个数据,所以其中的id闲置。dotsng和dotint中存储了这个空间二维DEM数据的位置、范围和分辨率信息。
洪水预报模型中另一种常用的二维数据是与时间对应的一维数组,如滚动流量预报时不同起报时刻的做出的预报流量数据可以表示为:
{
"linedat":[{"id":"滚动预报","v":["\/Date(15778080+0800)\/","\/Date(15778090+0800)\/",……,"\/Date(15778110+0800)\/"]}]
"linesng":[{"id":"\/Date(15778080+0800)\/","v":[90.0,92.1,…,95.5]},{"id":"\/Date(15778090+0800)\/","v":[92.1,104.2,…,95.5]},…,{"id":"\/Date(15778110+0800)\/","v":[80.3,85.0,…,84.6]}]
}
其中,linedat存储了每一个起报时刻,根据起报时刻去linesng中搜寻对应的预报流量数据。
(3)复杂数据
用零维到三维基础结构无法清晰描述的数据称为复杂数据,以某水文模型为例,主节点存储模型信息,每一个参数作为一个子节点存储在son数组下,如下所示:
本实施例中,
洪水预报系统中,数据前处理、产流、汇流、统计等后处理模块常常组合出现(也有一些模型整合了产汇流,但和下面的描述并不冲突),经过历史实测数据率定参数后形成一个预报方案,在JSON中可以描述如下:
除了上述的常规洪水预报方案外,本文接口方案还可以表达分布式模型预报方案、站点列表、子流域拓扑信息、数值天气预报结果、Web GIS数据等信息。
基于本文接口表达的洪水预报方案,可以看作是一个容纳参数、状态和数据的“任务包”。一个典型的洪水预报计算过程可以设计为如下的“流水线”,“流水线”上的每一个专业模块都从“任务包”中挑选自己需要的信息、并将计算结果反馈(增加或替换)到“任务包”中去,模块之间的数据交换变得十分简单,各个模块的升级、替换、复用成本也将大大降低,流程示意图如图2所示。
再以一个稍复杂的参数优选过程为例(如图3所示),整个计算过程可以看作是参数优选模块控制下的循环“流水线”:优选模块根据需要更改参数取值、模拟洪水后计算优选指标,返回优选模块去判断是继续计算还是结束优选计算。除了开头预处理数据和结束时写出结果外,所有操作都在内存中进行,如果同时开多个“流水线”(产汇流的计算线程),就可以轻松实现参数优选的并行计算。
以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种基于JSON的洪水预报方法,其特征在于,包括以下步骤:
将洪水预报的数据根据维度信息分为零维数据、一维数据、二维数据、三维数据和复合数据五个类别,根据各类数据的类别对洪水预报数据进行JSON接口格式转换;
将格式转换后的各类数据组合构成初步预报方案;
经过历史实测数据率定初步预报方案的各类数据后,依次对初步预报方案中的各类数据进行数据交换形成最终的洪水预报方案。
2.根据权利要求1所述的基于JSON的洪水预报方法,其特征在于,所述零维数据为无维度信息的单值数据,所述零维数据的JSON接口格式为:
"dotarray":[{"id":"a1","v":b1},{"id":"a2","v":b2},…,{"id":"an","v":bn}]
其中,dotarray为零维数组数据类型,包括文本数据数组dottxt、单精度数据数组dotsng、整型数组dotint、日期时间数组dotdat、双精度数据数组dotdbl和长整型数组dotlng;id为模型名称索引;a1~an为数据模型名称;b1~bn为数据内容。
3.根据权利要求2所述的基于JSON的洪水预报方法,其特征在于,所述一维数据的JSON接口格式为:
{
"linearray1":[{"id":"a1","v":[data1]},{{"id":"a2","v":[…]}}]
"linearray2":[{"id":"a3","v":[data2]},{"id":"a4","v":[…]}]
}
其中,linearray为一维数组类型,包括日期数组linedate、单精度linesng、整型lineint、双精度dotdbl、和长整型dotlng。
4.根据权利要求2所述的基于JSON的洪水预报方法,其特征在于,所述二维数据包括空间二维数据和与时间对应的一维数组;所述二维数据中的空间二维数据的JSON接口格式为:
{
"boxint":[{"id":"","v":[data1,data2,……],
"dotarray":[{"id":"a1","v":b1},{"id":"a2","v":b2},……],
"dotarray":[{"id":"a3","v":b3},{"id":"a4","v":b4},……],
……
}
其中,boxint为二维整型数组,id闲置;
所述二维数据中的与时间对应的一维数组的JSON接口格式为:
{
"linedat":[{"id":"a1","v":["date1","date2"…"daten"]}]
"linesng":[{"id":"date1","v":[data1]},{"id":"date2","v":[data2]},……,{"id":"daten","v":[datan]}]
}。
5.根据权利要求1所述的基于JSON的洪水预报方法,其特征在于,将所述空间二维数据的JSON接口格式中的闲置的id索引节点存储位改为对应的时间,即为所述三维数据中的JSON接口格式。
6.根据权利要求1所述的基于JSON的洪水预报方法,其特征在于,所述复杂数据为零维到三维基础结构无法清晰描述的数据,通过零维到三维基础结构组合构成。
7.根据权利要求1所述的基于JSON的洪水预报方法,其特征在于,所述洪水预报的数据包括:起始状态数据、等时段水位流量数据、实测水位流量数据、等时段点雨量数据、等时段面雨量数据、等时段径流深数据、结束状态数据、等时段水位流量数据、空间数据和GIS数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110886951.3A CN113570150A (zh) | 2021-08-03 | 2021-08-03 | 一种基于json的洪水预报方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110886951.3A CN113570150A (zh) | 2021-08-03 | 2021-08-03 | 一种基于json的洪水预报方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113570150A true CN113570150A (zh) | 2021-10-29 |
Family
ID=78170134
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110886951.3A Pending CN113570150A (zh) | 2021-08-03 | 2021-08-03 | 一种基于json的洪水预报方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113570150A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101864750A (zh) * | 2010-06-29 | 2010-10-20 | 西安理工大学 | 多模型综合集成洪水预报系统及其预报方法 |
CN104851360A (zh) * | 2014-02-14 | 2015-08-19 | 杭州贵仁科技有限公司 | 一种洪水风险图的生成方法和系统 |
CN105843942A (zh) * | 2016-04-01 | 2016-08-10 | 浙江大学城市学院 | 一种基于大数据技术的城市防汛决策支持系统 |
US20170168195A1 (en) * | 2015-12-15 | 2017-06-15 | Wuhan University | Method for forecasting floods for multiple lead times |
CN110555069A (zh) * | 2018-05-15 | 2019-12-10 | 中国科学院城市环境研究所 | 一种基于hec-hms模型的实时在线洪水预报方法 |
CN110619432A (zh) * | 2019-09-17 | 2019-12-27 | 长江水利委员会水文局 | 一种基于深度学习的特征提取水文预报的方法 |
CN112100130A (zh) * | 2020-09-09 | 2020-12-18 | 陕西师范大学 | 一种基于数据立方体模型的海量遥感变量多维聚合信息的计算方法 |
-
2021
- 2021-08-03 CN CN202110886951.3A patent/CN113570150A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101864750A (zh) * | 2010-06-29 | 2010-10-20 | 西安理工大学 | 多模型综合集成洪水预报系统及其预报方法 |
CN104851360A (zh) * | 2014-02-14 | 2015-08-19 | 杭州贵仁科技有限公司 | 一种洪水风险图的生成方法和系统 |
US20170168195A1 (en) * | 2015-12-15 | 2017-06-15 | Wuhan University | Method for forecasting floods for multiple lead times |
CN105843942A (zh) * | 2016-04-01 | 2016-08-10 | 浙江大学城市学院 | 一种基于大数据技术的城市防汛决策支持系统 |
CN110555069A (zh) * | 2018-05-15 | 2019-12-10 | 中国科学院城市环境研究所 | 一种基于hec-hms模型的实时在线洪水预报方法 |
CN110619432A (zh) * | 2019-09-17 | 2019-12-27 | 长江水利委员会水文局 | 一种基于深度学习的特征提取水文预报的方法 |
CN112100130A (zh) * | 2020-09-09 | 2020-12-18 | 陕西师范大学 | 一种基于数据立方体模型的海量遥感变量多维聚合信息的计算方法 |
Non-Patent Citations (1)
Title |
---|
陈瑜彬等: "流域防洪预报调度一体化系统若干关键技术研究", 《人民长江》, vol. 50, no. 07, pages 223 - 227 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103425772B (zh) | 一种具有多维信息的海量数据查询方法 | |
CN105117573B (zh) | 基于cad排水管网图纸信息的自动水力模型构建方法 | |
CN110866974A (zh) | 一种基于三维展示的水工监测系统 | |
CN101599070A (zh) | 在土地利用信息多尺度表达中的空间数据库综合方法 | |
CN108614915B (zh) | 基于情景驱动的水文模型自由组建策略方法 | |
CN113361742A (zh) | 一种基于水文模拟的区域综合干旱识别方法 | |
Meng et al. | Prediction of per capita water consumption for 31 regions in China | |
Xu et al. | Evaluation of spatiotemporal dynamics of simulated land use/cover in China using a probabilistic cellular automata-Markov model | |
CN114048203A (zh) | 基于数据库B-tree索引的北斗网格空间索引与检索方法和装置 | |
CN113190580A (zh) | 一种水力发电站数据缓存操作方法和系统 | |
CN114048271A (zh) | 北斗网格数据模型在数据库中的存储方法和装置 | |
CN115654381A (zh) | 一种基于图神经网络的供水管道漏损检测方法 | |
Luo et al. | Research on stage-divided water level prediction technology of rivers-connected lake based on machine learning: a case study of Hongze Lake, China | |
CN113312736B (zh) | 基于云平台的河网水动力模拟实现方法及系统 | |
CN106485017A (zh) | 一种基于CA‑Markov模型的土地利用时空变化模拟方法 | |
CN113570150A (zh) | 一种基于json的洪水预报方法 | |
CN109241216B (zh) | 使用电网层级存储数据库架构实现网格化管理的方法 | |
CN102254093B (zh) | 基于泰森多边形的连通域统计相关算法 | |
CN109064036B (zh) | 面向管理领域的生态系统服务供需指数变化检测方法 | |
CN102142000B (zh) | 一种多比例尺tin库耦合存储方法 | |
Lin et al. | Development of a visualization platform oriented to Lake water quality targets management-A case study of Lake Taihu | |
CN115964875A (zh) | 一种数字孪生水网四面体模型构建方法 | |
CN113656852B (zh) | 一种精细化河道地形快速生成方法 | |
Ma et al. | A tiled multi-city urban objects dataset for city-scale building energy simulation | |
Wang et al. | Research on scale demonstration technology of inter basin water transfer project in agricultural irrigation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |