OpenFOAM中循环边界(cyclic)设置

我是新手第一次在设置cyclic边界时出现各种错误,参考了论坛上很多讨论弄了一天终于成功,记录一下。参考过的帖子。

https://www.cfd-online.com/Forums/openfoam-pre-processing/105531-setting-side-wedge-boundary-condition.html#post378087

https://www.cfd-china.com/topic/1742/cyclicami%E4%B8%80%E7%AE%97%E5%B0%B1%E6%8C%82/4?_=1600231972041&lang=en-US

https://zhuanlan.zhihu.com/p/84137342?utm_source=qq

https://www.cfd-china.com/topic/2756/%E7%94%A8snappyhexmeshdict%E7%94%9F%E6%88%90%E5%91%A8%E6%9C%9F%E6%80%A7%E8%BE%B9%E7%95%8C%E9%97%AE%E9%A2%98/13?_=1600231972055&lang=en-US

下面总结我的成功办法:

1、在ICEM中画网格是设置好周期性边界。 

     具体做法:

  • 在Global Mash Setup中设置Periodicity。勾选Define Periodicity,选择Periodicity类型,例如我的算例为平移周期。之后输入平移向量之后点击Apply。如下图

  • 在Edit block 中设置Periodic Vertices定义顶点周期,也就是让顶点一一对应。这一步很关键,基本上解决了OpenFOAM算例cyclic边界问题中报的最常见的错误-容差和面不对应的问题。(例如face 0 area does not match neighbour by 23.7135% -- possible face ordering problem.、unable to find initial target face)。并且在并行计算时不需要再decomposeParDict文件中使用preservePatches(xxx xxx)工具即可并行成功。

注:一些地方提到勾选ICEM里面blocking里的faces的Periodic,再导入openfoam有与上面操作同样的效果。(还没试)

2、生成xx.msh网格后通过fluent3DMeshToFoam xx.msh命令转成OpenFOAM识别的网格文件。

3、修改边界类型

将以下几何边界
    FRONT
    {
        type            patch;
        nFaces          51200;
        startFace       7321600;
    }
    periodic_sh
    {
        type            patch;
        nFaces          51200;
        startFace       7372800;
    }

改为

    FRONT
    {
        type            cyclic;
        neighbourPatch  periodic_sh;
        nFaces          51200;
        startFace       7321600;
    }
    periodic_sh
    {
        type            cyclic;
        neighbourPatch  FRONT;
        nFaces          51200;
        startFace       7372800;
    }

4、修改0文件中的物理边界,将对应的边界类型改为cyclic。例如

    FRONT
    {
        type            cyclic;
    }
    periodic_sh
    {
        type            cyclic;
    }

至此所有的设置已完成,并且可以成功进行并行计算。

  • 6
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值