option Class Reference

Finite volume options abstract base class. Provides a base set of controls, e.g.: More...

Inheritance diagram for option:
Collaboration diagram for option:

Classes

class  iNew
 Return pointer to new fvOption object created. More...
 

Public Member Functions

 TypeName ("option")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, option, dictionary,(const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh),(name, modelType, dict, mesh))
 
 option (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh)
 Construct from components. More...
 
autoPtr< optionclone () const
 Return clone. More...
 
virtual ~option ()
 Destructor. More...
 
const wordname () const
 Return const access to the source name. More...
 
const fvMeshmesh () const
 Return const access to the mesh database. More...
 
const dictionarycoeffs () const
 Return dictionary. More...
 
bool active () const
 Return const access to the source active flag. More...
 
void setApplied (const label fieldi)
 Set the applied flag to true for field index fieldi. More...
 
Switchactive ()
 Return access to the source active flag. More...
 
virtual bool isActive ()
 Is the source active? More...
 
virtual label applyToField (const word &fieldName) const
 Return index of field name if found in fieldNames list. More...
 
virtual void checkApplied () const
 Check that the source has been applied. More...
 
virtual void addSup (fvMatrix< scalar > &eqn, const label fieldi)
 
virtual void addSup (fvMatrix< vector > &eqn, const label fieldi)
 
virtual void addSup (fvMatrix< symmTensor > &eqn, const label fieldi)
 
virtual void addSup (fvMatrix< sphericalTensor > &eqn, const label fieldi)
 
virtual void addSup (fvMatrix< tensor > &eqn, const label fieldi)
 
virtual void addSup (const volScalarField &rho, fvMatrix< scalar > &eqn, const label fieldi)
 
virtual void addSup (const volScalarField &rho, fvMatrix< vector > &eqn, const label fieldi)
 
virtual void addSup (const volScalarField &rho, fvMatrix< symmTensor > &eqn, const label fieldi)
 
virtual void addSup (const volScalarField &rho, fvMatrix< sphericalTensor > &eqn, const label fieldi)
 
virtual void addSup (const volScalarField &rho, fvMatrix< tensor > &eqn, const label fieldi)
 
virtual void addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< scalar > &eqn, const label fieldi)
 
virtual void addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< vector > &eqn, const label fieldi)
 
virtual void addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< symmTensor > &eqn, const label fieldi)
 
virtual void addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< sphericalTensor > &eqn, const label fieldi)
 
virtual void addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< tensor > &eqn, const label fieldi)
 
virtual void constrain (fvMatrix< scalar > &eqn, const label fieldi)
 
virtual void constrain (fvMatrix< vector > &eqn, const label fieldi)
 
virtual void constrain (fvMatrix< sphericalTensor > &eqn, const label fieldi)
 
virtual void constrain (fvMatrix< symmTensor > &eqn, const label fieldi)
 
virtual void constrain (fvMatrix< tensor > &eqn, const label fieldi)
 
virtual void correct (volScalarField &field)
 
virtual void correct (volVectorField &field)
 
virtual void correct (volSphericalTensorField &field)
 
virtual void correct (volSymmTensorField &field)
 
virtual void correct (volTensorField &field)
 
virtual void writeHeader (Ostream &) const
 Write the source header information. More...
 
virtual void writeFooter (Ostream &) const
 Write the source footer information. More...
 
virtual void writeData (Ostream &) const
 Write the source properties. More...
 
virtual bool read (const dictionary &dict)
 Read source dictionary. More...
 

Static Public Member Functions

static autoPtr< optionNew (const word &name, const dictionary &dict, const fvMesh &mesh)
 Return a reference to the selected fvOption model. More...
 

Protected Attributes

const word name_
 Source name. More...
 
const word modelType_
 Model type. More...
 
const fvMeshmesh_
 Reference to the mesh database. More...
 
dictionary dict_
 Top level source dictionary. More...
 
dictionary coeffs_
 Dictionary containing source coefficients. More...
 
Switch active_
 Source active flag. More...
 
wordList fieldNames_
 Field names to apply source to - populated by derived models. More...
 
List< bool > applied_
 Applied flag list - corresponds to each fieldNames_ entry. More...
 

Detailed Description

Finite volume options abstract base class. Provides a base set of controls, e.g.:

    type            scalarExplicitSource    // source type
    active          on;                     // on/off switch
Note
On evaluation, source/sink options are to be added to the equation R.H.S.
Source files

Definition at line 66 of file fvOption.H.

Constructor & Destructor Documentation

◆ option()

option ( const word name,
const word modelType,
const dictionary dict,
const fvMesh mesh 
)

Construct from components.

Definition at line 44 of file fvOption.C.

References Foam::decrIndent(), Foam::endl(), Foam::incrIndent(), Foam::indent(), Foam::Info, and option::New().

Here is the call graph for this function:

◆ ~option()

~option ( )
virtual

Destructor.

Definition at line 101 of file fvOption.C.

Referenced by option::iNew::operator()().

Here is the caller graph for this function:

Member Function Documentation

◆ TypeName()

TypeName ( "option"  )

Runtime type information.

◆ declareRunTimeSelectionTable()

declareRunTimeSelectionTable ( autoPtr  ,
option  ,
dictionary  ,
(const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh ,
(name, modelType, dict, mesh  
)

◆ clone()

autoPtr<option> clone ( ) const
inline

Return clone.

Definition at line 132 of file fvOption.H.

References option::iNew::iNew(), and NotImplemented.

Here is the call graph for this function:

◆ New()

Foam::autoPtr< Foam::fv::option > New ( const word name,
const dictionary dict,
const fvMesh mesh 
)
static

Return a reference to the selected fvOption model.

Definition at line 67 of file fvOption.C.

References Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, HashTable< T, Key, Hash >::find(), Foam::indent(), Foam::Info, dictionary::lookup(), mesh, Foam::name(), Foam::nl, and fvMesh::time().

Referenced by option::iNew::operator()(), option::option(), and optionList::reset().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ name()

const Foam::word & name ( ) const
inline

Return const access to the source name.

Definition at line 28 of file fvOptionI.H.

References option::name_.

Referenced by optionList::constrain(), optionList::correct(), optionList::operator()(), option::iNew::operator()(), optionList::readOptions(), and optionList::source().

Here is the caller graph for this function:

◆ mesh()

const Foam::fvMesh & mesh ( ) const
inline

Return const access to the mesh database.

Definition at line 34 of file fvOptionI.H.

References option::mesh_.

Referenced by option::iNew::operator()().

Here is the caller graph for this function:

◆ coeffs()

const Foam::dictionary & coeffs ( ) const
inline

Return dictionary.

Definition at line 40 of file fvOptionI.H.

References option::coeffs_.

Referenced by option::iNew::operator()().

Here is the caller graph for this function:

◆ active() [1/2]

bool active ( ) const
inline

Return const access to the source active flag.

Definition at line 46 of file fvOptionI.H.

References option::active_.

Referenced by option::iNew::operator()().

Here is the caller graph for this function:

◆ setApplied()

void setApplied ( const label  fieldi)
inline

Set the applied flag to true for field index fieldi.

Definition at line 52 of file fvOptionI.H.

References option::applied_.

Referenced by optionList::constrain(), optionList::correct(), optionList::operator()(), option::iNew::operator()(), and optionList::source().

Here is the caller graph for this function:

◆ active() [2/2]

Foam::Switch & active ( )
inline

Return access to the source active flag.

Definition at line 58 of file fvOptionI.H.

References option::active_.

◆ isActive()

bool isActive ( )
virtual

Is the source active?

Reimplemented in cellSetOption.

Definition at line 107 of file fvOption.C.

Referenced by optionList::constrain(), optionList::correct(), cellSetOption::isActive(), optionList::operator()(), option::iNew::operator()(), and optionList::source().

Here is the caller graph for this function:

◆ applyToField()

Foam::label applyToField ( const word fieldName) const
virtual

Return index of field name if found in fieldNames list.

Definition at line 113 of file fvOption.C.

References Foam::findIndex().

Referenced by optionList::appliesToField(), optionList::constrain(), optionList::correct(), optionList::operator()(), option::iNew::operator()(), and optionList::source().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ checkApplied()

void checkApplied ( ) const
virtual

Check that the source has been applied.

Definition at line 119 of file fvOption.C.

References option::addSup(), Foam::endl(), forAll, and WarningInFunction.

Referenced by optionList::checkApplied(), and option::iNew::operator()().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ addSup() [1/15]

void addSup ( fvMatrix< scalar > &  eqn,
const label  fieldi 
)
virtual

◆ addSup() [2/15]

◆ addSup() [3/15]

void addSup ( fvMatrix< symmTensor > &  eqn,
const label  fieldi 
)
virtual

Reimplemented in volumeFractionSource.

Definition at line 158 of file fvOption.C.

References option::addSup().

Here is the call graph for this function:

◆ addSup() [4/15]

void addSup ( fvMatrix< sphericalTensor > &  eqn,
const label  fieldi 
)
virtual

Reimplemented in volumeFractionSource.

Definition at line 150 of file fvOption.C.

References option::addSup().

Here is the call graph for this function:

◆ addSup() [5/15]

void addSup ( fvMatrix< tensor > &  eqn,
const label  fieldi 
)
virtual

Reimplemented in volumeFractionSource.

Definition at line 166 of file fvOption.C.

References option::addSup().

Here is the call graph for this function:

◆ addSup() [6/15]

void addSup ( const volScalarField rho,
fvMatrix< scalar > &  eqn,
const label  fieldi 
)
virtual

◆ addSup() [7/15]

◆ addSup() [8/15]

void addSup ( const volScalarField rho,
fvMatrix< symmTensor > &  eqn,
const label  fieldi 
)
virtual

Reimplemented in volumeFractionSource.

Definition at line 201 of file fvOption.C.

References option::addSup().

Here is the call graph for this function:

◆ addSup() [9/15]

void addSup ( const volScalarField rho,
fvMatrix< sphericalTensor > &  eqn,
const label  fieldi 
)
virtual

Reimplemented in volumeFractionSource.

Definition at line 192 of file fvOption.C.

References option::addSup().

Here is the call graph for this function:

◆ addSup() [10/15]

void addSup ( const volScalarField rho,
fvMatrix< tensor > &  eqn,
const label  fieldi 
)
virtual

Reimplemented in volumeFractionSource.

Definition at line 210 of file fvOption.C.

References option::addSup().

Here is the call graph for this function:

◆ addSup() [11/15]

void addSup ( const volScalarField alpha,
const volScalarField rho,
fvMatrix< scalar > &  eqn,
const label  fieldi 
)
virtual

Reimplemented in volumeFractionSource, and solidEqulibriumEnergySource.

Definition at line 219 of file fvOption.C.

References option::addSup().

Here is the call graph for this function:

◆ addSup() [12/15]

void addSup ( const volScalarField alpha,
const volScalarField rho,
fvMatrix< vector > &  eqn,
const label  fieldi 
)
virtual

Reimplemented in volumeFractionSource, verticalDamping, isotropicDamping, explicitPorositySource, and accelerationSource.

Definition at line 231 of file fvOption.C.

References option::addSup().

Here is the call graph for this function:

◆ addSup() [13/15]

void addSup ( const volScalarField alpha,
const volScalarField rho,
fvMatrix< symmTensor > &  eqn,
const label  fieldi 
)
virtual

Reimplemented in volumeFractionSource.

Definition at line 255 of file fvOption.C.

References option::addSup().

Here is the call graph for this function:

◆ addSup() [14/15]

void addSup ( const volScalarField alpha,
const volScalarField rho,
fvMatrix< sphericalTensor > &  eqn,
const label  fieldi 
)
virtual

Reimplemented in volumeFractionSource.

Definition at line 243 of file fvOption.C.

References option::addSup().

Here is the call graph for this function:

◆ addSup() [15/15]

void addSup ( const volScalarField alpha,
const volScalarField rho,
fvMatrix< tensor > &  eqn,
const label  fieldi 
)
virtual

Reimplemented in volumeFractionSource.

Definition at line 267 of file fvOption.C.

◆ constrain() [1/5]

void constrain ( fvMatrix< scalar > &  eqn,
const label  fieldi 
)
virtual

Reimplemented in fixedTemperatureConstraint.

Definition at line 278 of file fvOption.C.

Referenced by optionList::constrain(), option::constrain(), and option::iNew::operator()().

Here is the caller graph for this function:

◆ constrain() [2/5]

void constrain ( fvMatrix< vector > &  eqn,
const label  fieldi 
)
virtual

Reimplemented in meanVelocityForce.

Definition at line 282 of file fvOption.C.

References option::constrain().

Here is the call graph for this function:

◆ constrain() [3/5]

void constrain ( fvMatrix< sphericalTensor > &  eqn,
const label  fieldi 
)
virtual

Definition at line 287 of file fvOption.C.

References option::constrain().

Here is the call graph for this function:

◆ constrain() [4/5]

void constrain ( fvMatrix< symmTensor > &  eqn,
const label  fieldi 
)
virtual

Definition at line 295 of file fvOption.C.

◆ constrain() [5/5]

void constrain ( fvMatrix< tensor > &  eqn,
const label  fieldi 
)
virtual

Definition at line 302 of file fvOption.C.

◆ correct() [1/5]

void correct ( volScalarField field)
virtual

Reimplemented in limitTemperature.

Definition at line 306 of file fvOption.C.

Referenced by optionList::correct(), and option::iNew::operator()().

Here is the caller graph for this function:

◆ correct() [2/5]

void correct ( volVectorField field)
virtual

Reimplemented in meanVelocityForce, and limitVelocity.

Definition at line 310 of file fvOption.C.

◆ correct() [3/5]

void correct ( volSphericalTensorField field)
virtual

Definition at line 314 of file fvOption.C.

◆ correct() [4/5]

void correct ( volSymmTensorField field)
virtual

Definition at line 318 of file fvOption.C.

◆ correct() [5/5]

void correct ( volTensorField field)
virtual

Definition at line 322 of file fvOption.C.

◆ writeHeader()

void writeHeader ( Ostream os) const
virtual

Write the source header information.

Definition at line 30 of file fvOptionIO.C.

References token::BEGIN_BLOCK, Foam::incrIndent(), Foam::indent(), option::name_, and Foam::nl.

Referenced by option::iNew::operator()().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ writeFooter()

void writeFooter ( Ostream os) const
virtual

Write the source footer information.

Definition at line 37 of file fvOptionIO.C.

References Foam::decrIndent(), token::END_BLOCK, Foam::endl(), and Foam::indent().

Referenced by option::iNew::operator()().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ writeData()

void writeData ( Ostream os) const
virtual

Write the source properties.

Definition at line 43 of file fvOptionIO.C.

References option::active_, option::coeffs_, Foam::indent(), Foam::nl, Foam::type(), dictionary::write(), and Foam::writeEntry().

Referenced by option::iNew::operator()().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ read()

Member Data Documentation

◆ name_

const word name_
protected

Source name.

Definition at line 73 of file fvOption.H.

Referenced by option::name(), and option::writeHeader().

◆ modelType_

const word modelType_
protected

Model type.

Definition at line 76 of file fvOption.H.

Referenced by option::read().

◆ mesh_

const fvMesh& mesh_
protected

Reference to the mesh database.

Definition at line 79 of file fvOption.H.

Referenced by cellSetOption::inTimeLimits(), and option::mesh().

◆ dict_

dictionary dict_
protected

Top level source dictionary.

Definition at line 82 of file fvOption.H.

◆ coeffs_

dictionary coeffs_
protected

Dictionary containing source coefficients.

Definition at line 85 of file fvOption.H.

Referenced by option::coeffs(), cellSetOption::read(), solidificationMeltingSource::read(), option::read(), and option::writeData().

◆ active_

Switch active_
protected

Source active flag.

Definition at line 88 of file fvOption.H.

Referenced by option::active(), option::read(), and option::writeData().

◆ fieldNames_

wordList fieldNames_
protected

Field names to apply source to - populated by derived models.

Definition at line 91 of file fvOption.H.

◆ applied_

List<bool> applied_
protected

Applied flag list - corresponds to each fieldNames_ entry.

Definition at line 94 of file fvOption.H.

Referenced by option::setApplied().


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