FreeFOAM The Cross-Platform CFD Toolkit
incompressible::LESModel Class Reference

Base class for all incompressible flow LES SGS models. More...

#include <incompressibleLESModels/LESModel.H>


Detailed Description

Base class for all incompressible flow LES SGS models.

This class defines the basic interface for an incompressible flow SGS model, and encapsulates data of value to all possible models. In particular this includes references to all the dependent fields (U, phi), the physical viscosity nu, and the LESProperties dictionary, which contains the model selection and model coefficients.

Source files

Definition at line 71 of file LESModel.H.

+ Inheritance diagram for incompressible::LESModel:
+ Collaboration diagram for incompressible::LESModel:

List of all members.

Public Member Functions

 TypeName ("LESModel")
 Runtime type information.
 declareRunTimeSelectionTable (autoPtr, LESModel, dictionary,(const volVectorField &U, const surfaceScalarField &phi, transportModel &lamTransportModel),(U, phi, lamTransportModel))
 LESModel (const word &type, const volVectorField &U, const surfaceScalarField &phi, transportModel &lamTransportModel)
 Construct from components.
virtual ~LESModel ()
 Destructor.
const dictionarycoeffDict () const
 Const access to the coefficients dictionary,.
virtual const volScalarFielddelta () const
 Access function to filter width.
const dimensionedScalark0 () const
 Return the value of k0 which k is not allowed to be less than.
dimensionedScalark0 ()
 Allow k0 to be changed.
virtual tmp< volScalarFieldk () const =0
 Return the SGS turbulent kinetic energy.
virtual tmp< volScalarFieldepsilon () const =0
 Return the SGS turbulent dissipation.
virtual tmp< volScalarFieldnuSgs () const =0
 Return the SGS viscosity.
virtual tmp< volScalarFieldnuEff () const
 Return the effective viscosity.
virtual tmp< volSymmTensorFieldB () const =0
 Return the sub-grid stress tensor.
virtual tmp< volSymmTensorFielddevBeff () const =0
 Return the deviatoric part of the effective sub-grid.
virtual tmp< fvVectorMatrixdivDevBeff (volVectorField &U) const =0
 Returns div(dev(Beff)).
virtual tmp< volScalarFieldnut () const
 Return the turbulence viscosity.
virtual tmp< volSymmTensorFieldR () const
 Return the Reynolds stress tensor.
virtual tmp< volSymmTensorFielddevReff () const
 Return the effective stress tensor including the laminar stress.
virtual tmp< fvVectorMatrixdivDevReff (volVectorField &U) const
 Return the source term for the momentum equation.
void correct ()
 Correct Eddy-Viscosity and related properties.
virtual void correct (const tmp< volTensorField > &gradU)
 Correct Eddy-Viscosity and related properties.
virtual bool read ()=0
 Read LESProperties dictionary.
- Public Member Functions inherited from incompressible::turbulenceModel
 TypeName ("turbulenceModel")
 Runtime type information.
 declareRunTimeNewSelectionTable (autoPtr, turbulenceModel, turbulenceModel,(const volVectorField &U, const surfaceScalarField &phi, transportModel &lamTransportModel),(U, phi, lamTransportModel))
 turbulenceModel (const volVectorField &U, const surfaceScalarField &phi, transportModel &lamTransportModel)
 Construct from components.
virtual ~turbulenceModel ()
 Destructor.
const volVectorFieldU () const
 Access function to velocity field.
const surfaceScalarFieldphi () const
 Access function to flux field.
transportModeltransport () const
 Access function to incompressible transport model.
const volScalarFieldnu () const
 Return the laminar viscosity.
virtual tmp< fvVectorMatrixdivDevReff (volVectorField &U) const =0
 Return the source term for the momentum equation.
- Public Member Functions inherited from IOdictionary
 TypeName ("dictionary")
 IOdictionary (const IOobject &)
 Construct given an IOobject.
 IOdictionary (const IOobject &, const dictionary &)
 Construct given an IOobject and dictionary.
virtual ~IOdictionary ()
const wordname () const
 Name function is needed to disambiguate those inherited.
bool readData (Istream &)
 ReadData function required for regIOobject read operation.
bool writeData (Ostream &) const
 WriteData function required for regIOobject write operation.
virtual bool write () const
 Write using setting from DB.
void operator= (const IOdictionary &)
 Assignment of other IOdictionary's entries to this IOdictionary.
- Public Member Functions inherited from regIOobject
 TypeName ("regIOobject")
 Runtime type information.
 regIOobject (const IOobject &, const bool isTime=false)
 Construct from IOobject. Optional flag for if IOobject is the.
 regIOobject (const regIOobject &)
 Construct as copy.
 regIOobject (const regIOobject &, bool registerCopy)
 Construct as copy, and transferring registry registration to copy.
virtual ~regIOobject ()
bool checkIn ()
 Add object to registry.
bool checkOut ()
 Remove object from registry.
bool ownedByRegistry () const
 Is this object owned by the registry?
void store ()
 Transfer ownership of this object to its registry.
void release ()
 Release ownership of this object from its registry.
label eventNo () const
 Event number at last update.
label & eventNo ()
 Event number at last update.
bool upToDate (const word &) const
 Am I uptodate with respect to other regIOobjects.
bool upToDate (const word &, const word &) const
bool upToDate (const word &, const word &, const word &) const
bool upToDate (const word &, const word &, const word &, const word &) const
void setUpToDate ()
 Flag me as up to date.
virtual void rename (const word &newName)
 Rename.
IstreamreadStream (const word &)
 Return Istream and check object type against that given.
void close ()
 Close Istream.
virtual bool modified () const
 Return true if the object's file has been modified.
virtual bool readIfModified ()
 Read object if modified.
virtual bool writeObject (IOstream::streamFormat, IOstream::versionNumber, IOstream::compressionType) const
 Write using given format, version and compression.
void operator= (const IOobject &)
- Public Member Functions inherited from IOobject
 TypeName ("IOobject")
 Runtime type information.
 IOobject (const word &name, const fileName &instance, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true)
 Construct from name, instance, registry, io options.
 IOobject (const word &name, const fileName &instance, const fileName &local, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true)
 Construct from name, instance, local, registry, io options.
 IOobject (const fileName &path, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true)
 Construct from path, registry, io options.
Foam::autoPtr< IOobjectclone () const
 Clone.
virtual ~IOobject ()
const Timetime () const
 Return time.
const objectRegistrydb () const
 Return the local objectRegistry.
const wordheaderClassName () const
 Return name of the class name read from header.
stringnote ()
 Return non-constant access to the optional note.
const stringnote () const
 Return the optional note.
bool registerObject () const
 Register object created from this IOobject with registry if true.
readOption readOpt () const
readOptionreadOpt ()
writeOption writeOpt () const
writeOptionwriteOpt ()
const fileNamerootPath () const
const fileNamecaseName () const
const fileNameinstance () const
fileNameinstance ()
const fileNamelocal () const
fileName path () const
 Return complete path.
fileName path (const word &instance, const fileName &local="") const
 Return complete path with alternative instance and local.
fileName objectPath () const
 Return complete path + object name.
fileName filePath () const
 Return complete path + object name if the file exists.
bool readHeader (Istream &)
 Read header.
bool headerOk ()
 Read and check header info.
bool writeHeader (Ostream &) const
 Write header.
bool good () const
bool bad () const
InfoProxy< IOobjectinfo () const
 Return info proxy.
- Public Member Functions inherited from dictionary
 ClassName ("dictionary")
 dictionary ()
 Construct top-level dictionary null.
 dictionary (const fileName &name)
 Construct top-level empty dictionary with given name.
 dictionary (const fileName &name, const dictionary &parentDict, Istream &)
 Construct given the entry name, parent dictionary and Istream,.
 dictionary (Istream &)
 Construct top-level dictionary from Istream, reading entries.
 dictionary (const dictionary &parentDict, const dictionary &)
 Construct as copy given the parent dictionary.
 dictionary (const dictionary &)
 Construct top-level dictionary as copy.
 dictionary (const dictionary *)
 Construct top-level dictionary as copy from pointer to dictionary.
 dictionary (const dictionary &parentDict, const Xfer< dictionary > &)
 Construct by transferring parameter contents given parent dictionary.
 dictionary (const Xfer< dictionary > &)
 Construct top-level dictionary by transferring parameter contents.
autoPtr< dictionaryclone () const
 Construct and return clone.
 ~dictionary ()
const dictionaryparent () const
 Return the parent dictionary.
label startLineNumber () const
 Return line number of first token in dictionary.
label endLineNumber () const
 Return line number of last token in dictionary.
SHA1Digest digest () const
 Return the SHA1 digest of the dictionary contents.
bool found (const word &, bool recursive=false) const
 Search dictionary for given keyword.
const entrylookupEntryPtr (const word &, bool recursive, bool patternMatch) const
 Find and return an entry data stream pointer if present.
entrylookupEntryPtr (const word &, bool recursive, bool patternMatch)
 Find and return an entry data stream pointer for manipulation.
const entrylookupEntry (const word &, bool recursive, bool patternMatch) const
 Find and return an entry data stream if present otherwise error.
ITstreamlookup (const word &, bool recursive=false, bool patternMatch=true) const
 Find and return an entry data stream.
template<class T >
T lookupOrDefault (const word &, const T &, bool recursive=false, bool patternMatch=true) const
 Find and return a T,.
template<class T >
T lookupOrAddDefault (const word &, const T &, bool recursive=false, bool patternMatch=true)
 Find and return a T, if not found return the given.
template<class T >
bool readIfPresent (const word &, T &, bool recursive=false, bool patternMatch=true) const
 Find an entry if present, and assign to T.
bool isDict (const word &) const
 Check if entry is a sub-dictionary.
const dictionarysubDictPtr (const word &) const
 Find and return a sub-dictionary pointer if present.
const dictionarysubDict (const word &) const
 Find and return a sub-dictionary.
dictionarysubDict (const word &)
 Find and return a sub-dictionary for manipulation.
dictionary subOrEmptyDict (const word &) const
 Find and return a sub-dictionary as a copy, or.
wordList toc () const
 Return the table of contents.
List< keyTypekeys (bool patterns=false) const
 Return the list of available keys or patterns.
bool substituteKeyword (const word &keyword)
 Substitute the given keyword prepended by '$' with the.
bool add (entry *, bool mergeEntry=false)
 Add a new entry.
void add (const entry &, bool mergeEntry=false)
 Add an entry.
void add (const keyType &, const word &, bool overwrite=false)
 Add a word entry.
void add (const keyType &, const string &, bool overwrite=false)
 Add a string entry.
void add (const keyType &, const label, bool overwrite=false)
 Add a label entry.
void add (const keyType &, const scalar, bool overwrite=false)
 Add a scalar entry.
void add (const keyType &, const dictionary &, bool mergeEntry=false)
 Add a dictionary entry.
template<class T >
void add (const keyType &, const T &, bool overwrite=false)
 Add a T entry.
void set (entry *)
 Assign a new entry, overwrite any existing entry.
void set (const entry &)
 Assign a new entry, overwrite any existing entry.
void set (const keyType &, const dictionary &)
 Assign a dictionary entry, overwrite any existing entry.
template<class T >
void set (const keyType &, const T &)
 Assign a T entry, overwrite any existing entry.
bool remove (const word &)
 Remove an entry specified by keyword.
bool changeKeyword (const keyType &oldKeyword, const keyType &newKeyword, bool forceOverwrite=false)
 Change the keyword for an entry,.
bool merge (const dictionary &)
 Merge entries from the given dictionary.
void clear ()
 Clear the dictionary.
void transfer (dictionary &)
 Transfer the contents of the argument and annul the argument.
Xfer< dictionaryxfer ()
 Transfer contents to the Xfer container.
bool read (Istream &)
 Read dictionary from Istream.
void write (Ostream &, bool subDict=true) const
ITstreamoperator[] (const word &) const
 Find and return entry.
void operator= (const dictionary &)
void operator+= (const dictionary &)
 Include entries from the given dictionary.
void operator|= (const dictionary &)
 Conditionally include entries from the given dictionary.
void operator<<= (const dictionary &)
 Unconditionally include entries from the given dictionary.
- Public Member Functions inherited from dictionaryName
 dictionaryName ()
 Construct dictionaryName null.
 dictionaryName (const fileName &name)
 Construct dictionaryName as copy of the given fileName.
fileNamename ()
 Return the dictionary name.
- Public Member Functions inherited from IDLList< entry >
 IDLList ()
 Null construct.
 IDLList (const entry &a)
 Construct given initial T.
 IDLList (Istream &is, const INew &inewt)
 Construct from Istream using given Istream constructor class.
 IDLList (Istream &is)
 Construct from Istream.
 IDLList (const IDLList< entry > &idll, const CloneArg &cloneArg)
 Copy constructor with additional argument for clone.
- Public Member Functions inherited from ILList< DLListBase, entry >
 ILList ()
 Null construct.
 ILList (entry *a)
 Construct given initial T.
 ILList (Istream &)
 Construct from Istream.
 ILList (const ILList< DLListBase, entry > &)
 Construct as copy.
 ILList (const ILList< DLListBase, entry > &lst, const CloneArg &cloneArg)
 Copy constructor with additional argument for clone.
 ILList (Istream &, const INew &)
 Construct from Istream using given Istream constructor class.
 ~ILList ()
bool eraseHead ()
 Remove the head element specified from the list and delete it.
bool erase (entry *p)
 Remove the specified element from the list and delete it.
void transfer (ILList< DLListBase, entry > &)
 Transfer the contents of the argument into this List.
void operator= (const ILList< DLListBase, entry > &)
- Public Member Functions inherited from UILList< DLListBase, entry >
 UILList ()
 Null construct.
 UILList (entry *a)
 Construct given initial T.
 UILList (const UILList< DLListBase, entry > &)
 Construct as copy.
entryfirst ()
 Return the first entry.
const entryfirst () const
 Return the first entry.
entrylast ()
 Return the last entry.
const entrylast () const
 Return the last entry.
entryremoveHead ()
 Remove and return head.
entryremove (entry *p)
 Remove and return element.
entryremove (iterator &it)
 Remove and return specified by iterator.
void operator= (const UILList< DLListBase, entry > &)
bool operator== (const UILList< DLListBase, entry > &) const
 Equality operation on ULists of the same type.
bool operator!= (const UILList< DLListBase, entry > &) const
 The opposite of the equality operation. Takes linear time.
- Public Member Functions inherited from DLListBase
 DLListBase ()
 Null construct.
 DLListBase (link *)
 Construct given initial entry.
 ~DLListBase ()
label size () const
 Return number of elements in list.
bool empty () const
 Return true if the list is empty.
void insert (link *)
 Add at head of list.
void append (link *)
 Add at tail of list.
bool swapUp (link *)
 Swap this element with the one above unless it is at the top.
bool swapDown (link *)
 Swap this element with the one below unless it is at the bottom.
linkremove (link *)
 Remove and return element.
linkreplace (link *oldLink, link *newLink)
 Replace oldLink with newLink and return element.
linkreplace (iterator &oldIter, link *newLink)
 Replace oldIter with newLink and return element.
void transfer (DLListBase &)
 Transfer the contents of the argument into this List.
iterator begin ()
const iteratorend ()
const_iterator cbegin () const
const const_iteratorcend () const
const_iterator begin () const
const const_iteratorend () const

Static Public Member Functions

static autoPtr< LESModelNew (const volVectorField &U, const surfaceScalarField &phi, transportModel &lamTransportModel)
 Return a reference to the selected LES model.
- Static Public Member Functions inherited from incompressible::turbulenceModel
static autoPtr< turbulenceModelNew (const volVectorField &U, const surfaceScalarField &phi, transportModel &lamTransportModel)
 Return a reference to the selected turbulence model.

Protected Member Functions

virtual void printCoeffs ()
 Print model coefficients.

Protected Attributes

Switch printCoeffs_
dictionary coeffDict_
dimensionedScalar k0_
autoPtr< LESdeltadelta_
- Protected Attributes inherited from incompressible::turbulenceModel
const TimerunTime_
const fvMeshmesh_
const volVectorFieldU_
const surfaceScalarFieldphi_
transportModeltransportModel_

Constructor & Destructor Documentation

LESModel ( const word type,
const volVectorField U,
const surfaceScalarField phi,
transportModel lamTransportModel 
)

Construct from components.

Definition at line 56 of file LESModel.C.

References readIfPresent().

virtual ~LESModel ( )
inlinevirtual

Destructor.

Definition at line 152 of file LESModel.H.


Member Function Documentation

void printCoeffs ( )
protectedvirtual

Print model coefficients.

Definition at line 44 of file LESModel.C.

References Foam::endl(), Foam::Info, and Foam::type().

TypeName ( "LESModel"  )

Runtime type information.

declareRunTimeSelectionTable ( autoPtr  ,
LESModel  ,
dictionary  ,
(const volVectorField &U, const surfaceScalarField &phi, transportModel &lamTransportModel)  ,
(U, phi, lamTransportModel)   
)
autoPtr< LESModel > New ( const volVectorField U,
const surfaceScalarField phi,
transportModel lamTransportModel 
)
static
const dictionary& coeffDict ( ) const
inline
const dimensionedScalar& k0 ( ) const
inline

Return the value of k0 which k is not allowed to be less than.

Definition at line 173 of file LESModel.H.

References incompressible::LESModel::k0_.

Referenced by LRRDiffStress::correct(), DeardorffDiffStress::correct(), oneEqEddy::correct(), dynOneEqEddy::correct(), locDynOneEqEddy::correct(), and kOmegaSSTSAS::correct().

dimensionedScalar& k0 ( )
inline

Allow k0 to be changed.

Definition at line 179 of file LESModel.H.

References incompressible::LESModel::k0_.

virtual tmp<volScalarField> epsilon ( ) const
pure virtual

Return the SGS turbulent dissipation.

Implements incompressible::turbulenceModel.

Implemented in kOmegaSSTSAS, SpalartAllmaras, mixedSmagorinsky, GenSGSStress, scaleSimilarity, GenEddyVisc, and laminar.

virtual tmp<volScalarField> nuSgs ( ) const
pure virtual
virtual tmp<volSymmTensorField> B ( ) const
pure virtual

Return the sub-grid stress tensor.

Implemented in kOmegaSSTSAS, SpalartAllmaras, mixedSmagorinsky, GenSGSStress, GenEddyVisc, Smagorinsky2, scaleSimilarity, and laminar.

Referenced by incompressible::LESModel::R().

virtual tmp<volSymmTensorField> devBeff ( ) const
pure virtual

Return the deviatoric part of the effective sub-grid.

turbulence stress tensor including the laminar stress

Implemented in kOmegaSSTSAS, SpalartAllmaras, mixedSmagorinsky, GenSGSStress, GenEddyVisc, scaleSimilarity, and laminar.

Referenced by incompressible::LESModel::devReff().

virtual tmp<fvVectorMatrix> divDevBeff ( volVectorField U) const
pure virtual

Returns div(dev(Beff)).

This is the additional term due to the filtering of the NSE.

Implemented in kOmegaSSTSAS, SpalartAllmaras, mixedSmagorinsky, GenSGSStress, GenEddyVisc, scaleSimilarity, Smagorinsky2, and laminar.

Referenced by incompressible::LESModel::divDevReff().

virtual tmp<volScalarField> nut ( ) const
inlinevirtual

Return the turbulence viscosity.

Implements incompressible::turbulenceModel.

Definition at line 218 of file LESModel.H.

References incompressible::LESModel::nuSgs().

virtual tmp<volSymmTensorField> R ( ) const
inlinevirtual

Return the Reynolds stress tensor.

Implements incompressible::turbulenceModel.

Definition at line 224 of file LESModel.H.

References incompressible::LESModel::B().

virtual tmp<volSymmTensorField> devReff ( ) const
inlinevirtual

Return the effective stress tensor including the laminar stress.

Implements incompressible::turbulenceModel.

Definition at line 230 of file LESModel.H.

References incompressible::LESModel::devBeff().

virtual tmp<fvVectorMatrix> divDevReff ( volVectorField U) const
inlinevirtual

Return the source term for the momentum equation.

Definition at line 236 of file LESModel.H.

References incompressible::LESModel::divDevBeff().

void correct ( )
virtual
void correct ( const tmp< volTensorField > &  gradU)
virtual

Member Data Documentation

Switch printCoeffs_
protected

Definition at line 81 of file LESModel.H.

dictionary coeffDict_
protected

Definition at line 82 of file LESModel.H.

Referenced by incompressible::LESModel::coeffDict().

dimensionedScalar k0_
protected

Definition at line 84 of file LESModel.H.

Referenced by incompressible::LESModel::k0().

autoPtr<LESdelta> delta_
protected

Definition at line 86 of file LESModel.H.

Referenced by incompressible::LESModel::delta().


The documentation for this class was generated from the following files: