CFD中文网

    CFD中文网

    • 登录
    • 搜索
    • 最新

    fvSolution中PIMPLE算法的参数设置问题

    OpenFOAM
    2
    4
    650
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • W
      WYing 最后由 编辑

      各位老师好,我关于fvSolution中PIMPLE算法的参数设置有几点疑问。下面是我找到的一个例子,有以下问题:

      1. nOuterCorrector表示pimple loop的次数,并用residualControl来控制U和p的收敛,请问这里需不需要控制湍流统计量(k,epsilon,omega)的收敛?
      2. moveMeshOuterCorrectors 是weakly(默认)或者strongly coupled FSI,但是找不到更多详尽资料介绍这个参数的含义,请问这个参数对结果一般有什么影响?
      3. consistent 是采取SIMPLEC算法,一般什么情况下使用这个参数?
      PIMPLE
      {
          momentumPredictor        yes;
          correctPhi               yes;
          nOuterCorrectors         1000;
          nCorrectors              1;
          nNonOrthogonalCorrectors 1;
          pRefCell                 0;
          pRefValue                0;
          moveMeshOuterCorrectors  yes;
          consistent               yes;
          
          residualControl
          {
              U 1e-6;
              p  1e-6;
          }  
      }
      
      relaxationFactors
      {
          fields
          {
              p                  0.3;
          }
          equations
          {
              "(U|k|omega)"      0.7;
              "(U|k|omega)Final" 1.0;
          }
      }
      

      Residuals.png 另外,我有一个2D结果湍流统计量k的残差逐渐增大,不太清楚是什么原因造成的,能请各位老师帮忙看下吗?我猜测大概率是PIMPLE算法设置的问题。。。谢谢!

      1 条回复 最后回复 回复 引用
      • 李东岳
        李东岳 管理员 最后由 编辑

        湍流变量仅仅是个传输方程,不需要压力速度那种耦合求解,因此不需要控制湍流变量的收敛,湍流每一个时间步都是瘦脸的。

        moveMeshOuterCorrectors主要是correctPhi,更详细的尚不明确。目前来看是收敛性的问题。

        你这个看起来不是SIMPLEC的设置,SIMPLEC理论上不需要松弛,但是你还是加了松弛。用SIMPLE还是SIMPLEC完全是收敛性的问题。没有什么普适性的建议。

        线上CFD课程开始报名:http://www.dyfluid.com/class.html

        CFD高性能服务器 http://dyfluid.com/servers.html

        W 1 条回复 最后回复 回复 引用
        • W
          WYing @李东岳 最后由 李东岳 编辑

          @李东岳 谢谢李老师的回复!抱歉我的上个残差图绘制有问题,正确的应该是这样

          Residuals_Ur5.png

          从上到下依次是速度残差,压力残差和湍流统计量残差。

          上面那个code是我随意找的,我目前使用的code是:

          PIMPLE
          {
              correctPhi          yes;
              nOuterCorrectors    2;
              nCorrectors         2;
              nNonOrthogonalCorrectors 1;
              turbOnFinalIterOnly  false;
          }
          
          relaxationFactors
          {
              fields
              {
                  p                  0.3;
              }
              equations
              {
                  "(U|k|omega)"      0.7;
                  "(U|k|omega)Final" 1.0;
              }
          }
          

          我主要做了以下修改:
          (1)调整 nOuterCorrectors=2,结果几乎不变
          (2)turbOnFinalIterOnly=false,即每次PIMPLE loop都计算湍流,结果几乎不变
          (3)去掉全部的松弛因子,结果几乎不变。

          在模拟中,CFL保持在0.5-1.5之间,但是和实验结果对的不好。李老师觉得还有可能是哪里出了问题呢?

          1 条回复 最后回复 回复 引用
          • 李东岳
            李东岳 管理员 最后由 编辑

            一般情况下PIMPLE、SIMPLE以及fvSolution里面的solvers对结果的影响很小。

            和实验结果对的不好

            这个很难debug,有些就是算不好.. https://www.cfd-china.com/topic/5248 这个也是跟实验对不好,很难debug

            线上CFD课程开始报名:http://www.dyfluid.com/class.html

            CFD高性能服务器 http://dyfluid.com/servers.html

            1 条回复 最后回复 回复 引用
            • First post
              Last post