APP下载

Mike Flood和SMS软件网格文件的转换方法

2017-03-04

河北水利 2017年11期
关键词:单元格插值边界

比较Mike Flood和SMS软件网格文件格式,提供两种格式文件互相转换的方法,在科研或工作中发挥各自优点,以便更加灵活地使用软件。

Mike Flood;SMS;网格;转换方法

Mike Flood和SMS软件网格文件的转换方法

□张 昊

2017-11-20

张 昊,男,汉族,河北省水利水电第二勘测设计研究院,工程师。

Mike Flood、SMS软件是比较流行的洪水模拟软件。在网格生成、网格结点重编号、插值算法的选择方面,SMS软件的可操作性、可采用手段均要优于Mike软件,生成网格的质量、美观程度也较好。同时由于网格质量往往影响到计算精度和时间代价,因此建模时实现两种网格文件互转具有一定应用意义。

1.Mike、SMS网格文件

Mike网格生成器主要包括矩形和非结构化网格编辑器,其中非结构化网格编辑器可生成矩形网格、三角网格、矩形及三角混合网格。一个非结构化网格由一定数量节点和单元格组成,均由各自信息表定义其属性。非结构化网格文件生产周期包括导入模型区外边界、定义边界条件、导入地形散点数据等步骤,同时Mike软件提供了线性插值和自然邻近插值两种算法,根据散点数据质量合理选用算法,并优化插值次序也可达到较好插值效果。插值后输出文件为mesh格式,列出了节点和单元格列表。

数据结构主要包括节点和单元格的属性信息,具体概括为:

节点标题行:100079代表条目类型是高程,其后的1000代表高程单位即在z坐标单位默认为m;其后为节点数量和坐标系类型,如“NON-UTM”为软件识别坐标系。

节点属性行:每一行代表着一个节点。包含了节点的ID编号、X坐标、Y坐标、Z坐标及边界属性编码。边界属性编码为0、1或大于1的数值,以区分内部节点、水陆边界和自定义开边界。

单元格标题行:包含单元格的数量、所有单元格节点最大数量、类型代码。三角形单元格节点最大数量为3、四边形为4、混合单元格为4;三角形单元格类型代码为21,四边形单元格为25、混合单元格为25。

单元格属性行:每一行代表一个单元格。包括了单元格的ID编号、组成该单元格的节点ID编号,混合网格中,对于某些单元格的构成节点数少于单元格标题行中的最大数量,则在最后一列用0值来进行补足剩余的节点号,即是说标题行中的最大构成节点数量限制了每个单元格属性行的列数。

SMS软件网格的生成与Mike相似,整体而言,SMS软件对渐变网格的处理、美观程度等方面更显优越,且可选用的内置插值算法相对较多。由于两种软件网格文件互相转换后完全可以正常计算,所以实现网格的互转具有一定应用意义。SMS的网格文件包括grd、geo和2dm。grd文件格式相对简单,主要分为3部分,第一部分为网格节点的数量、编号、坐标及高程信息;第二部分为单元格的属性信息,包括编号、组成网格的节点数量和节点ID;第三部分为边界条件属性信息,包括开、闭边界的数量、组成边界的节点数量和ID。geo文件主要理解其中Card标识所代表的含义,如GE Card标识为单元格,包含网格连接等属性信息,GNN Card标识为节点,包含节点坐标、高程等属性信息,了解了Card的含义基本也就了解了文件每行所代表的意义。转换geo文件时还应考虑一并处理bc边界文件。2dm则更为直观,主要包含了节点、网格、边界等信息,如ND(节点)、E3T(三角网格)、E4QE8Q(四点或八点矩形网格),文件每行代表节点或单元格相关属性信息。

2.转换方法

由于Mike和SMS软件生成网格文件均为文本格式,不需调用接口dll即可进行识别操作,给格式转换提供了便利。

从各格式文件中依次读取相应节点、单元格、边界条件信息,后台转换成符合各自软件规范的文件格式,对于转换成的geo/2dm文件,还应添加相应的标题行和Card标识。

本文利用Visual Basic语言,实现了从mesh文件向grd/geo/2dm文件的互相转换,对于geo文件在转换时应包含边界文件bc;且由于涉及网格数量较多,从处理速度的角度,建议引用Dic⁃tionary对象。通过实际操作,网格数量尺度在10万左右花费时间代价在40s左右。

3.结语

Mike和SMS作为两款较为优秀的水动力学模拟软件,在实际应用中具有各自优势。研究两种软件的文件格式,一方面通过交互可简化模型建模流程,另一方面模型模拟文件也可程序化实现相互转换,如Mike21模型文件只需从中读取相关数据如建筑物、边界、网格等信息,通过程序化可直接生成SMS软件数据格式,为模型的交互分析验证提供了便利途径,可显著提高建模的效率。□

猜你喜欢

单元格插值边界
拓展阅读的边界
探索太阳系的边界
流水账分类统计巧实现
玩转方格
玩转方格
意大利边界穿越之家
基于Sinc插值与相关谱的纵横波速度比扫描方法
论中立的帮助行为之可罚边界
浅谈Excel中常见统计个数函数的用法
混合重叠网格插值方法的改进及应用