Go to the documentation of this file.
33 template<
class BasicTurbulenceModel>
38 Info<< coeffDict_.dictName() << coeffDict_ <<
endl;
45 template<
class BasicTurbulenceModel>
55 const word& propertiesName
70 RASDict_(this->subOrEmptyDict(
"RAS")),
71 turbulence_(RASDict_.get<
Switch>(
"turbulence")),
72 printCoeffs_(RASDict_.getOrDefault<
Switch>(
"printCoeffs",
false)),
73 coeffDict_(RASDict_.optionalSubDict(
type +
"Coeffs")),
110 this->mesh_.deltaCoeffs();
116 template<
class BasicTurbulenceModel>
126 const word& propertiesName
133 IOobject::groupName(propertiesName, alphaRhoPhi.group()),
136 IOobject::MUST_READ_IF_MODIFIED,
147 dict.getCompat<
word>(
"model", {{
"RASModel", -2006}})
150 Info<<
"Selecting RAS turbulence model " << modelType <<
endl;
152 auto cstrIter = dictionaryConstructorTablePtr_->cfind(modelType);
154 if (!cstrIter.found())
161 *dictionaryConstructorTablePtr_
165 return autoPtr<RASModel>
167 cstrIter()(
alpha,
rho,
U, alphaRhoPhi,
phi, transport, propertiesName)
174 template<
class BasicTurbulenceModel>
179 RASDict_ <<= this->subDict(
"RAS");
180 RASDict_.readEntry(
"turbulence", turbulence_);
182 coeffDict_ <<= RASDict_.optionalSubDict(
type() +
"Coeffs");
184 kMin_.readIfPresent(RASDict_);
185 epsilonMin_.readIfPresent(RASDict_);
186 omegaMin_.readIfPresent(RASDict_);
195 template<
class BasicTurbulenceModel>
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
Defines the attributes of an object for which implicit objectRegistry management is supported,...
A simple wrapper around bool so that it can be read as a word: true/false, on/off,...
const dimensionSet dimless(0, 0, 0, 0, 0, 0, 0)
Dimensionless.
A class for handling words, derived from Foam::string.
const dimensionSet dimVelocity
const dimensionedScalar alpha
Fine-structure constant: default SI units: [].
RASModel(const RASModel &)=delete
No copy construct.
Ostream & endl(Ostream &os)
Add newline and flush stream.
BasicTurbulenceModel::alphaField alphaField
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
#define FatalIOErrorInLookup(ios, lookupTag, lookupName, lookupTable)
Report an error message using Foam::FatalIOError.
static autoPtr< RASModel > New(const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName=turbulenceModel::propertiesName)
Return a reference to the selected RAS model.
messageStream Info
Information stream (uses stdout - output is on the master only)
const dictionary & subDict(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
Find and return a sub-dictionary.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Generic dimensioned Type class.
errorManipArg< error, int > exit(error &err, const int errNo=1)
BasicTurbulenceModel::transportModel transportModel
virtual void correct()
Solve the turbulence equations and correct the turbulence viscosity.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
virtual void printCoeffs(const word &type)
Print model coefficients.
virtual bool read()
Read model coefficients if they have changed.