CFD中文网

    CFD中文网

    • 登录
    • 搜索
    • 最新

    关于multiphaseEulerFoam运算分散相体积分数问题

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

      目前本人在用multiphaseEulerFoam求解器求解孔板中的油水两相流动,孔板架构如图
      46841618-0476-4681-8e39-5570171d6e3c-image.png

      模拟过程中水是分散相且体积分数设为了0.005,运算时发现有时候运算会报错,计算过程显示Mules算法求解相分数时,不管连续相还是分散相,最小相分数都为0,偶尔为负。请问各位老师和同学们有没有了解这一问题的?不吝赐教。
      4bd22744b0c828cfb40585cf0042cc4.jpg

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

        openfoam9这面现在multphaseEULERfoam比之前稳定多了。你看看是不是你设置的有问题。另外你这个是结构网格吧?

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

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

          @李东岳 老师,我这个网格是三维的,图上展示了二维,用的结构网格,of9计算。目前发现我只要把流速设的大一点,就不会有这种问题出现,但是流速变小就不行了。另外,网格壁面不加密且数量少的时候它也不报错,自己也还在找原因中。

          C 1 条回复 最后回复 回复 引用
          • C
            Caijinjin @Caijinjin 最后由 编辑

            @caijinjin 老师,这是我的离散格式和求解器设置

            ddtSchemes
            {
                default         Euler;
            }
            
            gradSchemes
            {
                default         Gauss linear;
                limited         cellLimited Gauss linear 1;
            }
            
            divSchemes
            {
                default                         none;
            
                "div\(phi,alpha.*\)"            Gauss vanLeer;
                "div\(phir,alpha.*\)"           Gauss vanLeer;
            
                "div\(alphaRhoPhi.*,U.*\)"      Gauss linearUpwind limited;
                "div\(phi.*,U.*\)"              Gauss linearUpwind limited;
            
                //"div\(alphaRhoPhi.*,Yi\)"       Gauss linearUpwind limited;
                "div\(alphaRhoPhi.*,(h|e).*\)"  Gauss linearUpwind limited;
                "div\(alphaPhi.*,f.*\)"         Gauss linearUpwind limited;
                "div\(alphaRhoPhi.*,K.*\)"      Gauss linearUpwind limited;
                "div\(alphaRhoPhi.*,\(p\|thermo:rho.*\)\)" Gauss linearUpwind limited;
                "div\(alphaRhoPhi.*,(k|epsilon|omega).*\)"  Gauss linearUpwind limited;
            
                "div\(\(\(\(alpha.*\*thermo:rho.*\)\*nuEff.*\)\*dev2\(T\(grad\(U.*\)\)\)\)\)" Gauss linear;
            }
            
            laplacianSchemes
            {
                default         Gauss linear corrected;
            }
            
            interpolationSchemes
            {
                default         linear;
            }
            
            snGradSchemes
            {
                default         corrected;
            }
            
            fluxRequired
            {
                default         no;
            }
            
            wallDist
            {
                method          meshWave;
                nRequired       yes;
            }
            

            求解器设置

            solvers
            {
                "alpha.*"
                {
                    nAlphaCorr      1;
                    nAlphaSubCycles 1;
                }
            
                droplets
                {
                    nCorr                   1;
                    tolerance               1e-4;
                    scale                   true;
                    solveOnFinalIterOnly    true;
                    sourceUpdateInterval    20;
                }
            
                p_rgh
                {
                    solver          GAMG;
                    smoother        DIC;
                    tolerance       1e-8;
                    relTol          0.01;
                    maxIter         20;
                    minIter         2;
                }
            
                p_rghFinal
                {
                    $p_rgh;
                    relTol          0;
                }
            
                "U.*"
                {
                    solver          smoothSolver;
                    smoother        symGaussSeidel;
                    tolerance       1e-7;
                    relTol          0;
                    minIter         1;
                }
            
                "(e|h).*"
                {
                    solver          smoothSolver;
                    smoother        symGaussSeidel;
                    tolerance       1;
                    relTol          0;
                    minIter         0;
                    maxIter         0;
                }
            
                "(k|epsilon|omega).*"
                {
                    solver          smoothSolver;
                    smoother        symGaussSeidel;
                    tolerance       1e-7;
                    relTol          0;
                    minIter         1;
                }
            
                "f.*"
                {
                    solver          PBiCGStab;
                    preconditioner  DILU;
                    tolerance       1e-6;
                    relTol          0;
                }
            }
            
            PIMPLE
            {
                nOuterCorrectors    3;
                nCorrectors         1;
                nNonOrthogonalCorrectors 0;
                pRefPoint (0.0276 0 0);
                pRefValue 101325;
            }
            
            relaxationFactors
            {
                equations
                {
                    ".*"            0.7;
                }
            }
            
            1 条回复 最后回复 回复 引用
            • bestucan
              bestucan 版主 副教授 最后由 编辑

              你看你图中圈着的上一个Phase-sum volume fractionmin 是正的,圈着的地方变成负的了,当然max那上下都负的。max先数值溢出,min跟着溢出。

              说明这是计算本身的不稳定。

              速度快了,能够不发散,是把不稳定多出来的那部分赶紧吹出去了;慢了,吹不出去就原地爆炸了。

              我看了格式,里面有不少迎风格式,好像迎风格式不能考虑回流?:141:
              这种管子冲快了,刚出狭管上下两个角落应该会有回流涡吧?
              可能因为这个

              滚来滚去……~(~o ̄▽ ̄)~o 滚来滚去都不能让大家看出来我不是老师么 O_o

              异步沟通方式(《posting style》from wiki)(下载后打开):
              https://www.jianguoyun.com/p/Dc52X2sQsLv2BRiqnKYD
              提问的智慧(github在gitee的镜像):
              https://gitee.com/bestucan/How-To-Ask-Questions-The-Smart-Way/blob/master/README-zh_CN.md

              C 1 条回复 最后回复 回复 引用
              • C
                Caijinjin @bestucan 最后由 编辑

                @bestucan 谢谢老师,这个问题我再去认真了解一下并尝试尝试。

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