二维、非结构网格、有限体积法求解浅水方程代码,带算例。不可多得的源代码。
一维浅水方程:我的MATLAB代码和“自然流模型”课程的最终实际测试报告
1
使用四种有限差分方案(Lax-Friedrichs、Lax-Wendroff、MacCormack 和 Adams Average)来求解一维浅水方程。 亚当斯平均方案是我自己(詹姆斯·亚当斯)在 2014 年设计的。 使用溃坝条件(初始水流速度设置为零)。 给出了零梯度(水流出域)或反射边界条件的选择。 绘制每次迭代的水位高度和速度。 使用启发式时间步长。 如果时间步长太小,模拟将停止。 模拟完成后绘制时间步长值的图形。
2021-12-06 18:55:58 4KB matlab
1
玩转。 更改参数。 拍电影? 享受。
2021-12-06 18:44:29 2KB matlab
1
针对溃坝水流的特点, 提出了一种基于二维浅水方程的数学模型, 对溃坝水流进行数值模拟研究. 模型采用二阶leap-frog格式和一阶迎风格式相结合的有限差分格式进行数值离散, 计算网格采用时间和空间交错网格. 在模型建立完善的基础上, 对模型进行一维和二维的数值验证, 主要算例包括:下游有水的溃坝洪水理论解, 带有三角形障碍物的一维溃坝模型试验以及二维溃坝数值模型试验. 通过与理论解和实测值比较, 结果表明模型具有良好的稳定性以及模拟间断水流和处理动边界问题的能力.
2021-12-06 18:41:29 643KB 自然科学 论文
1
基于距离的精确二维自动网格生成工具箱,用于海岸海洋/浅水流动模型。 目录 重要的提示: 这是默认和推荐的PROJECTION分支。 除非您另外需要旧版( MASTER分支)或绝对最新的功能( DEV分支),否则请使用它。 OceanMesh2D是一组用户友好的MATLAB函数,用于生成二维(2D)非结构化网格以解决沿海海洋环流问题。 这些网格基于各种特征驱动的几何和测深网格尺寸函数,这些函数是根据用户定义的参数生成的。 网格生成是通过力平衡算法与旨在改善最坏情况三角形质量的多种拓扑改进策略相结合来实现的。 该软件将网格生成过程嵌入到一个面向对象的框架中,该框架包含预处理和后处理工作流程,从而使网格生成更加灵活,可重现和可编写脚本。 获得帮助 除了在Github上发布代码外,您还可以通过我们的Slack频道提问。 注意:如果松弛链接邀请不起作用,请发送我们中的任何一个和一封电子邮件,我
1
Matlab 求解偏微分的代码SW_riemann_problem 流体深度 h(x,t) 流体速度 u(x,t) 浅水方程黎曼问题的精确解:稀疏波、冲击和接触不连续性 介绍 该存储库包含一些关于具有平底地形的一维浅水方程 (SWE) 的黎曼问题的 MATLAB 代码和文档。 SWE 是保守双曲偏微分方程 (PDE) 的非线性系统。 该系统存在黎曼问题的精确解,包括冲击波和中心稀疏波的不同组合。 所考虑的经典问题是所谓的溃坝问题,其中水流最初处于静止状态(零速度),水深 h 具有阶梯不连续性,并随着左稀疏波和右激波演变(见上图;图 1)。 2 在肯特,2013 年)。 然后将该系统扩展为一维对称系统,其中 y 方向上的空间变化在领先阶次被忽略。 包含子午线速度,其作用类似于示踪剂,在解决方案中表现为接触不连续性,它将流体分成两个不同子午线速度的区域。 解决黎曼问题是实施 (Godunov) 有限体积数值方案和其他现代数值逆风方案(见,例如,)的基本要素。 解决 SW 黎曼问题:简而言之 解决黎曼问题的一般策略如下(在 LeVeque,2002 之后,并在 Kent,2013 中详述):
2021-07-30 23:35:48 418KB 系统开源
1
用MATLAB编写的基于有限体积法求解二维浅水方程边界数值通量的Riemann求解器(HLL格式),可处理干河床问题,适用于规则网格及不规则网格,只需提供边界左右两侧的水深和流速以及外法线矢量。
2021-07-26 19:53:10 2KB 有限体积法 浅水方程 HLL
1
用MATLAB编写的基于有限体积法求解二维浅水方程边界数值通量的Riemann求解器(HLLC格式),可处理干河床问题,适用于规则网格及不规则网格,只需提供边界左右两侧的水深和流速以及外法线矢量。
2021-05-12 16:17:46 2KB HLLC 有限体积法 浅水方程
1