关于“CFD中的能量方程”中最后的方程(16)



  • ∂ρh∂t+∇⋅(ρUh)+∂ρK∂t+∇⋅(ρUK)=∂p∂t+ρr−∇⋅q+ρg⋅U+∇⋅(τ⋅U)

    我查了下《流体理学基础与应用》似乎不应该有这两项:∂ρK∂t+∇⋅(ρUK)



  • 多谢反馈,已经更新。



  • 东岳大神,最近在看rhopimpleFoam 解析,发现pEqn.H代码中以前这一行

       volScalarField Dp("Dp", rho*rAU);
    

    在新版的求解器中已经没有了,取而代之的是

    surfaceScalarField rhorAUf("rhorAUf", fvc::interpolate(rho*rAU));
    

    而对应的Dp

    fvScalarMatrix pEqn //方程(99)
            (
                fvm::ddt(psi, p)
              + fvc::div(phiHbyA)
              - fvm::laplacian(Dp, p)//就是这一行
              ==
                fvOptions(psi, p, rho.name())
            );
    

    已经改成了

    - fvm::laplacian(rhorAUf, p)
    


  • @hurricane007
    区别不大:expressionless: 哈哈



  • @cfd-china 嗯啊其实基本没区别。。。不过我有点疑惑的是一个用的是volScalarField 另一个是surfaceScalarField,所以差别应该是一个是体心的值,另一个是差值到面上了?



  • @hurricane007
    fvm::laplacian(A, p)中的A可以使体场也可以是面场,应该在fvm::laplacian()函数内部有重载,你可以看这个函数的C文件看看:expressionless:



  • @cfd-china 感谢指教!我还有个问题,为啥有的要用体场,而有的要用面场呢?这个应该是牵涉到对高斯定理散度体积分变为面积分?而就这个例子来说,把以前的体心值改成了面上的插值,数值上有什么影响?



  • 为啥有的要用体场,而有的要用面场呢?这个应该是牵涉到对高斯定理散度体积分变为面积分?

    体场一般存储值,有限体积法大体都需要把体场变成面场,通过高斯定理处理通量求解NS方程,所以说通量是有限体积法重要的概念,也是有限体积法的优点。

    而就这个例子来说,把以前的体心值改成了面上的插值,数值上有什么影响?

    我建议你看看fvm::laplacian()函数重载,有可能处理体场的函数调用了处理面场的函数,这样的话结果是一样的。

    大略看了下,一样的。


登录后回复
 

与 CFD中文网 的连接断开,我们正在尝试重连,请耐心等待