在icoFoam解析中,提到压力场修正时,
“ phi = phiHbyA - pEqn.flux();// 使用求解的压力场修正通量场,在最后一次修正的时候通量守恒,Issa指出,大约需要2-3次内循环步。对应公式(25),pEqn.flux()返回公式(25)方程右边第二项,也为fvc::interpolate(rUA)*fvc::snGrad(p)*mag(mesh.Sf())。某些可压缩求解器其中的pEqn.flux()可能为+号,即为phi = phiHbyA + pEqn.flux()。这是因为pEqn中的laplacian项为−号”
这其中,提到公式25的右边第二项也叫fvc::interpolate(rUA)*fvc::snGrad(p)*mag(mesh.Sf())
。可是公式25右边第二项体积分之后,再通过高斯变换之后,就应该是p在cell面的值乘以一个系数以及mesh.Sf()
,为什么这边解释是snGrad(p)
。难道是我理解错了?