基于mike平原河网水动力学模块建模教程

news2024/10/6 6:00:25

   Mike 11是在河流模拟中应用非常广泛的优秀软件,在洪水演进、实时洪水预报、水库和水工建筑物优化调度、水工建筑物设计、桥梁的水力设计、溃坝过程模拟、河流泥沙输移和河道演变、河流及湿地的生态及水质评估、水污染对流和扩散、突发日常水质污染事故预警方面得到了非常广发的研究。

    Mike11模型适用性强且界面友好,在水文分析计算和工程规划设计中也有很多典型的应用,今天我们以一个典型的平原河网一维水动力学建模为例,学习和了解一下Mike11水动力模型在平原河网地区防洪规划项目中的应用。

基本原理

Mike11水动力模型的基本原理是圣维南方程组,

其表达式如下:

图片

  其中:A为过水断面面积,m;

  t为时间,s;

  Q为流量m³/s;

  g为重力加速度g/s²;

  h为水位,m;

  C为谢才阻力系数;

  R为过水断面的水力半径,m;

  q为单位流程上的侧向出流量,m³/s。

   方程组利用Abbott-Lonescu六点隐式有限差分格式求解,该格式在每一个网格点不是同时计算水位和流量,而是按照顺序交替计算水位或流量,分别称为H和Q点,两个流量点之间采用连续性方程求解,两个水位点之间采用动量方程求解。Abbott-Lonescu格式具有稳定性好、计算精度高、计算速度快的特点。离散后线性方程组用追赶法求解。

模型结构

Mike11河流水动力学模型包含数据主要有:

(1)流域描述(主要包括河网的形状和水工建筑物的位置);

(2)河道和滩区地形(即河床断面数据);

(3)模型边界处水文测量数据;

(4)水工建筑物的设计参数以及调度规则等组成。

     模型将以上数据存放在河网文件(.nwk11)、断面文件(.xns11)、边界文件(.bnd11)、水动力学参数文件(.hd11)、时间序列(.dfs0)内并按照下图所示的结构组织管理数据进行模拟工作。

图片

摸型建立

1、首先新建一个模拟文件

Mike11中的模拟文件主要由三个作用:

(1)相当于一个中央管理器,集成河网文件、断面文件、边界文件、参数文件的信息,使他们成为一个集体。

(2)用于定义模拟时间步长、模拟的开始时间和结束时间、结果文件名等。

(3)启动模拟,通常在在模拟文件的Models界面勾选Hydrodynamic模块选择非稳态模拟模式就可以了。

图片

模拟文件示意图

   定义模型类型后就可以在input界面输入模拟文件所需要的各类文件。

   模型的计算时间步长共有三种类型,即固定时间步长、列表时间步长和自适应时间步长,默认情况下选择固定时间步长。时间步长和克朗数有关,一般情况下,认为克朗数小于1,模型不发散;水动力模型对柯朗数要求并不高,一般小于10模型即会稳定计算

图片

2、建立河网文件

    向河网文件中添加图层,可以将河道中心线的.shp文件导入到新建的河网文件中,软件可以自动根据.shp文件生成河网。

    河网生成后,可以在表格视窗中对河道的长度、名称和地形标识等信息进行定义和修改

图片

自动生成河道示意图

图片

表格视窗示意图

3、建立断面文件

   Mike11断面文件中的每一个断面都由断面所在的河流名称地形标识Topo ID以及断面所在河流位置的里程三个条件唯一确定。

可以在列表视窗中添加、查看和修改断面资料;

也可以使用工具条在图像视窗中修改断面数据;

表格视窗中可以对断面的滩地河道糙率进行区别设定。

图片

断面文件示意图

4、建立边界文件

   边界文件界面主要由三个分隔窗口组成,最顶端的窗口用于定义模型所有的边界条件。Mike11水动力学模型在计算河道水面线上游入流处下游出口处都需要设置边界条件。

   通常情况下上游入流处为流量边界下游出口处为水位边界或者h-q边界。因为实际运用中的边界条件可能是随时间变化的,就需要输入一个时间序列作为边界条件。

   Mike 11可调用的时间序列文件有特定的格式,可以在时间序列(.dfs0)文件中进行设置。在边界文件最下面的窗口边界文件类型中可以选择常量或者时间序列进行输入。

  值得注意是!!!

1、边界应设在远离研究区域,系统内部的变化不应导致边界条件的变化。

2、核心区域不应受边界条件的直接影响。

图片

边界文件示意图

5、建立HD参数文件

   水动力参数文件的设置主要包括初始条件河床糙率的设定。

   原则上初始水位(或水深)和流量应该尽可能与模拟开始时的河道中的水动力条件一致

    在实际运用中,为保证模型顺利起算,需要注意的是!!!

1、初始流量通常给可以设一个接近于0的值;

2、初始水位不能高于河岸或者低于河床

   初始流量若已经有计算得到的结果文件,可以将其引入热启动文件作为模型的初始计算条件

   河床糙率是率定参数,应根据对模拟河道的实测情况进行及计算结果确定,通常从n=0.03(M=30)开始率定

模型率定

模型的结果文件为.res11格式,

通过Mike View来演示和提取计算结果。

图片

模拟结果示意图

   实际工程中,使用Mike11模型计算水面线,对于基础资料的要求较高,由于受到方程数值解法以及实测数据的处理等影响,存在误差难以避免

    把模拟结果与实测结果比较是最常用的率定手段。Mike View可绘制计算结果图,还可以把实测结果导入,与计算结果图进行叠加显示,从而进行模拟结果与实测结果的比较。通常从下游断面开始通过优化糙率来率定模型从而减少计算误差

模型中的问题

1、坐标系转换

   在通过创建河网文件的过程中,采用GIS矢量图绘制河网相对于根据流域图纸绘制河网更为简便一些。

   在使用GIS处理河道中心线的过程中需要注意的是!!!

  1、统一坐标系,为了在后续操作过程中方便计算,可以事先在GIS中将所需的河道中心线转换为相应投影坐标系,编辑好河流名称及Topo ID等具体的属性字段,再导入Mike中进行自动生成河道。可以十分便捷的生成河网文件,减少工作量。

  2、通过shp文件生成的河道其上下游位置经常颠倒,为了防止这种情况出现,可以在GIS中将各个干支流的流向根据河流的实际流向修改一致再导入Mike中。

   这里需要特别注意!!有支流存在的河网,在处理GIS文件时要将干支流河道断开,导入Mike之后,使用连接工具将河道连接起来。

2、干支流洪水错峰

   在使用Mike11水动力模型进行计算的时候,常常会遇到干支流洪水组合和遭遇的问题。

   例如在计算水面线的时候,在有干支流洪水相互顶托的河段,应该分析洪水组合和遭遇规律,进行不同组合情况的水面线推算。一般采用同频率流量叠加同时流量叠加两种基本分析方法:

  (1)同频率叠加法是指利用支流汇入口以上干、支流设计洪峰流量同频率叠加得出支流汇入点以下同频率洪峰流量。一般情况下,在同一次降雨过程中,由于干支流的河道长度以及流域面积相差较大,干支流洪峰流量过程同时遭遇的可能性极小。

  (2)同时流量叠加法就是利用支流汇入口以上的干支流同时洪峰流量相叠加,得到汇入口以下洪峰流量之后进行频率分析,通常分为以干流为主,支流相应和支流为主,干流相应两种情况。

   在建模过程中首先通常根据洪峰的传递时间运行模型分别确定干支流洪峰到达汇入口的时间t1、t2。

   根据干流到达汇入口的时间t1,调整支流流量边界中的时间序列,就可以实现干支流洪水的峰对峰叠加,在工程建设中通常考虑这种偏于不利情况。

   由此可以看到在进行平原河网水动力学模型构建的过程中对模拟河段的基础资料要求比较高的,从结果分析,Mike11水动力学模型关于平原河网中的相关水力计算结果也是可靠的。

 

   Mike 11模型应用非常广泛,无论项目涉及洪水、航运、水质、预报、泥沙或是其中几项的组合,Mike11都能解决。

   针对不同的项目,涉及的模块也有所不同,建模过程当中遇到的参数率定和模型验证问题,也会有所不同。模型模拟结果的展示也有所侧重,比如河流某一个断面横向水位变化,整体河流纵剖面水位变化展示,某一点水位流量污染物浓度数据查询和展示,模型不同参数的率定分析和展示等。

   Mike11模型的学习和应用,从入门到熟练,从单因素到多因素,从洪水到水质,需要多个项目的建模实践。通过长期的项目实践,才可以更好的服务于区域的防洪规划设计、以及各种水文学研究,让热爱建模的我们一起学习和成长吧。

更多内容请看:

HEC-RAS洪水建模最详细教程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/954403.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

像linux 一样清理Windows C盘

像 linux 有命令 du -sh 查看文件夹大小 但是windows 可就没有这个命令了,就算有命令,也不能扫描子目录里面的文件 但是windows 可以借助 软件来清理,和linux 一样 文件上面是目录,下面是文件所占用空间大小的图,咋…

【ES6】Promise.race的用法

Promise.race()方法同样是将多个 Promise 实例,包装成一个新的 Promise 实例。 const p Promise.race([p1, p2, p3]);上面代码中,只要p1、p2、p3之中有一个实例率先改变状态,p的状态就跟着改变。那个率先改变的 Promise 实例的返回值&#…

算法——排序

排序 下面的代码会用到宏定义,因为再C中没有swap交换函数,所以对于swap的宏定义代码如下: #define swap(a, b) {\__typeof(a) __a a; a b; b __a;\ } 稳定排序: 1.插入排序: 插入排序会将数组,分位两个部…

RS485/RS422 收发器(SIT3485和SIT3485E)

SIT3485 是一款 3.3V 供电、半双工、低功耗,功能完全满足 TIA/EIA-485 标准要求的 RS-485 收发器。 SIT3485 包括一个驱动器和一个接收器,两者均可独立使能与关闭。当两者均禁用时,驱动 器与接收器均输出高阻态。 SIT3485 具有 1…

手把手教你打造自己的AI聊天机器人程序(讯飞星火API)

案例背景 最近发现科大的讯飞星火大模型可以申请API试用了,我一直想用chatgpt的API,一是因为收费买不起,二是因为网络不方便..... 现在有了科大讯飞这个国内免费的,当然要试试。 目前讯飞星火可以申请试用他们的模型API&#x…

影视文化交流:如何通过Netflix了解和欣赏全球不同的影视文化

Netflix成立于1997年,是一家美国的在线流媒体平台。自推出以来,Netflix迅速发展壮大,目前已经成为全球领先的影视内容提供商之一。截至2022年底,Netflix在全球范围内拥有超过2.07亿的付费订阅用户,遍布190多个国家和地区。通过其便捷的平台和丰富的内容库,Netflix为全球观众带来…

Python怎么解决版本兼容性的问题? - 易智编译EaseEditing

Python的版本兼容性问题是在不同Python版本之间代码能否正常运行的问题。由于Python的语言和库在不同版本之间可能存在细微的差异,因此编写能够在多个Python版本上运行的代码是很重要的。 以下是一些解决Python版本兼容性问题的方法: 使用合适的语法&a…

R语言入门——line和lines的区别

目录 0 引言一、 line()二、 lines() 0 引言 首先,从直观上看,lines比line多了一个s,但它们还是有很大的区别的,下面将具体解释这个两个函数的区别。 一、 line() 从R语言的帮助文档中找到,line()的使用&#xff0c…

JS小知识点:在定义对象的时候,用变量值作为对象属性名

有没有一种情况,在定义一个对象时,对象的属性名由一个变量的值来决定的?而且是一步到位,简单实现的? 我们知道对象有时被称为关联数组,访问对象属性值的时候可以使用括号表示法(比如 objectNam…

揭秘ChatGPT,如何打造自己的自定义指令 | 京东云技术团队

一、ChatGPT-0720更新 又在深夜,正要打开ChatGPT官网测试下pdf对话功能,发现ChatGPT又有更新。本次更新总结有2点: 1.对于Plus用户,GPT-4的使用限额从25条/3h提升至50条(整整提升1倍~ $20的订阅费又更超值了&#xf…

成集云 | 飞书审批同步金蝶云星空 | 解决方案

源系统成集云目标系统 方案介绍 飞书员工报销审批通过后,审批单据内容和审批状态实时同步金蝶云星空 飞书是字节跳动于2016年自研的新一代一站式协作平台,将即时沟通、日历、云文档、云盘和工作台深度整合,通过开放兼容的平台,…

小白学Go基础01-Go 语言的介绍

Go 语言对传统的面向对象开发进行了重新思考,并且提供了更高效的复用代码的手段。Go 语言还让用户能更高效地利用昂贵服务器上的所有核心,而且它编译大型项目的速度也很快。 用 Go 解决现代编程难题 Go 语言开发团队花了很长时间来解决当今软件开发人员…

C位运算做标识位使用

C位运算做标识位使用

【重要】为什么串行NAND Flash不支持XiP?

并行/串行NOR Flash都支持XIP,但是串行NAND Flash不支持。 今天给大家介绍的是串行NAND Flash的两大特性导致其在i.MXRT FlexSPI下无法XiP。 在嵌入式世界里,当我们提起XiP设备(支持代码原地执行的存储器),首先想到的应…

从传统到智能化:汽车内部通信的安全挑战与SecOC解决方案

01/需求背景 Demand background 在传统的汽车电子结构中,车内的电控单元(ECU)数量和复杂性受到限制,通信带宽也受到限制。因此,人们普遍认为车内各个ECU之间的通信是可靠的。只要ECU节点接收到相应的消息&#xff0c…

SQL高阶语句

1、概念 1.1、概述 在MySQL中,高阶语句是指一些复杂、高级的查询语句或操作,用于满足更特定和复杂的数据需求。这些高阶语句通常涉及更多的SQL功能和技巧,以扩展MySQL的功能和性能。 在MySQL中,它们扩展了基本的SELECT、INSERT、…

[ROS]虚拟机ubuntu18.04系统里面运行usb_cam

首先安装usb_cam sudo apt-get install ros-melodic-usb-cam 运行: roscore roslaunch usb_cam usb_cam-test.launch 如果一运行报错,首先确认是否存在/dev/video0 可以使用ls /dev/video*查看,如果没有就是没有连接摄像头,…

ChatGPT总结(持续更新)

目录 体验渠道 weTab CSDN-AI助手 其他插件 ChatGPT简介 ChatGPT主要用途 ChatGPT发展历程 GPT-4架构的特点和优势 ChatGPT的工作原理 神经网络和自然语言处理技术 Transformer模型 模型训练优化技巧 ChatGPT对程序员的帮助 与ChatGPT交互和提问技巧 ChatGPT未来…

中国移动携手移远通信等合作伙伴发布 RedCap“1+5+5”创新示范之城

日前,《关于推进5G轻量化(RedCap)技术演进和应用创新发展的通知(征求意见稿)》正式公布,将进一步推进5G RedCap 技术演进、产品研发及产业化,大力推动5G应用规模化发展。 为加快推动RedCap规模…

TSMaster小功能分享—Python小程序如何导入外部库

今天给大家介绍TSMaster功能之Python小程序如何导入外部库。通过在 TSMaster 默认的解析器路径下导入外部库来介绍,以便我们去使用 Python 外部库。TSMaster 默认 Python 解析器下安装外部库。 步骤一 在 TSMaster 工具->系统信息->python 环境设置中选择打开…