美文网首页
在OpenFOAM中使用二维轴对称的.msh网格

在OpenFOAM中使用二维轴对称的.msh网格

作者: rx_rx | 来源:发表于2020-07-17 13:22 被阅读0次

    OpenFOAM仅支持三维网格,而一维、二维和轴对称网格是通过将相应BC设置为emptywedge来实现,也可以使用symmetry或者cylic变相实现。相较于一维和二维网格,轴对称网格不仅需要设置BC条件,还要求网格为楔形结构,而ANSYS ICEM构建的二维轴对称网格(.msh)直接导入OpenFOAM后是单层棱柱网格,需要进一步地转换。

    操作流程

    1. .msh网格转为OpenFOAM格式(以fluent.msh为例)
      $ fluentMeshToFoam fluent.msh
      
    2. 将网格转换为楔形结构
      (命令makeAxialMesh需要单独安装)
      $ makeAxialMesh -axis AXIS -wedge frontAndBackPlanes
      
    3. 轴线上的网格单元塌陷
      (需要在system文件夹下添加控制文件collapseDict和meshQualityDict)
      $ collapseEdges
      
    4. 将最新时刻文件夹内的网格文件polyMesh放入constant,并删除中间时刻的文件夹
    5. 检查网格
      $ checkMesh 
      

    注意事项

    1. 第二步的命令makeAxialMesh的安装方法和下载地址见http://openfoamwiki.net/index.php/Contrib/MakeAxialMesh,目前仅支持到of-2.x版本;
    2. 第二步中,AXIS为对称轴BC名称,frontAndBackPlanes为楔形侧面BC名称,在.msh转OF过程默认生成,BC名称可在constant/polyMesh/boundary中参看;
    3. 第三步的控制文件collapseDict和meshQualityDict可在OF的安装目录下可找到$FOAM_APP/utilities/mesh/advanced/collapseEdges
    4. 第三步的文件collapseDict中的collapseEdgesCoeffs中的minimumEdgeLength的设定数值,要小于生成的楔形结构中的最下边长,不然会造成非axis的edge的合并;
    5. 转换过程中,如果出现warning:Wedge patch ... is not planar.,一般是由于算例设定的存储精度偏低,可适当调高system/controlDict中的参数writePrecision的设定数值,默认为6,可适当调高到12,甚至更高;
    6. 可以直接通过ANSYS ICEM的资深用户,也可以直接使用ICEM的Mesh->Extrude Mesh功能,直接由二维网格旋转生成三维的楔形网格,从而代替第三方命令makeAxialMesh的使用。

    相关文章

      网友评论

          本文标题:在OpenFOAM中使用二维轴对称的.msh网格

          本文链接:https://www.haomeiwen.com/subject/itdphktx.html