fvSolution中的一些疑问



  • 最近看OpenFOAM中的自带案例DTChull中的fvSolution发现这样的疑惑

    问题一:

    OpenFOAM中tutorials—》DTChull的源代码:

    solvers
    {
      ........
    
     "(U|k|omega).*"
        {
            solver          smoothSolver;
            smoother        symGaussSeidel;
            nSweeps         1;
            tolerance       1e-7;
            relTol          0.1;
            minIter         1;
        };
    }
    

    我做个类似的例子,结果出现了报错:
    2020-06-20 11-21-33屏幕截图.png
    进行了改进后:

    solvers
    {
      ........
    
     "(U|k|omega).*"
        {
            solver          smoothSolver;
            smoother        symGaussSeidel;
            nSweeps         1;
            tolerance       1e-7;
            relTol          0.1;
            minIter         1;
        };
     "(U|k|omega)Final"
        {
        solver          smoothSolver;
    
        smoother        symGaussSeidel;
        nSweeps         1;
    
        tolerance       1e-7;
        relTol          0.1;
        minIter         1;
        }
    }
    

    其中: "(U|k|omega).*"第一次U,k,omega进行求解;
    "(U|k|omega)Final"第二次U,k,omega进行求解,也是最后一次迭代的收敛标准;

    这是东岳老师OKSS1课程中讲到的知识点,在这解决了报错问题;
    但为什么案例中没有 "(U|k|omega)Final"就可以正常运行,而我设置的时候就需要设置这个,很困惑呀~

    问题二:
    请问这个代码是什么意思呢?

    cache
    {
        grad(U);
    }
    

    问题三

    这是在虚拟机单核计算时的错误:
    不并行.png
    这是在虚拟机4核并行时的错误:
    4核并行.png

    在虚拟机中运行的时候出现了以上的现象,但是同样的案例在纯ubuntu系统中能正常运行,请问这是否是虚拟机的原因呢?

    谢谢各位的指导~~



  • "(U|k|omega)Final"是最终迭代步下的设置,不带Final的是非最终迭代步下的设置

    cache用来减少内存调用

    以杀死有的时候是内存不够


Log in to reply
 

CFD中文网 2016 - 2020 | 京ICP备15017992号-2