30 template<
class BasicMomentumTransportModel>
35 Info<< coeffDict_.dictName() << coeffDict_ <<
endl;
42 template<
class BasicMomentumTransportModel>
54 BasicMomentumTransportModel
65 RASDict_(this->subOrEmptyDict(
"RAS")),
66 turbulence_(RASDict_.lookup(
"turbulence")),
67 printCoeffs_(RASDict_.lookupOrDefault<
Switch>(
"printCoeffs",
false)),
68 coeffDict_(RASDict_.optionalSubDict(type +
"Coeffs")),
105 this->mesh_.deltaCoeffs();
111 template<
class BasicMomentumTransportModel>
125 momentumTransportModel::readModelDict
139 Info<<
"Selecting RAS turbulence model " << modelType <<
endl;
141 typename dictionaryConstructorTable::iterator cstrIter =
142 dictionaryConstructorTablePtr_->find(modelType);
144 if (cstrIter == dictionaryConstructorTablePtr_->end())
147 <<
"Unknown RASModel type " 148 << modelType <<
nl <<
nl 149 <<
"Valid RASModel types:" << endl
150 << dictionaryConstructorTablePtr_->sortedToc()
163 template<
class BasicMomentumTransportModel>
168 RASDict_ <<= this->subDict(
"RAS");
169 RASDict_.lookup(
"turbulence") >> turbulence_;
171 coeffDict_ <<= RASDict_.optionalSubDict(
type() +
"Coeffs");
173 kMin_.readIfPresent(RASDict_);
174 epsilonMin_.readIfPresent(RASDict_);
175 omegaMin_.readIfPresent(RASDict_);
186 template<
class BasicMomentumTransportModel>
static word group(const word &name)
Return group (extension part of name)
bool found(const word &, bool recursive=false, bool patternMatch=true) const
Search dictionary for given keyword.
static autoPtr< RASModel > New(const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport)
Return a reference to the selected RAS model.
errorManipArg< error, int > exit(error &err, const int errNo=1)
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
Ostream & endl(Ostream &os)
Add newline and flush stream.
A simple wrapper around bool so that it can be read as a word: true/false, on/off, yes/no, y/n, t/f, or none/any.
Generic dimensioned Type class.
virtual bool read()
Read model coefficients if they have changed.
TransportModel transportModel
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
const dictionary & subDict(const word &) const
Find and return a sub-dictionary.
A class for handling words, derived from string.
virtual void printCoeffs(const word &type)
Print model coefficients.
Info<< "Predicted p max-min : "<< max(p).value()<< " "<< min(p).value()<< endl;rho==max(rho0+psi *p, rhoMin);# 1 "/home/ubuntu/OpenFOAM-8/applications/solvers/multiphase/cavitatingFoam/alphavPsi.H" 1{ alphav=max(min((rho - rholSat)/(rhovSat - rholSat), scalar(1)), scalar(0));alphal=1.0 - alphav;Info<< "max-min alphav: "<< max(alphav).value()<< " "<< min(alphav).value()<< endl;psiModel-> correct()
const dimensionSet dimless(0, 0, 0, 0, 0, 0, 0)
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
RASModel(const word &type, const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport)
Construct from components.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
volScalarField alpha(IOobject("alpha", runTime.timeName(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
const objectRegistry & db() const
Return the local objectRegistry.
virtual void correct()
Solve the turbulence equations and correct the turbulence viscosity.
ITstream & lookup(const word &, bool recursive=false, bool patternMatch=true) const
Find and return an entry data stream.
const dimensionSet dimVelocity