51 4.0/
sqr(
mesh().time().deltaT() +
mesh().time().deltaT0())
54 const word d2dt2name(
"d2dt2("+vf.
name()+
')');
59 const scalar coefft = (deltaT + deltaT0)/(2*deltaT);
60 const scalar coefft00 = (deltaT + deltaT0)/(2*deltaT0);
61 const scalar coefft0 = coefft + coefft00;
77 - (coefft*VV0 + coefft00*V0V00)
80 + (coefft00*V0V00)*vf.
oldTime().oldTime()()
85 - coefft0*vf.
oldTime().boundaryField()
86 + coefft00*vf.
oldTime().oldTime().boundaryField()
99 + coefft00*vf.
oldTime().oldTime()
116 4.0/
sqr(
mesh().time().deltaT() +
mesh().time().deltaT0())
119 const word d2dt2name(
"d2dt2("+
rho.name()+
','+vf.
name()+
')');
124 const scalar coefft = (deltaT + deltaT0)/(2*deltaT);
125 const scalar coefft00 = (deltaT + deltaT0)/(2*deltaT0);
142 +
rho.oldTime().oldTime()()
151 coefft*VV0rhoRho0*vf()
153 - (coefft*VV0rhoRho0 + coefft00*V0V00rho0Rho00)
156 + (coefft00*V0V00rho0Rho00)
159 halfRdeltaT2.
value()*
162 *(
rho.boundaryField() +
rho.oldTime().boundaryField())
169 +
rho.oldTime().boundaryField()
173 rho.oldTime().boundaryField()
174 +
rho.oldTime().oldTime().boundaryField()
180 rho.oldTime().boundaryField()
181 +
rho.oldTime().oldTime().boundaryField()
182 )*vf.
oldTime().oldTime().boundaryField()
199 - (coefft*rhoRho0 + coefft00*rho0Rho00)*vf.
oldTime()
200 + coefft00*rho0Rho00*vf.
oldTime().oldTime()
228 const scalar coefft = (deltaT + deltaT0)/(2*deltaT);
229 const scalar coefft00 = (deltaT + deltaT0)/(2*deltaT0);
230 const scalar coefft0 = coefft + coefft00;
232 const scalar rDeltaT2 = 4.0/
sqr(deltaT + deltaT0);
236 const scalar halfRdeltaT2 = rDeltaT2/2.0;
241 fvm.
diag() = (coefft*halfRdeltaT2)*VV0;
243 fvm.
source() = halfRdeltaT2*
245 (coefft*VV0 + coefft00*V0V00)
248 - (coefft00*V0V00)*vf.
oldTime().oldTime().primitiveField()
253 fvm.
diag() = (coefft*rDeltaT2)*
mesh().
V();
257 coefft0*vf.
oldTime().primitiveField()
258 - coefft00*vf.
oldTime().oldTime().primitiveField()
289 const scalar coefft = (deltaT + deltaT0)/(2*deltaT);
290 const scalar coefft00 = (deltaT + deltaT0)/(2*deltaT0);
292 const scalar rDeltaT2 = 4.0/
sqr(deltaT + deltaT0);
296 const scalar halfRdeltaT2 = 0.5*rDeltaT2;
301 fvm.
diag() =
rho.value()*(coefft*halfRdeltaT2)*VV0;
305 (coefft*VV0 + coefft00*V0V00)
308 - (coefft00*V0V00)*vf.
oldTime().oldTime().primitiveField()
317 (coefft + coefft00)*vf.
oldTime().primitiveField()
318 - coefft00*vf.
oldTime().oldTime().primitiveField()
349 const scalar coefft = (deltaT + deltaT0)/(2*deltaT);
350 const scalar coefft00 = (deltaT + deltaT0)/(2*deltaT0);
352 const scalar rDeltaT2 = 4.0/
sqr(deltaT + deltaT0);
356 const scalar quarterRdeltaT2 = 0.25*rDeltaT2;
361 *(
rho.primitiveField() +
rho.oldTime().primitiveField())
368 rho.oldTime().primitiveField()
369 +
rho.oldTime().oldTime().primitiveField()
373 fvm.
diag() = (coefft*quarterRdeltaT2)*VV0rhoRho0;
375 fvm.
source() = quarterRdeltaT2*
377 (coefft*VV0rhoRho0 + coefft00*V0V00rho0Rho00)
380 - (coefft00*V0V00rho0Rho00)
381 *vf.
oldTime().oldTime().primitiveField()
386 const scalar halfRdeltaT2 = 0.5*rDeltaT2;
391 +
rho.oldTime().primitiveField()
396 rho.oldTime().primitiveField()
397 +
rho.oldTime().oldTime().primitiveField()
400 fvm.
diag() = (coefft*halfRdeltaT2)*
mesh().
V()*rhoRho0;
404 (coefft*rhoRho0 + coefft00*rho0Rho00)
407 - (coefft00*rho0Rho00)
408 *vf.
oldTime().oldTime().primitiveField()
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
const dimensionSet & dimensions() const
Return dimensions.
Generic GeometricField class.
const Boundary & boundaryField() const
Return const-reference to the boundary field.
static tmp< GeometricField< Type, GeoMesh, PrimitiveField > > New(const word &name, const Internal &, const PtrList< Patch > &, const HashPtrTable< Source > &=HashPtrTable< Source >())
Return a temporary field constructed from name,.
const word & name() const
Return name.
const Field0Type & oldTime() const
Return the old-time field.
scalar deltaT0Value() const
Return old time step value.
scalar deltaTValue() const
Return time step value.
const Type & value() const
Return const reference to value.
A special matrix type and solver, designed for finite volume solutions of scalar equations....
const Time & time() const
Return the top-level database.
const DimensionedField< scalar, volMesh > & V() const
Return cell volumes.
tmp< fvMatrix< Type > > fvmD2dt2(const VolField< Type > &)
tmp< VolField< Type > > fvcD2dt2(const VolField< Type > &)
bool moving() const
Is mesh moving.
A class for managing temporary objects.
T & ref() const
Return non-const reference or generate a fatal error.
A class for handling words, derived from string.
Foam::fvMesh mesh(Foam::IOobject(regionName, runTime.name(), runTime, Foam::IOobject::MUST_READ), false)
A special matrix type and solver, designed for finite volume solutions of scalar equations.
Calculate the divergence of the given field.
const dimensionSet dimTime
const dimensionSet dimVolume
void sqr(LagrangianPatchField< typename outerProduct< Type, Type >::type > &f, const LagrangianPatchField< Type > &f1)