【MIKE水动力】MIKE11基本原理(上)

news2024/10/9 10:26:21

Mike11软件包由水动力、对流~扩散、水质、降雨~径流、洪水预报等模块组成,核心模块为水动力模块。Mike11水动力模块采用6点Abbott~Ionescu有限差分格式对圣维南方程组求解。

一、圣维南方程组

1、基本要素与假设条件

Mike11模型基于以下三个要素:反映有关物理定律的微分方程组;对微分方程组进行线性化的有限差分格式;求解线性方程组的算法。并基于以下几个假定:流体为不可压缩、均质流体;一维流态; 坡降小、纵向断面变化幅度小;符合静水压力假设。

2、圣维南方程组

{ δ Q δ x + δ A δ t = q δ Q δ t + δ ( α Q 2 A ) δ x + g A δ h δ x + g Q ∣ Q ∣ C 2 A R = 0 \left\{\begin{array}{l} \frac{\delta Q}{\delta x}+\frac{\delta A}{\delta t}=q \\ \frac{\delta Q}{\delta t}+\frac{\delta\left(\alpha \frac{Q^{2}}{A}\right)}{\delta x}+g A \frac{\delta h}{\delta x}+\frac{g Q|Q|}{C^{2} A R}=0 \end{array}\right. δxδQ+δtδA=qδtδQ+δxδ(αAQ2)+gAδxδh+C2ARgQQ=0
式中:Q为流量,m³/s;q为侧向入流,m³/s;A为过水面积,m²;h为水位,m;R为水力半径,m;C为谢才系数;a为动量修正系数。

3、方程离散

圣维南方程中的连续性方程和动量方程通过有限差分法进行离散,计算网格由流量点和水位点组成,其中流量点和水位点在同一时间步长下分别进行 计算,见图。计算网格由模型自动生成,水位点是横断面所在的位置,相邻水位点之间的距离可能 不同,流量点位于两个相邻的水位点之间。计算网格点的分布遵循以下规则:①河段上下游端点为计算水 位点;②支流入流点为计算水位点;③实测断面资料 点为计算水位点;④模型根据max△r值自动插入的点为计算水位点;⑤建筑物点为计算水位点;⑥两个水位点之间只存在一个计算流量点。
在这里插入图片描述

1. 连续方程

在连续方程中,引入蓄存宽度 b s b_{s} bs
∂ A ∂ t = b s ∂ h ∂ t (1) \frac{\partial A}{\partial t}=b_{s}\frac{\partial h}{\partial t}\tag{1} tA=bsth(1)
从而连续方程转变为:
∂ Q ∂ x + b s ∂ h ∂ t = q (2) \frac{\partial Q}{\partial x}+b_{s}\frac{\partial h}{\partial t}=q\tag{2} xQ+bsth=q(2)
由公式可以看出仅流量Q与x有关,方程很容易得到以h点为中心的6点隐式格式见图。
在这里插入图片描述
应用该离散格式,则连续方程变为:
∂ Q ∂ x ≈ Q j + 1 n + 1 + Q J + 1 n 2 − Q j − 1 n + 1 + Q j − 1 n 2 Δ 2 x j (3) \frac{\partial Q}{\partial x} \approx \frac{\frac{Q_{j+1}^{n+1}+Q_{J+1}^{n}}{2}-\frac{Q_{j-1}^{n+1}+Q_{j-1}^{n}}{2}}{\Delta 2 x_{j}}\tag{3} xQΔ2xj2Qj+1n+1+QJ+1n2Qj1n+1+Qj1n(3) ∂ h ∂ t ≈ h j n + 1 − h j n Δ t (4) \frac{\partial h}{\partial t} \approx \frac{h_{j}^{n+1}-h_{j}^{n}}{\Delta t}\tag{4} thΔthjn+1hjn(4) b s ≈ A e , j + A e , j + 1 Δ 2 x j (5) b_{s} \approx\frac{A_{e, j}+A_{e, j+1}}{\Delta 2 x_{j}}\tag{5} bsΔ2xjAe,j+Ae,j+1(5)式中: A e , j A_{e, j} Ae,j为网格点 j-1 与 j 之间的水面面积; A o , j + 1 A_{o, j+1} Ao,j+1为网格点 j 与 j+1 之间的水面面积; Δ 2 x j \Delta 2 x_{j} Δ2xj 为网格点 j-1 与 j+1 之间的距离。
将式(3)、式(4)代入方程(2) 变为:
Q j + 1 n + 1 + Q j + 1 n 2 − Q j + 1 n + 1 + Q j − 1 n 2 △ 2 x + b s ( h j n + 1 − h j n ) △ t = q j \frac {\frac{Q_ {j+1}^ {n+1}+Q_ {j+1}^ {n}}{2}-\frac {Q_ {j+1}^ {n+1}+Q_ {j-1}^ {n}}{2}}{\triangle 2x}+b_ {s} \frac {(h_ {j}^ {n+1}-h_{j}^ {n})}{\triangle t} =q_{j} △2x2Qj+1n+1+Qj+1n2Qj+1n+1+Qj1n+bst(hjn+1hjn)=qj
该方程可以简化为:
α j Q j − 1 n + 1 + β j h j n + 1 + γ j Q j + 1 n + 1 = δ j (6) \alpha_{j}Q_{j-1}^{n+1}+\beta_{j}h_{j}^{n+1}+\gamma_{j}Q_{j+1}^{n+1}=\delta_{j}\tag{6} αjQj1n+1+βjhjn+1+γjQj+1n+1=δj(6)式中:a、β、γ为b和δ的函数,其值决定于h点在时间n处及Q点在时间n+1/2处的值。

2. 动量方程

动量方程集中在流量点,其网格形式为以Q点为中心点的差分格式见图3。
在这里插入图片描述
依据6点中心Abbott - Ionescu差分法,动量方程可以表示如下:
∂ Q ∂ t ≈ Q j n + 1 − Q j n △ t (7) \frac{\partial Q}{\partial t}\approx \frac{Q_{j}^{n+1}-Q_{j}^{n}}{\triangle t}\tag{7} tQtQjn+1Qjn(7) ∂ ( α Q 2 A ) ∂ x ≈ [ α Q 2 A ] j + 1 n + 1 / 2 − [ α Q 2 A ] j − 1 n + 1 / 2 △ 2 x i (8) \frac {\partial (\alpha \frac {Q^2}{A})}{\partial x}\approx \frac{[\alpha \frac{Q^2}{A}]_{j+1}^{n+1/2}-[\alpha \frac{Q^2}{A}]_{j-1}^{n+1/2}}{\triangle 2xi}\tag{8} x(αAQ2)△2xi[αAQ2]j+1n+1/2[αAQ2]j1n+1/2(8) ∂ h ∂ x = h j + 1 n + 1 + h j + 1 n 2 − h j − 1 n + 1 + h j − 1 n 2 △ 2 x j (9) \frac {\partial h}{\partial x}=\frac{\frac{h_{j+1}^{n+1}+h_{j+1}^{n}}{2}-\frac{h_{j-1}^{n+1}+h_{j-1}^{n}}{2}}{\triangle 2x_{j}}\tag{9} xh=△2xj2hj+1n+1+hj+1n2hj1n+1+hj1n(9)
对公式(8)中的二次项,引入以下公式:
Q 2 ≈ θ Q j n + 1 Q j n − ( θ − 1 ) Q j n Q j n (10) Q^2\approx \theta Q_{j}^{n+1}Q_{j}^{n}-(\theta -1)Q_{j}^{n}Q_{j}^{n}\tag{10} Q2θQjn+1Qjn(θ1)QjnQjn(10)式 中 : θ 角的值通过HD参数文件“默认值”中的“THETA”系数来给定,默认值为1。
由上,动量方程可以表达为:
α j h j − 1 n + 1 + β j Q j n + 1 + γ j h j + 1 n + 1 = δ j (11) \alpha _{j}h_{j-1}^{n+1}+\beta _{j}Q_{j}^{n+1}+\gamma _{j}h_{j+1}^{n+1}=\delta _{j}\tag{11} αjhj1n+1+βjQjn+1+γjhj+1n+1=δj(11)其中 α j = f ( A ) \alpha _j=f(A) αj=f(A)
β j = f ( Q j n , Δ t , Δ x , C , A , R ) \beta _j=f(Q_{j}^{n},\Delta t,\Delta x,C,A,R) βj=f(Qjn,Δt,Δx,C,A,R) γ j = f ( A ) \gamma _j=f(A) γj=f(A) δ j = f ( A , Δ x , Δ t , α , q , v , θ , h j − 1 n , Q j − 1 n + 1 / 2 , Q j n , h j + 1 n , Q j + 1 n + 1 / 2 ) \delta _j=f(A,\Delta x,\Delta t,\alpha,q,v,\theta,h _{j-1}^{n},Q _{j-1}^{n+1/2},Q _{j}^{n},h _{j+1}^{n},Q _{j+1}^{n+1/2}) δj=f(A,Δx,Δt,α,q,v,θ,hj1n,Qj1n+1/2,Qjn,hj+1n,Qj+1n+1/2)
在默认的条件下,软件在一个时间步长里用两次迭代来对这些方程进行求解。初次迭代起始于第 一个时间步长,第二次迭代采用第一次计算值的中心差值来进行计算。迭代次数可以通过NoITER系 数来进行修改。

参考文献

  • 《DHI MIKE FLOOD 洪水模拟技术应用与研究》,衣秀勇等编著

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

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

相关文章

开源流程引擎activiti、flowable、camunda选哪个好?

市场上比较有名的开源流程引擎有osworkflow、jbpm、activiti、flowable、camunda。其中:Jbpm4、Activiti、Flowable、camunda四个框架同宗同源,祖先都是Jbpm4,开发者只要用过其中一个框架,基本上就会用其它三个。低代码平台、办公…

IO流概念、FileWriter类及FileReader类详解

目录 IO流概述和分类 ​编辑FileWriter写数据 FileWriter写数据的方法 FileWriter写数据常见问题 FileReader读数据 IO流概述和分类 IO流用来处理设备之间的数据传输–文件复制,上传文件和下载文件 IO流分类–输出流——FileWriter –输入流——FileReader 图式详解&am…

< 每日算法 - Javascript解析: 交通枢纽 >

每日算法 - JavaScript解析:交通枢纽一、任务描述:》 示例一:》示例二二、题意解析拓展知识三、解决方案:往期内容 💨一、任务描述: 为了缓解「力扣嘉年华」期间的人流压力,组委会在活动期间开…

谷歌优化排名怎么做?Google SEO怎么优化?

本文主要分享关于Google自然排名优化中的一些方法和技巧,让你更快的做好谷歌排名。 本文由光算创作,有可能会被修改和剽窃,我们佛系对待这种行为吧。 谷歌优化排名怎么做?Google SEO怎么优化? 答案是:创…

CMOS器件与TTL器件CMOS电平与TTL电平

常用的数字芯片,按制造工艺主要分为TTL器件和CMOS器件。TTL器件是指其内部主要逻辑单元为双极性晶体管,CMOS器件是指其内部的主要逻辑单元为MOS管。现在绝大部分数字芯片使用的工艺都是CMOS工艺,在一些比较老的74系列芯片中还使用的是TTL工艺…

51单片机最强模块化封装(1)

文章目录前言一、sys文件创建和路径添加1.创建文件夹添加文件夹路径二、sys文件编写1.sys.h2.sys.c三、模块化的测试总结前言 今天将为大家讲解51单片机的模块化封装,为什么要讲这个模块化封装呢?模块化封装将提高我们代码的可移植性和可复用性&#xf…

力扣刷题记录——1002. 查找共用字符、905. 按奇偶排序数组、 977. 有序数组的平方

本专栏主要记录力扣的刷题记录,备战蓝桥杯,供复盘和优化算法使用,也希望给大家带来帮助,博主是算法小白,希望各位大佬不要见笑,今天要分享的是——《力扣刷题记录——1002. 查找共用字符、905. 按奇偶排序数…

服务器被ddos攻击的处置策略

如果您的服务器遭到了DDoS攻击,以下是一些可以采取的措施:使用防火墙和安全组进行限制:限制服务器的流量以防止进一步的攻击。升级服务器资源:为了应对更高的流量,可以升级服务器的内存,处理器等资源。安装…

GraspNet-1Billion

目录 .1 intro .2 Dataset 2.1 data collection: 2.2 data annotation 2.3 evaluation .3 backbone 3.1 Training and Inference 3.2 Experiment References .1 intro contribution: 一个具有统一评价体系的大规模抓取姿态检测数据集 评估系统通过解析计…

顶会论文 | 虚拟网络探测技术的探索与实践

作者:吕彪 阿里云网络齐天负责人 云网络由物理网络和虚拟网络共同组成,两者都会影响网络性能。过去的研究主要集中于解决物理网络探测,而在虚拟网络探测领域的相应研究则较少。本文将为大家分享一种专为大规模多租户虚拟网络设计的主动探测系…

SAP进阶技术分享一:ABAP增强(1)

一:基于源代码的增强 1.定义 源代码增强以子程序形式发布,可以用PERFORM调用这些子程序,发布的时候是空的,提供一个空代码的子过程,用户可以添加自己的代码。 2.特点 需要修改sap的标准代码。   屏幕增强以客户屏幕…

opencv轮廓相关函数

查找轮廓contours, hierarchy cv2.findContours(image,mode,method)参数:image:寻找轮廓所使用的图像。(寻找过程不修改此图像)mode:模式。cv2.RETR_EXTERNAL只检测外轮廓;cv2.RETR_LIST检测的轮廓不建立等…

【Qt】10.Linux下,Qt连接云MySQL数据库

目录 下载MySQL压缩包 配置MySQL Qt下编译MySQL 测试 下载MySQL压缩包 网址: MySQL :: Download MySQL Community Server (Archived Versions)https://downloads.mysql.com/archives/community/ 我为了跟云服务器上的MySQL版本一致,减少不必要的麻…

带你手撕排序算法

文章目录前言一、排序的相关概念二、插入排序1.直接插入(1)算法思想(2)算法讲解(3)代码及解析(4)代码总结2.希尔排序( 缩小增量排序 )(1)算法思想&#xff08…

maxcomputer的分区表相关操作

– 查看xsxw(学生行为表定义) desc xsxw; – 查看xsxw1(学生行为表定义) desc xsxw1; – 上面的两张表是通过ddl语句创建的分区表 – 创建ddl语句如下 – CREATE TABLE IF NOT EXISTS xsxw1( – xwsj STRING COMMENT ‘行为时间’, – xh STRING COMMENT ‘学号’, – xwdd ST…

基于OptiSystem的LD\LED\EDFA仿真分析

1、客户需求: (1) 仿真LD、LED直接调制系统的输出光谱,观察系统输出性能。 (2) 采用EDFA的光纤通信系统,实现对多路光波信号的放大,实现200km、40Gbit/s的传输。用仿真软件搭建一个…

关系数据库——关系代数

文章目录一、传统的集合运算二、专门的关系运算1.选择(restriction)2.投影(Projection)3.连接(join)1)等值连接2)自然连接4.除(Division)一、传统的集合运算 …

《深入浅出计算机组成原理》学习笔记 Day17

冒险和预测(一)1. 结构冒险2. 数据冒险参考1. 结构冒险 结构冒险本质上是一个硬件层面的资源竞争问题,也就是一个硬件电路层面的问题。 CPU 在同一个时钟周期内,同时在运行两条计算机指令的不同阶段,但这两个不同阶段…

Github消息推送到Telegram,并使用Vercel部署

Github buibuibui Telegram 仓库地址:https://github.com/yesmore/gh-buibuibui-tg 借助 Github 的 Webhooks、Vercel’s Serverless API 和 Telegram Bot,连接 Github 和 Telegram,在 Telegram chat 中接收仓库的消息。 效果:你…

深入分析ConcurrentHashMap1.8的扩容实现

什么情况会触发扩容 当往hashMap中成功插入一个key/value节点时,有可能触发扩容动作: 1、如果新增节点之后,所在链表的元素个数达到了阈值 8,则会调用treeifyBin方法把链表转换成红黑树,不过在结构转换之前&#xff0…