35 namespace functionObjects
127 if (dict.
found(
"field"))
138 prefix_ = modelName() +
':';
146 if (fieldSet_.size())
148 Info<<
"storing fields:" <<
nl;
151 Info<<
" " << prefix_ + iter.key() <<
nl;
157 Info<<
"no fields requested to be stored" <<
nl <<
endl;
173 const word&
f = iter.key();
174 switch (compressibleFieldNames_[f])
178 processField<scalar>(
f, model.k());
183 processField<scalar>(
f, model.epsilon());
186 case compressibleField::omega:
188 processField<scalar>(
f, omega(model));
191 case compressibleField::mut:
193 processField<scalar>(
f, model.mut());
196 case compressibleField::muEff:
198 processField<scalar>(
f, model.muEff());
201 case compressibleField::alphat:
203 processField<scalar>(
f, model.
alphat());
206 case compressibleField::alphaEff:
208 processField<scalar>(
f, model.
alphaEff());
213 processField<symmTensor>(
f, model.R());
216 case compressibleField::devRhoReff:
218 processField<symmTensor>(
f, model.devRhoReff());
236 const word&
f = iter.key();
237 switch (compressibleFieldNames_[f])
241 processField<scalar>(
f, model.
k());
246 processField<scalar>(
f, model.
epsilon());
249 case compressibleField::omega:
251 processField<scalar>(
f, omega(model));
254 case compressibleField::mut:
256 processField<scalar>(
f, model.
mut());
259 case compressibleField::muEff:
261 processField<scalar>(
f, model.
muEff());
266 processField<symmTensor>(
f, model.
R());
269 case compressibleField::devRhoReff:
289 const word&
f = iter.key();
290 switch (incompressibleFieldNames_[f])
294 processField<scalar>(
f, model.
k());
299 processField<scalar>(
f, model.
epsilon());
302 case incompressibleField::omega:
304 processField<scalar>(
f, omega(model));
309 processField<scalar>(
f, model.
nut());
312 case incompressibleField::nuEff:
314 processField<scalar>(
f, model.
nuEff());
319 processField<symmTensor>(
f, model.
R());
322 case incompressibleField::devReff:
324 processField<symmTensor>(
f, model.
devReff());
338 <<
"Turbulence model not found in database, deactivating" 350 const word fieldName = prefix_ + iter.key();
351 writeObject(fieldName);
A HashTable with keys but without contents.
bool found(const word &, bool recursive=false, bool patternMatch=true) const
Search dictionary for given keyword.
errorManipArg< error, int > exit(error &err, const int errNo=1)
A list of keyword definitions, which are a keyword followed by any number of values (e...
turbulenceFields(const word &name, const Time &runTime, const dictionary &dict)
Construct from Time and dictionary.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
addToRunTimeSelectionTable(functionObject, Qdot, dictionary)
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.
virtual tmp< volScalarField > muEff() const =0
Return the effective dynamic viscosity.
virtual tmp< volSymmTensorField > R() const =0
Return the Reynolds stress tensor.
virtual tmp< volScalarField > mut() const =0
Return the turbulence dynamic viscosity.
static const NamedEnum< incompressibleField, 7 > incompressibleFieldNames_
label k
Boltzmann constant.
Templated wrapper class to provide compressible turbulence models thermal diffusivity based thermal t...
Initialise the NamedEnum HashTable from the static list of names.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
Macros for easy insertion into run-time selection tables.
virtual tmp< volScalarField > k() const =0
Return the turbulence kinetic energy.
virtual tmp< volSymmTensorField > devRhoReff() const =0
Return the effective stress tensor including the laminar stress.
virtual tmp< volScalarField > alphaEff() const
Effective thermal turbulent diffusivity of mixture [kg/m/s].
Templated abstract base class for single-phase incompressible turbulence models.
bool read(const char *, int32_t &)
static const word propertiesName
Default name of the turbulence properties dictionary.
A class for handling words, derived from string.
static const word null
An empty word.
virtual bool read(const dictionary &)
Read the controls.
virtual bool write()
Do nothing.
forAllConstIter(PtrDictionary< phaseModel >, mixture.phases(), phase)
virtual tmp< volSymmTensorField > devReff() const
Return the effective stress tensor.
Abstract base class for turbulence models (RAS, LES and laminar).
virtual tmp< volScalarField > nuEff() const =0
Return the effective viscosity.
virtual ~turbulenceFields()
Destructor.
word name(const complex &)
Return a string representation of a complex.
defineTypeNameAndDebug(Qdot, 0)
List< word > wordList
A List of words.
T lookupOrDefault(const word &, const T &, bool recursive=false, bool patternMatch=true) const
Find and return a T,.
#define R(A, B, C, D, E, F, K, M)
virtual tmp< volScalarField > epsilon() const =0
Return the turbulence kinetic energy dissipation rate.
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.
virtual bool execute()
Calculate turbulence fields.
static const word & modelName()
virtual tmp< volScalarField > alphat() const
Turbulent thermal diffusivity for enthalpy [kg/m/s].
Specialization of Foam::functionObject for an Foam::fvMesh, providing a reference to the Foam::fvMesh...
virtual tmp< volScalarField > nut() const =0
Return the turbulence viscosity.
static const NamedEnum< compressibleField, 9 > compressibleFieldNames_
ITstream & lookup(const word &, bool recursive=false, bool patternMatch=true) const
Find and return an entry data stream.