EulerDdtScheme: evaluate dimensioned internal field expressions rather than primitive field expressions

Ensures dimension consistency and simplifies the expressions
This commit is contained in:
Henry Weller
2016-05-01 11:08:01 +01:00
parent 4c5052a3a1
commit a3aa589263

View File

@ -122,12 +122,10 @@ EulerDdtScheme<Type>::fvcDdt
new GeometricField<Type, fvPatchField, volMesh> new GeometricField<Type, fvPatchField, volMesh>
( (
ddtIOobject, ddtIOobject,
mesh(), rDeltaT*
rDeltaT.dimensions()*vf.dimensions(),
rDeltaT.value()*
( (
vf.primitiveField() vf()
- vf.oldTime().primitiveField()*mesh().Vsc0()/mesh().Vsc() - vf.oldTime()()*mesh().Vsc0()/mesh().Vsc()
), ),
rDeltaT.value()* rDeltaT.value()*
( (
@ -174,12 +172,10 @@ EulerDdtScheme<Type>::fvcDdt
new GeometricField<Type, fvPatchField, volMesh> new GeometricField<Type, fvPatchField, volMesh>
( (
ddtIOobject, ddtIOobject,
mesh(), rDeltaT*rho*
rDeltaT.dimensions()*rho.dimensions()*vf.dimensions(),
rDeltaT.value()*rho.value()*
( (
vf.primitiveField() vf()
- vf.oldTime().primitiveField()*mesh().Vsc0()/mesh().Vsc() - vf.oldTime()()*mesh().Vsc0()/mesh().Vsc()
), ),
rDeltaT.value()*rho.value()* rDeltaT.value()*rho.value()*
( (
@ -226,13 +222,11 @@ EulerDdtScheme<Type>::fvcDdt
new GeometricField<Type, fvPatchField, volMesh> new GeometricField<Type, fvPatchField, volMesh>
( (
ddtIOobject, ddtIOobject,
mesh(), rDeltaT*
rDeltaT.dimensions()*rho.dimensions()*vf.dimensions(),
rDeltaT.value()*
( (
rho.primitiveField()*vf.primitiveField() rho()*vf()
- rho.oldTime().primitiveField() - rho.oldTime()()
*vf.oldTime().primitiveField()*mesh().Vsc0()/mesh().Vsc() *vf.oldTime()()*mesh().Vsc0()/mesh().Vsc()
), ),
rDeltaT.value()* rDeltaT.value()*
( (
@ -282,18 +276,15 @@ EulerDdtScheme<Type>::fvcDdt
new GeometricField<Type, fvPatchField, volMesh> new GeometricField<Type, fvPatchField, volMesh>
( (
ddtIOobject, ddtIOobject,
mesh(),
rDeltaT.dimensions()
*alpha.dimensions()*rho.dimensions()*vf.dimensions(),
rDeltaT.value()* rDeltaT.value()*
( (
alpha.primitiveField() alpha()
*rho.primitiveField() *rho()
*vf.primitiveField() *vf()
- alpha.oldTime().primitiveField() - alpha.oldTime()()
*rho.oldTime().primitiveField() *rho.oldTime()()
*vf.oldTime().primitiveField()*mesh().Vsc0()/mesh().Vsc() *vf.oldTime()()*mesh().Vsc0()/mesh().Vsc()
), ),
rDeltaT.value()* rDeltaT.value()*
( (