fvc::DDt是什么意思?
-
看上去像是ddt+div
查了一下代码:
https://github.com/OpenFOAM/OpenFOAM-3.0.x/blob/master/src/finiteVolume/finiteVolume/fvc/fvcDDt.Ctemplate<class Type> tmp<GeometricField<Type, fvPatchField, volMesh> > DDt ( const surfaceScalarField& phi, const GeometricField<Type, fvPatchField, volMesh>& psi ) { tmp<GeometricField<Type, fvPatchField, volMesh> > ddtDivPhiPsi = fvc::ddt(psi) + fvc::div(phi, psi); if (phi.mesh().moving()) { return ddtDivPhiPsi - fvc::div(phi + phi.mesh().phi())*psi; } else { return ddtDivPhiPsi - fvc::div(phi)*psi; } }
这是3.0的版本,不确定2.3是不是也是如此。从这个版本里看,就是ddt+div。
至于定义,应该是随体导数(Material derivative)。
-
@strive_DUT
根据张量等式
$$
\nabla \cdot ( \mathbf{U} \phi) = \mathbf{U} \cdot \nabla \phi + \phi (\nabla \cdot \mathbf{U})
$$
所以,
$$
\frac{\partial \phi}{\partial t} + \mathbf{U} \cdot \nabla \phi = \frac{\partial \phi}{\partial t} + \nabla \cdot ( \mathbf{U} \phi) - \phi (\nabla \cdot \mathbf{U})
$$
这里等式右边的减号就是二楼贴出来代码里面减号的来源了。另外,
@bestucan 在 fvc::DDt是什么意思? 中说:
6.0版的定义。估计之前的难理解,又加了个U。
这个是来搞笑的么?