31 template<
class BasicMomentumTransportModel>
43 BasicMomentumTransportModel
56 this->mesh_.deltaCoeffs();
62 template<
class BasicMomentumTransportModel>
83 if (modelDict.
found(
"laminar"))
85 const word modelType =
88 {
"model",
"laminarModel"}
92 <<
"Selecting laminar stress model " << modelType <<
endl;
94 typename dictionaryConstructorTable::iterator cstrIter =
95 dictionaryConstructorTablePtr_->find(modelType);
97 if (cstrIter == dictionaryConstructorTablePtr_->end())
100 <<
"Unknown laminarModel type "
101 << modelType <<
nl <<
nl
102 <<
"Valid laminarModel types:" <<
endl
103 << dictionaryConstructorTablePtr_->sortedToc()
129 <<
"Selecting laminar stress model "
157 template<
class BasicMomentumTransportModel>
161 return this->subDict(
"laminar");
165 template<
class BasicMomentumTransportModel>
173 template<
class BasicMomentumTransportModel>
187 template<
class BasicMomentumTransportModel>
193 this->groupName(
"nut"),
200 template<
class BasicMomentumTransportModel>
214 template<
class BasicMomentumTransportModel>
220 this->groupName(
"k"),
227 template<
class BasicMomentumTransportModel>
233 this->groupName(
"epsilon"),
240 template<
class BasicMomentumTransportModel>
246 this->groupName(
"omega"),
253 template<
class BasicMomentumTransportModel>
259 this->groupName(
"sigma"),
266 template<
class BasicMomentumTransportModel>
269 BasicMomentumTransportModel::predict();
273 template<
class BasicMomentumTransportModel>
Generic GeometricField class.
static tmp< GeometricField< Type, GeoMesh, PrimitiveField > > New(const word &name, const Internal &, const PtrList< Patch > &, const HashPtrTable< Source > &=HashPtrTable< Source >())
Return a temporary field constructed from name,.
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
static word group(const word &name)
Return group (extension part of name)
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
const dictionary & optionalSubDict(const word &) const
Find and return a sub-dictionary if found.
const dictionary & subDict(const word &) const
Find and return a sub-dictionary.
ITstream & lookupBackwardsCompatible(const wordList &, bool recursive=false, bool patternMatch=true) const
Find and return an entry data stream, trying a list of keywords.
bool found(const word &, bool recursive=false, bool patternMatch=true) const
Search dictionary for given keyword.
BasicMomentumTransportModel::alphaField alphaField
virtual tmp< volScalarField > epsilon() const
Return the turbulence kinetic energy dissipation rate,.
virtual tmp< volSymmTensorField > R() const
Return the Reynolds stress tensor [m^2/s^2], i.e. 0 for laminar flow.
static autoPtr< laminarModel > New(const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const viscosity &viscosity)
Return a reference to the selected laminar model.
virtual void correct()
Predict the laminar viscosity.
virtual tmp< volScalarField > k() const
Return the turbulence kinetic energy, i.e. 0 for laminar flow.
const dictionary & laminarDict() const
Const access to the laminar dictionary.
virtual void predict()
Predict the laminar viscosity.
laminarModel(const word &type, const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const viscosity &viscosity)
Construct from components.
const dictionary & coeffDict() const
Const access to the coefficients dictionary.
virtual tmp< volScalarField > nut() const
Return the turbulence viscosity, i.e. 0 for laminar flow.
virtual tmp< volScalarField > omega() const
Return the turbulence specific dissipation rate,.
virtual bool read()
Read model coefficients if they have changed.
BasicMomentumTransportModel::rhoField rhoField
Momentum transport model for Stokes flow.
static typeIOobject< IOdictionary > readModelDict(const objectRegistry &obr, const word &group, bool registerObject=false)
A class for managing temporary objects.
Abstract base class for all fluid physical properties.
A class for handling words, derived from string.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
volScalarField alpha(IOobject("alpha", runTime.name(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
void correct(const RdeltaTType &rDeltaT, const RhoType &rho, volScalarField &psi, const surfaceScalarField &phiCorr, const SpType &Sp)
errorManipArg< error, int > exit(error &err, const int errNo=1)
Ostream & decrIndent(Ostream &os)
Decrement the indent level.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Ostream & endl(Ostream &os)
Add newline and flush stream.
const dimensionSet dimKinematicViscosity
const dimensionSet dimless
Ostream & incrIndent(Ostream &os)
Increment the indent level.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
const dimensionSet dimTime
dimensioned< symmTensor > dimensionedSymmTensor
Dimensioned tensor obtained from generic dimensioned type.
void sqr(LagrangianPatchField< typename outerProduct< Type, Type >::type > &f, const LagrangianPatchField< Type > &f1)
const dimensionSet dimVelocity
Ostream & indent(Ostream &os)
Indent stream.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.