31#include "surfaceInterpolate.H"
63 <<
"Ddt scheme not specified" <<
endl <<
endl
64 <<
"Valid ddt schemes are :" <<
endl
65 << IstreamConstructorTablePtr_->sortedToc()
69 const word schemeName(schemeData);
71 auto* ctorPtr = IstreamConstructorTable(schemeName);
80 *IstreamConstructorTablePtr_
84 return ctorPtr(
mesh, schemeData);
162 U.mesh().time().timeName(),
172 if (ddtPhiCoeff_ < 0)
175 ddtCouplingCoeff -=
min
190 forAll(
U.boundaryField(), patchi)
194 U.boundaryField()[patchi].fixesValue()
205 <<
"ddtCouplingCoeff mean max min = "
212 return tddtCouplingCoeff;
236 U.mesh().time().timeName(),
246 if (ddtPhiCoeff_ < 0)
249 ddtCouplingCoeff -=
min
255 *
mesh().time().deltaT()*
mesh().deltaCoeffs()/
mesh().magSf(),
271 forAll(
U.boundaryField(), patchi)
275 U.boundaryField()[patchi].fixesValue()
286 <<
"ddtCouplingCoeff mean max min = "
293 return tddtCouplingCoeff;
306 if (experimentalDdtCorr)
309 fvcDdtPhiCoeffExperimental
318 return fvcDdtPhiCoeff(
U,
phi, phiCorr);
330 if (experimentalDdtCorr)
333 fvcDdtPhiCoeffExperimental
361 if (experimentalDdtCorr)
363 return fvcDdtPhiCoeffExperimental
373 return fvcDdtPhiCoeff
const dimensionSet & dimensions() const
Return dimensions.
void setOriented(const bool oriented=true) noexcept
Set the oriented flag.
const Internal::FieldType & primitiveField() const
Return a const-reference to the internal field.
Boundary & boundaryFieldRef(const bool updateAccessTime=true)
Return a reference to the boundary field.
static const GeometricField< Type, PatchField, GeoMesh > & null()
Return a null geometric field.
Defines the attributes of an object for which implicit objectRegistry management is supported,...
bool eof() const noexcept
True if end of input seen.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
static autoPtr< Time > New()
Construct (dummy) Time - no functionObjects or libraries.
Mesh data needed to do the Finite Volume discretisation.
virtual tmp< fvMatrix< Type > > fvmDdt(const GeometricField< Type, fvPatchField, volMesh > &)=0
tmp< surfaceScalarField > fvcDdtPhiCoeffExperimental(const GeometricField< Type, fvPatchField, volMesh > &U, const fluxFieldType &phi, const fluxFieldType &phiCorr)
virtual tmp< GeometricField< Type, fvPatchField, volMesh > > fvcDdt(const dimensioned< Type > &)=0
tmp< surfaceScalarField > fvcDdtPhiCoeff(const GeometricField< Type, fvPatchField, volMesh > &U, const fluxFieldType &phi, const fluxFieldType &phiCorr)
A class for managing temporary objects.
A class for handling words, derived from Foam::string.
#define FatalIOErrorInLookup(ios, lookupTag, lookupName, lookupTable)
Report an error message using Foam::FatalIOError.
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
#define InfoInFunction
Report an information message using Foam::Info.
static tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate(const GeometricField< Type, fvPatchField, volMesh > &tvf, const surfaceScalarField &faceFlux, Istream &schemeData)
Interpolate field onto faces using scheme given by Istream.
static tmp< GeometricField< typename innerProduct< vector, Type >::type, fvsPatchField, surfaceMesh > > dotInterpolate(const surfaceVectorField &Sf, const GeometricField< Type, fvPatchField, volMesh > &tvf)
Interpolate field onto faces.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
const dimensionSet dimless
Dimensionless.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
Ostream & endl(Ostream &os)
Add newline and flush stream.
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
label min(const labelHashSet &set, label minValue=labelMax)
Find the min value in labelHashSet, optionally limited by second argument.
Type gAverage(const FieldField< Field, Type > &f)
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh > > &tdf1, const word &name, const dimensionSet &dimensions)
Global function forwards to reuseTmpDimensionedField::New.
Type gMin(const FieldField< Field, Type > &f)
errorManipArg< error, int > exit(error &err, const int errNo=1)
Type gMax(const FieldField< Field, Type > &f)
const dimensionSet dimVol(dimVolume)
Older spelling for dimVolume.
#define forAll(list, i)
Loop across all elements in list.