Precise distance-based two-dimensional automated mesh generation toolbox intended for coastal ocean/shallow water flow models
OceanMesh2D | 基于精确距离的沿海海洋/浅水流动模型二维自动网格生成MATLAB工具箱推荐
1. 简介
OceanMesh2D是一组用于组装和后处理有限元数值模拟中使用的二维(2D)三角形网格的MATLAB脚本。它的设计考虑到了沿海海洋模型,尽管它可以网格化由多边形包围的任何2D地区。它可以用于根据用户定义的edgelength函数参数来构建不同大小的网格(最多1000-2000万个顶点左右),这些参数控制分辨率在空间中的分布方式。用该软件创建的网格几乎是可复制的,因为它们是可参数化的,并且可以在个人计算机上以几分钟到几小时的量级快速组装。
OceanMesh2D使用面向对象编程(OOP)风格,通过抽象和重载来简化网格生成过程。这些属性减少了函数调用的复杂性和用户需要键入的行数。他们还创建了一致的工作流模式,这些模式是可重复和可识别的。
有四个类:geodata、msh、meshgen和edgefx(图1)。所有类都接受名称/值对参数,并通过键入类名(例如geodata())来创建,这将生成一个class类型的对象。每个类的所有方法都可以通过键入
methods(‘classname’)/help methodname
图1 使用OceanMesh2D构建网格的标准工作流程。
2. 特点
- 基于MATLAB的海岸海洋模型二维非结构化网格生成软件;