45 scalar EulerFaD2dt2Scheme<Type>::deltaT_()
const
47 return mesh().time().deltaT().value();
52 scalar EulerFaD2dt2Scheme<Type>::deltaT0_()
const
54 return mesh().time().deltaT0().value();
59 tmp<GeometricField<Type, faPatchField, areaMesh>>
66 scalar deltaT = deltaT_();
67 scalar deltaT0 = deltaT0_();
70 4.0/
sqr(
mesh().time().deltaT() +
mesh().time().deltaT0());
72 scalar coefft = (deltaT + deltaT0)/(2*deltaT);
73 scalar coefft00 = (deltaT + deltaT0)/(2*deltaT0);
77 "d2dt2("+dt.
name()+
')',
78 mesh()().time().timeName(),
86 scalar halfRdeltaT2 = rDeltaT2.
value()/2.0;
101 tdt2dt2.
ref().primitiveFieldRef() =
102 halfRdeltaT2*dt.
value()
103 *(coefft*SS0 - (coefft*SS0 + coefft00*S0S00) + coefft00*S0S00)
132 4.0/
sqr(
mesh().time().deltaT() +
mesh().time().deltaT0());
136 "d2dt2("+vf.name()+
')',
137 mesh()().time().timeName(),
143 scalar deltaT = deltaT_();
144 scalar deltaT0 = deltaT0_();
146 scalar coefft = (deltaT + deltaT0)/(2*deltaT);
147 scalar coefft00 = (deltaT + deltaT0)/(2*deltaT0);
148 scalar coefft0 = coefft + coefft00;
152 scalar halfRdeltaT2 = rDeltaT2.
value()/2.0;
168 - (coefft*SS0 + coefft00*S0S00)
171 + (coefft00*S0S00)*vf.
oldTime().oldTime().primitiveField()
176 - coefft0*vf.
oldTime().boundaryField()
177 + coefft00*vf.
oldTime().oldTime().boundaryField()
193 + coefft00*vf.
oldTime().oldTime()
210 4.0/
sqr(
mesh().time().deltaT() +
mesh().time().deltaT0());
214 "d2dt2("+
rho.name()+
','+vf.name()+
')',
215 mesh()().time().timeName(),
221 scalar deltaT = deltaT_();
222 scalar deltaT0 = deltaT0_();
224 scalar coefft = (deltaT + deltaT0)/(2*deltaT);
225 scalar coefft00 = (deltaT + deltaT0)/(2*deltaT0);
226 scalar coefft0 = coefft + coefft00;
230 scalar halfRdeltaT2 = 0.5*rDeltaT2.
value();
251 - (coefft*SS0rhoRho0 + coefft00*S0S00rho0Rho00)
254 + (coefft00*S0S00rho0Rho00)
255 *vf.
oldTime().oldTime().primitiveField()
260 - coefft0*vf.
oldTime().boundaryField()
261 + coefft00*vf.
oldTime().oldTime().boundaryField()
274 rDeltaT2 *
rho.value() *
278 + coefft00*vf.
oldTime().oldTime()
295 4.0/
sqr(
mesh().time().deltaT() +
mesh().time().deltaT0());
299 "d2dt2("+
rho.name()+
','+vf.name()+
')',
300 mesh()().time().timeName(),
306 scalar deltaT = deltaT_();
307 scalar deltaT0 = deltaT0_();
309 scalar coefft = (deltaT + deltaT0)/(2*deltaT);
310 scalar coefft00 = (deltaT + deltaT0)/(2*deltaT0);
314 scalar halfRdeltaT2 = 0.5*rDeltaT2.
value();
315 scalar quarterRdeltaT2 = 0.25*rDeltaT2.
value();
320 *(
rho.primitiveField() +
rho.oldTime().primitiveField())
327 rho.oldTime().primitiveField()
328 +
rho.oldTime().oldTime().primitiveField()
343 - (coefft*SS0rhoRho0 + coefft00*S0S00rho0Rho00)
346 + (coefft00*S0S00rho0Rho00)
347 *vf.
oldTime().oldTime().primitiveField()
352 *(
rho.boundaryField() +
rho.oldTime().boundaryField())
359 +
rho.oldTime().boundaryField()
363 rho.oldTime().boundaryField()
364 +
rho.oldTime().oldTime().boundaryField()
370 rho.oldTime().boundaryField()
371 +
rho.oldTime().oldTime().boundaryField()
372 )*vf.
oldTime().oldTime().boundaryField()
392 - (coefft*rhoRho0 + coefft00*rho0Rho00)*vf.
oldTime()
393 + coefft00*rho0Rho00*vf.
oldTime().oldTime()
419 scalar deltaT = deltaT_();
420 scalar deltaT0 = deltaT0_();
422 scalar coefft = (deltaT + deltaT0)/(2*deltaT);
423 scalar coefft00 = (deltaT + deltaT0)/(2*deltaT0);
424 scalar coefft0 = coefft + coefft00;
426 scalar rDeltaT2 = 4.0/
sqr(deltaT + deltaT0);
430 scalar halfRdeltaT2 = rDeltaT2/2.0;
435 fam.diag() = (coefft*halfRdeltaT2)*SS0;
437 fam.source() = halfRdeltaT2*
439 (coefft*SS0 + coefft00*S0S00)
442 - (coefft00*S0S00)*vf.
oldTime().oldTime().primitiveField()
447 fam.diag() = (coefft*rDeltaT2)*
mesh().S();
449 fam.source() = rDeltaT2*
mesh().S()*
451 coefft0*vf.
oldTime().primitiveField()
452 - coefft00*vf.
oldTime().oldTime().primitiveField()
480 scalar deltaT = deltaT_();
481 scalar deltaT0 = deltaT0_();
483 scalar coefft = (deltaT + deltaT0)/(2*deltaT);
484 scalar coefft00 = (deltaT + deltaT0)/(2*deltaT0);
486 scalar rDeltaT2 = 4.0/
sqr(deltaT + deltaT0);
490 scalar halfRdeltaT2 = 0.5*rDeltaT2;
496 fam.diag() =
rho.value()*(coefft*halfRdeltaT2)*SS0;
498 fam.source() = halfRdeltaT2*
rho.value()*
500 (coefft*SS0 + coefft00*S0S00)
503 - (coefft00*S0S00)*vf.
oldTime().oldTime().primitiveField()
508 fam.diag() = (coefft*rDeltaT2)*
mesh().S()*
rho.value();
510 fam.source() = rDeltaT2*
mesh().S()*
rho.value()*
512 (coefft + coefft00)*vf.
oldTime().primitiveField()
513 - coefft00*vf.
oldTime().oldTime().primitiveField()
539 scalar deltaT =deltaT_();
540 scalar deltaT0 = deltaT0_();
542 scalar coefft = (deltaT + deltaT0)/(2*deltaT);
543 scalar coefft00 = (deltaT + deltaT0)/(2*deltaT0);
545 scalar rDeltaT2 = 4.0/
sqr(deltaT + deltaT0);
549 scalar quarterRdeltaT2 = 0.25*rDeltaT2;
554 *(
rho.primitiveField() +
rho.oldTime().primitiveField())
561 rho.oldTime().primitiveField()
562 +
rho.oldTime().oldTime().primitiveField()
566 fam.diag() = (coefft*quarterRdeltaT2)*SS0rhoRho0;
568 fam.source() = quarterRdeltaT2*
570 (coefft*SS0rhoRho0 + coefft00*S0S00rho0Rho00)
573 - (coefft00*S0S00rho0Rho00)
574 *vf.
oldTime().oldTime().primitiveField()
579 scalar halfRdeltaT2 = 0.5*rDeltaT2;
583 rho.primitiveField() +
rho.oldTime().primitiveField()
588 rho.oldTime().primitiveField()
589 +
rho.oldTime().oldTime().primitiveField()
592 fam.diag() = (coefft*halfRdeltaT2)*
mesh().S()*rhoRho0;
594 fam.source() = halfRdeltaT2*
mesh().S()*
596 (coefft*rhoRho0 + coefft00*rho0Rho00)
599 - (coefft00*rho0Rho00)
600 *vf.
oldTime().oldTime().primitiveField()