41 if (surfaceInterpolation::debug)
44 <<
"Constructing limitedSurfaceInterpolationScheme<Type>" <<
endl;
52 ) <<
"Discretisation scheme not specified" 54 <<
"Valid schemes are :" <<
endl 55 << MeshConstructorTablePtr_->sortedToc()
59 const word schemeName(schemeData);
61 typename MeshConstructorTable::iterator constructorIter =
62 MeshConstructorTablePtr_->find(schemeName);
64 if (constructorIter == MeshConstructorTablePtr_->end())
69 ) <<
"Unknown discretisation scheme " 70 << schemeName <<
nl <<
nl 71 <<
"Valid schemes are :" <<
endl 72 << MeshConstructorTablePtr_->sortedToc()
76 return constructorIter()(
mesh, schemeData);
89 if (surfaceInterpolation::debug)
92 <<
"Constructing limitedSurfaceInterpolationScheme<Type>" 101 ) <<
"Discretisation scheme not specified" 103 <<
"Valid schemes are :" <<
endl 104 << MeshConstructorTablePtr_->sortedToc()
108 const word schemeName(schemeData);
110 typename MeshFluxConstructorTable::iterator constructorIter =
111 MeshFluxConstructorTablePtr_->find(schemeName);
113 if (constructorIter == MeshFluxConstructorTablePtr_->end())
118 ) <<
"Unknown discretisation scheme " 119 << schemeName <<
nl <<
nl 120 <<
"Valid schemes are :" <<
endl 121 << MeshFluxConstructorTablePtr_->sortedToc()
125 return constructorIter()(
mesh, faceFlux, schemeData);
161 surfaceScalarField::Boundary& bWeights =
192 this->
mesh().surfaceInterpolation::weights(),
bool eof() const
Return true if end of input seen.
#define forAll(list, i)
Loop across all elements in list.
virtual tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > flux(const GeometricField< Type, fvPatchField, volMesh > &) const
Return the interpolation weighting factors.
void limiter(scalarField &allLambda, const RdeltaTType &rDeltaT, const RhoType &rho, const volScalarField &psi, const surfaceScalarField &phiBD, const surfaceScalarField &phiCorr, const SpType &Sp, const SuType &Su, const scalar psiMax, const scalar psiMin)
errorManipArg< error, int > exit(error &err, const int errNo=1)
A face is a list of labels corresponding to mesh vertices.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
Ostream & endl(Ostream &os)
Add newline and flush stream.
tmp< surfaceScalarField > interpolate(const RhoType &rho)
static tmp< limitedSurfaceInterpolationScheme< Type > > New(const fvMesh &mesh, Istream &schemeData)
Return new tmp interpolation scheme.
dimensionedScalar pos(const dimensionedScalar &ds)
const Boundary & boundaryField() const
Return const-reference to the boundary field.
A class for handling words, derived from string.
Internal::FieldType & primitiveFieldRef()
Return a reference to the internal field.
Boundary & boundaryFieldRef()
Return a reference to the boundary field.
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
Mesh data needed to do the Finite Volume discretisation.
tmp< surfaceScalarField > weights(const GeometricField< Type, fvPatchField, volMesh > &, const surfaceScalarField &CDweights, tmp< surfaceScalarField > tLimiter) const
Return the interpolation weighting factors for the given field,.
A class for managing temporary objects.
T & ref() const
Return non-const reference or generate a fatal error.
#define InfoInFunction
Report an information message using Foam::Info.
virtual ~limitedSurfaceInterpolationScheme()
Destructor.