嫩江右侧主要支流洪水预报系统的设计与实现

2011-08-08 07:20:18黎世忠杨斌斌
东北水利水电 2011年12期
关键词:水文洪水数据库

黎世忠,杨斌斌

(1.德惠市水利局,吉林 德惠 130300;2.松辽水利委员会水文局(信息中心),吉林 长春 130021)

0 引言

嫩江右侧主要支流水情自动测报系统建设的主要目的是为了满足尼尔基水库补偿凑泄预报调度的要求以及嫩江下游蓄滞洪区洪水调度的需要,为松花江流域和尼尔基水库防洪调度提供科学的决策依据。

嫩江右侧主要支流洪水预报系统的建设目标是:基于现有报汛站、新建站,以实时水情数据库、历史水情数据库为数据源,选用适合流域特点的水文模型,编制实时洪水预报方案,同时以DEM数字高程模型、先进的雨量查补技术、实时校正技术为辅助手段,依托计算机网络环境,遵循水利部统一的技术架构,开发集预报与调洪演算为一体的洪水预报系统,有效提高嫩江右侧主要支流洪水预报的精度和预见期,为松辽委防汛抗旱和水资源管理提供科学、合理的洪水预测预报和调洪成果。

1 系统的总体框架

在洪水预报系统设计选择浏览器/服务器(B/S)结构和客户机/服务器(C/S)结构混合的异构软件体系结构,传统的C/S体系结构(无论是二层还是多层)和新兴的B/S体系结构各有其优点和缺点。在设计中扬长避短,由单位内部人员使用的模块采用C/S结构,由各级领导及查询人员使用的模块采用B/S结构。

外部用户不直接访问数据库服务器,能保证数据库的相对安全。内部用户的交互性较强,数据查询和修改的响应速度较快。同时,C/S与B/S混合软件体系结构,能节省开发和维护成本,使系统具有良好的开放性,易扩展性,便于移植等优点。

嫩右洪水预报系统的总体逻辑结构框架可分以为3个层次:人机交互层、系统应用层和系统支撑层。人机交互层是嫩右洪水预报系统与业务分析人员、决策分析人员和高层决策者进行交互的层;系统应用层完成洪水预报作业过程中各个阶段、各个环节的多种信息需求和分析处理;系统支撑层主要是对各种水雨工情数据、模型、方法、知识、图形、空间信息等进行数据管理。系统的总体逻辑结构框架见图1。

图1 系统的总体逻辑结构框架

2 面向对象的程序设计

面向对象编程是考虑要开发的问题空间的一种方法,是把系统分解到组件,考虑组件之间的相互交互,这些组件称为对象,包括与系统中其他组件交互所需的数据与编程逻辑分开考虑。面向对象编程的基本思路是系统中的一切都是对象,这些对象具有封装性、继承性、可复用性,极大地提高了面向对象系统的可扩充性和可复用性。在全面分析洪水预报系统数据结构的基础上,运用抽象、聚类、分解等信息建模方法,定义了水文模型及其参数率定方法。

水文模型的选择是洪水预报的关键问题,目前广泛使用的概念性模型主要有新安江模型、API模型、Tank模型、大伙房模型等等,系统目前使用的模型是三水源新安江模型。但是为了保证系统的可扩展性和可移植性,必须使系统兼容不同的水文模型,而每种模型的结构和参数却有很大差别,不可能用同一模型函数加以实现,因此需要对各种水文模型的实现过程进行抽象,从接口的层面上定义模型。系统定义了HydrologicModel接口,其静态UML如图2,不同的水文模型只需要实现此接口中的各个方法。开发者只需要对HydrologicModel接口进行编程,而并不需要关心模型的实现细节,通过这种方法水文模型可以被轻易地移植、重用和扩展。

系统在进行参数自动率定时,常用的参数率定方法主要有SCE-UA算法、遗传算法、离子群算法、Rosenbroke算法等。该系统采用的是SCE-UA算法,在对三水源新安江模型进行参数率定时效果比较理想。但是由于不同的率定算法对于不同的水文模型在计算效率和精度上差别较大,为了使开发者今后能够对率定方法进行补充和扩展以便进行比较分析,系统仍然在算法结构上进行了抽象接口设计。系统定义了CalibrateMethod接口,其静态UML如图3。编程者如果今后要对率定算法进行扩展只需要实现此接口。

图2 水文模型对象描述

图3 率定方法对象描述

3 数据库设计原则

数据库是系统的基础部分,为所有功能提供信息支撑,设计数据库要从上到下,从高到低,从整体到局部,采用面向对象的方法来设计数据库,使数据库模块化,降低耦合性,方便以后的功能扩展或功能模块的移植。本次开发从便于处理大量水文时间序列,支持多用户、多方案操作的角度对数据库表结构进行了精心的设计,主要遵循了以下原则:

1)实用性原则:满足各工作环节的需求,充分考虑用户的一般要求和特殊要求,数据的取舍、关系的建立应符合洪水预报系统实际需求。

2)可靠性原则:数据表结构、属性(字段)的定义完整、明确、界限清晰,保证用户能方便、准确地采集和查询数据。尽可能遵从第三范式要求,减少数据冗余度,确保数据一致性,提高查询速度和系统的可靠性。

3)先进性原则:尽可能采用现代数据库技术,保证设计的先进性。必要时,适当放宽规范化要求和冗余度要求。

4)标准化原则:类别界定清晰,定义明确(无二义性),字段说明翔实。术语的采用,定义尽可能符合有关国家和行业规范,对没有国家或行业标准,但是使用频繁、数据量多的字段,或经常需要进行排序、统计的字段,定义本系统内统一的代码规则和代码表。

5)开放性原则:数据库能够灵活地进一步扩展,满足洪水预报系统业务的发展。

4 结语

1)系统坚持实用性、可靠性、先进性、开放性的原则,做到通用性强,界面清晰,接口标准,操作简便;系统充分吸收国内外成熟的经验,采用先进的设计思想和应用技术;系统的各个功能模块要结构化、模块化、标准化,形成标准组件。

2)在软件的开发过程中,将具有一定功能的程序模块按照规范的格式封装在一个组件中,并提供给其它的程序使用。在洪水预报系统中,中间件技术的应用主要体现在:数据库之间的同步和一致采用中间件编程的方式实现;洪水预报和调洪演算模型的调用采用中间件构建。

3)适用于水库群、多水文模型,避免重复开发,节约成本,达到资源优化配置,同时也为了便于将来扩展到流域管理,系统需要能适用于流域水库群环境,而且对于每个水库需集成多套水文模型。

4)采用交互式界面设计,采用直观的图形用户界面技术(GUI),信息表达形象、简洁、直观;以电子地图作为系统背景,实现系统的分布式表达和专业信息查询;各模型与系统界面控制程序之间平滑连接;系统操作以菜单、图形、标像等形象化的界面元素为基础,大多数操作可以通过鼠标点击完成,操作步骤和操作方法更加方便快捷。

猜你喜欢
水文洪水数据库
2022年《中国水文年报》发布
水文
水文水资源管理
洪水时遇到电线低垂或折断该怎么办
又见洪水(外二首)
天津诗人(2017年2期)2017-11-29 01:24:25
水文
数据库
财经(2017年2期)2017-03-10 14:35:35
数据库
财经(2016年15期)2016-06-03 07:38:02
数据库
财经(2016年3期)2016-03-07 07:44:46
洪水来了
幼儿画刊(2016年8期)2016-02-28 21:00:52