FreeFOAM The Cross-Platform CFD Toolkit
fvDOM Class Reference

Finite Volume Discrete Ordinates Method. Solves the RTE equation for n directions in a participating media, not including scatter. More...

#include <radiation/fvDOM.H>


Detailed Description

Finite Volume Discrete Ordinates Method. Solves the RTE equation for n directions in a participating media, not including scatter.

Available absorption models: greyMeanAbsoprtionEmission wideBandAbsorptionEmission

i.e. dictionary fvDOMCoeffs { nPhi1; // azimuthal angles in PI/2 on X-Y.(from Y to X) nTheta 2; // polar angles in PI (from Z to X-Y plane) convergence 1e-4; // convergence criteria for radiation iteration }

solverFreq 1; // Number of flow iterations per radiation iteration

The total number of solid angles is 4*nPhi*nTheta.

In 1D the direction of the rays is X (nPhi and nTheta are ignored) In 2D the direction of the rays is on X-Y plane (only nPhi is considered) In 3D (nPhi and nTheta are considered)

Source files

Definition at line 74 of file fvDOM.H.

+ Inheritance diagram for fvDOM:
+ Collaboration diagram for fvDOM:

List of all members.

Public Member Functions

 TypeName ("fvDOM")
 Runtime type information.
 fvDOM (const volScalarField &T)
 Construct from components.
virtual ~fvDOM ()
 Destructor.
void calculate ()
 Solve radiation equation(s)
bool read ()
 Read radiation properties dictionary.
void updateG ()
 Update G and calculate total heat flux on boundary.
void setRayIdLambdaId (const word &name, label &rayId, label &lambdaId) const
 Set the rayId and lambdaId from by decomposing an intensity.
virtual tmp< volScalarFieldRp () const
 Source term component (for power of T^4)
virtual tmp< DimensionedField
< scalar, volMesh > > 
Ru () const
 Source term component (constant)
const radiativeIntensityRayIRay (const label rayI) const
 Ray intensity for rayI.
const volScalarFieldIRayLambda (const label rayI, const label lambdaI) const
 Ray intensity for rayI and lambda bandwidth.
label nTheta () const
 Number of angles in theta.
label nPhi () const
 Number of angles in phi.
label nRay () const
 Number of rays.
label nLambda () const
 Number of wavelengths.
const volScalarFielda () const
 Const access to total absorption coefficient.
const volScalarFieldaLambda (const label lambdaI) const
 Const access to wavelength total absorption coefficient.
const volScalarFieldG () const
 Const access to incident radiation field.
const volScalarFieldQr () const
 Const access to total radiative heat flux field.
const volScalarFieldQin () const
 Const access to incident radiative heat flux field.
const volScalarFieldQem () const
 Const access to emitted radiative heat flux field.
const blackBodyEmissionblackBody () const
 Const access to black body.
- Public Member Functions inherited from radiationModel
 TypeName ("radiationModel")
 Runtime type information.
 declareRunTimeSelectionTable (autoPtr, radiationModel, dictionary,(const volScalarField &T),(T))
 radiationModel (const volScalarField &T)
 Null constructor.
 radiationModel (const word &type, const volScalarField &T)
 Construct from components.
virtual ~radiationModel ()
 Destructor.
virtual void correct ()
 Main update/correction routine.
virtual tmp< fvScalarMatrixSh (basicThermo &thermo) const
 Enthalpy source term.
virtual tmp< fvScalarMatrixShs (basicThermo &thermo) const
 Sensible enthalpy source term.
- 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

Additional Inherited Members

- Static Public Member Functions inherited from radiationModel
static autoPtr< radiationModelNew (const volScalarField &T)
 Return a reference to the selected radiation model.
- Protected Attributes inherited from radiationModel
const fvMeshmesh_
 Reference to the mesh database.
const Timetime_
 Reference to the time database.
const volScalarFieldT_
 Reference to the temperature field.
Switch radiation_
 Model specific dictionary input parameters.
dictionary coeffs_
 Radiation model dictionary.
label solverFreq_
 Radiation solver frequency - number flow solver iterations per.
autoPtr< absorptionEmissionModelabsorptionEmission_
 Absorption/emission model.
autoPtr< scatterModelscatter_
 Scatter model.

Constructor & Destructor Documentation

~fvDOM ( )
virtual

Destructor.

Definition at line 292 of file fvDOM.C.


Member Function Documentation

TypeName ( "fvDOM"  )

Runtime type information.

void calculate ( )
virtual

Solve radiation equation(s)

Implements radiationModel.

Definition at line 316 of file fvDOM.C.

References Foam::endl(), forAll, Foam::Info, Foam::max(), and maxResidual.

bool read ( )
virtual

Read radiation properties dictionary.

Implements radiationModel.

Definition at line 298 of file fvDOM.C.

References radiationModel::read().

void updateG ( )

Update G and calculate total heat flux on boundary.

Definition at line 387 of file fvDOM.C.

References Foam::dimMass, Foam::dimTime, forAll, and Foam::pow3().

void setRayIdLambdaId ( const word name,
label &  rayId,
label &  lambdaId 
) const

Set the rayId and lambdaId from by decomposing an intensity.

field name

Definition at line 406 of file fvDOM.C.

Foam::tmp< Foam::volScalarField > Rp ( ) const
virtual

Source term component (for power of T^4)

Implements radiationModel.

Definition at line 342 of file fvDOM.C.

References IOobject::NO_READ, IOobject::NO_WRITE, and Foam::radiation::sigmaSB.

Foam::tmp< Foam::DimensionedField< Foam::scalar, Foam::volMesh > > Ru ( ) const
virtual

Source term component (constant)

Implements radiationModel.

Definition at line 364 of file fvDOM.C.

References E().

const Foam::radiation::radiativeIntensityRay & IRay ( const label  rayI) const
inline

Ray intensity for rayI.

Definition at line 27 of file fvDOMI.H.

const Foam::volScalarField & IRayLambda ( const label  rayI,
const label  lambdaI 
) const
inline

Ray intensity for rayI and lambda bandwidth.

Definition at line 35 of file fvDOMI.H.

Foam::label nTheta ( ) const
inline

Number of angles in theta.

Definition at line 44 of file fvDOMI.H.

Foam::label nPhi ( ) const
inline

Number of angles in phi.

Definition at line 50 of file fvDOMI.H.

Foam::label nRay ( ) const
inline

Number of rays.

Definition at line 56 of file fvDOMI.H.

Foam::label nLambda ( ) const
inline

Number of wavelengths.

Definition at line 62 of file fvDOMI.H.

const Foam::volScalarField & a ( ) const
inline

Const access to total absorption coefficient.

Definition at line 68 of file fvDOMI.H.

const Foam::volScalarField & aLambda ( const label  lambdaI) const
inline

Const access to wavelength total absorption coefficient.

Definition at line 75 of file fvDOMI.H.

const Foam::volScalarField & G ( ) const
inline

Const access to incident radiation field.

Definition at line 83 of file fvDOMI.H.

const Foam::volScalarField & Qr ( ) const
inline

Const access to total radiative heat flux field.

Definition at line 89 of file fvDOMI.H.

const Foam::volScalarField & Qin ( ) const
inline

Const access to incident radiative heat flux field.

Definition at line 95 of file fvDOMI.H.

const Foam::volScalarField & Qem ( ) const
inline

Const access to emitted radiative heat flux field.

Definition at line 101 of file fvDOMI.H.

const Foam::radiation::blackBodyEmission & blackBody ( ) const
inline

Const access to black body.

Definition at line 108 of file fvDOMI.H.


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