Go to the documentation of this file.
55 cofrDeltaT.instance(),
60 zeroGradientFvPatchScalarField::typeName
71 corDeltaT[owner[faceI]] =
72 max(corDeltaT[owner[faceI]], cofrDeltaT[faceI]);
74 corDeltaT[neighbour[faceI]] =
75 max(corDeltaT[neighbour[faceI]], cofrDeltaT[faceI]);
87 const labelUList& faceCells =
p.patch().faceCells();
89 forAll(pcofrDeltaT, patchFacei)
91 corDeltaT[faceCells[patchFacei]] =
max
93 corDeltaT[faceCells[patchFacei]],
94 pcofrDeltaT[patchFacei]
114 .lookupObject<surfaceScalarField>(phiName_);
125 return max(Co/maxCo_, scalar(1))/deltaT;
131 .lookupObject<volScalarField>(rhoName_).oldTime();
140 return max(Co/maxCo_, scalar(1))/deltaT;
145 <<
"Incorrect dimensions of phi: " <<
phi.dimensions()
164 "ddt("+dt.
name()+
')',
186 tdtdt().internalField() =
188 *(1.0 -
mesh().Vsc0()/
mesh().Vsc());
224 "ddt("+vf.name()+
')',
237 rDeltaT.dimensions()*vf.dimensions(),
276 "ddt("+
rho.name()+
','+vf.name()+
')',
289 rDeltaT.dimensions()*
rho.dimensions()*vf.dimensions(),
328 "ddt("+
rho.name()+
','+vf.name()+
')',
341 rDeltaT.dimensions()*
rho.dimensions()*vf.dimensions(),
345 -
rho.oldTime().internalField()
351 -
rho.oldTime().boundaryField()
401 alpha.internalField()
405 -
alpha.oldTime().internalField()
406 *
rho.oldTime().internalField()
411 alpha.boundaryField()
415 -
alpha.oldTime().boundaryField()
416 *
rho.oldTime().boundaryField()
460 fvm.diag() = rDeltaT*
mesh().Vsc();
495 fvm.diag() = rDeltaT*
rho.value()*
mesh().Vsc();
532 fvm.diag() = rDeltaT*
rho.internalField()*
mesh().Vsc();
537 *
rho.oldTime().internalField()
543 *
rho.oldTime().internalField()
572 fvm.diag() = rDeltaT*
alpha.internalField()*
rho.internalField()*
mesh().Vsc();
577 *
alpha.oldTime().internalField()
578 *
rho.oldTime().internalField()
584 *
alpha.oldTime().internalField()
585 *
rho.oldTime().internalField()
614 "ddtCorr(" +
U.name() +
',' +
Uf.name() +
')',
621 (
mesh().Sf() &
Uf.oldTime()),
651 "ddtCorr(" +
U.name() +
',' +
phi.name() +
')',
655 this->fvcDdtPhiCoeff(
U.oldTime(),
phi.oldTime(), phiCorr)
681 rho.oldTime()*
U.oldTime()
696 +
rho.name() +
',' +
U.name() +
',' +
Uf.name() +
')',
703 mesh().Sf() &
Uf.oldTime(),
716 return fvcDdtUfCorr(
U,
Uf);
721 <<
"dimensions of Uf are not correct"
724 return fluxFieldType::null();
748 rho.oldTime()*
U.oldTime()
763 +
rho.name() +
',' +
U.name() +
',' +
phi.name() +
')',
767 this->fvcDdtPhiCoeff(rhoU0,
phi.oldTime(), phiCorr)
778 return fvcDdtPhiCorr(
U,
phi);
783 <<
"dimensions of phi are not correct"
786 return fluxFieldType::null();
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
tmp< surfaceScalarField > CofrDeltaT() const
Return the reciprocal of the face-Courant-number limited time-step.
#define forAll(list, i)
Loop across all elements in list.
A class for managing temporary objects.
const dimensionSet dimVelocity
const dimensionSet dimDensity
tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt(const dimensioned< Type > &)
const dimensionedScalar alpha
Fine-structure constant: default SI units: [].
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate(const GeometricField< Type, fvPatchField, volMesh > &vf, const surfaceScalarField &faceFlux, Istream &schemeData)
Interpolate field onto faces using scheme given by Istream.
An abstract base class with a fat-interface to all derived classes covering all possible ways in whic...
const GeometricField< Type, PatchField, GeoMesh > & oldTime() const
Return old time field.
Calculate the divergence of the given field.
const word & name() const
Return const reference to name.
GeometricBoundaryField & boundaryField()
Return reference to GeometricBoundaryField.
const Type & value() const
Return const reference to value.
tmp< fvMatrix< Type > > fvmDdt(const GeometricField< Type, fvPatchField, volMesh > &)
Dimension set for the base types.
dimensioned< scalar > mag(const dimensioned< Type > &)
const surfaceScalarField & deltaCoeffs() const
Return reference to cell-centre difference coefficients.
A special matrix type and solver, designed for finite volume solutions of scalar equations.
Registry of regIOobjects.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
const dimensionSet dimArea(sqr(dimLength))
tmp< volScalarField > CorDeltaT() const
Return the reciprocal of the Courant-number limited time-step.
Pre-declare SubField and related Field type.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
InternalField & internalField()
Return internal field.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
Generic dimensioned Type class.
This boundary condition is not designed to be evaluated; it is assmued that the value is assigned via...
errorManip< error > abort(error &err)
tmp< fluxFieldType > fvcDdtUfCorr(const GeometricField< Type, fvPatchField, volMesh > &U, const GeometricField< Type, fvsPatchField, surfaceMesh > &Uf)
void correctBoundaryConditions()
Correct boundary field.
conserve internalField()+
dimensioned< Type > max(const dimensioned< Type > &, const dimensioned< Type > &)
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
const fvPatch & patch() const
Return patch.
tmp< fluxFieldType > fvcDdtPhiCorr(const GeometricField< Type, fvPatchField, volMesh > &U, const fluxFieldType &phi)
Traits class for primitives.
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
const dimensionSet dimVol(dimVolume)
tmp< surfaceScalarField > meshPhi(const GeometricField< Type, fvPatchField, volMesh > &)
const dimensionSet & dimensions() const
Return const reference to dimensions.
const dimensionSet dimVolume(pow3(dimLength))
Generic GeometricField class.