cellSetOption Class Reference

Intermediate abstract class for handling cell-set options for the derived fvOptions. More...

Inheritance diagram for cellSetOption:
[legend]
Collaboration diagram for cellSetOption:
[legend]

Public Types

enum  selectionModeType { smAll, smCellSet, smCellZone, smPoints }
 Enumeration for selection mode types. More...
 

Public Member Functions

 TypeName ("cellSetOption")
 Runtime type information. More...
 
 cellSetOption (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh)
 Construct from components. More...
 
virtual ~cellSetOption ()=default
 Destructor. More...
 
scalar timeStart () const noexcept
 Return const access to the time start. More...
 
scalar duration () const noexcept
 Return const access to the duration. More...
 
bool inTimeLimits (const scalar timeValue) const
 True if within time limits. More...
 
selectionModeType selectionMode () const noexcept
 Return the cell selection mode. More...
 
bool useSubMesh () const noexcept
 True if sub-selection should be used. More...
 
const wordcellSetName () const noexcept
 
scalar V () const noexcept
 Return const access to the total cell volume. More...
 
const labelListcells () const noexcept
 Return const access to the cell selection. More...
 
scalar timeStart (scalar val) noexcept
 Adjust the time start, return the old value. More...
 
scalar duration (scalar val) noexcept
 Adjust the duration, return the old value. More...
 
virtual bool isActive ()
 Is the source active? More...
 
virtual bool read (const dictionary &dict)
 Read source dictionary. More...
 
- Public Member Functions inherited from option
 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 ()=default
 Destructor. More...
 
const wordname () const noexcept
 Return const access to the source name. More...
 
const fvMeshmesh () const noexcept
 Return const access to the mesh database. More...
 
const dictionarycoeffs () const noexcept
 Return dictionary. More...
 
bool active () const noexcept
 True if source is active. More...
 
void setApplied (const label fieldi)
 Set the applied flag to true for field index fieldi. More...
 
bool active (const bool on) noexcept
 Change source active flag, return previous value. 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 postProcessSens (scalarField &sensField, const word &fieldName=word::null, const word &designVariablesName=word::null)
 
virtual void postProcessSens (vectorField &sensField, const word &fieldName=word::null, const word &designVariablesName=word::null)
 
virtual void postProcessSens (tensorField &sensField, const word &fieldName=word::null, const word &designVariablesName=word::null)
 
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...
 

Static Public Attributes

static const Enum< selectionModeTypeselectionModeTypeNames_
 List of selection mode type names. More...
 

Protected Member Functions

void setSelection (const dictionary &dict)
 Set cell selection name or points selection from dictionary input. More...
 
void setCellSelection ()
 Set the cell selection based on user input selection mode. More...
 
void setVol ()
 Recalculate the volume. More...
 
- Protected Member Functions inherited from option
void resetApplied ()
 Resize/reset applied flag list for all fieldNames_ entries. More...
 

Protected Attributes

scalar timeStart_
 Start time of fvOption. More...
 
scalar duration_
 Duration of fvOption execution starting from timeStart. More...
 
selectionModeType selectionMode_
 Cell selection mode. More...
 
word cellSetName_
 Name of set/zone for "cellSet" and "cellZone" selectionMode. More...
 
List< pointpoints_
 List of points for "points" selectionMode. More...
 
labelList cells_
 Set of cells to apply source to. More...
 
scalar V_
 Sum of cell volumes. More...
 
- Protected Attributes inherited from option
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...
 
wordList fieldNames_
 Field names to apply source to - populated by derived models. More...
 
List< boolapplied_
 Applied flag list - corresponds to each fieldNames_ entry. More...
 
bool active_
 Source active flag. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from option
static autoPtr< optionNew (const word &name, const dictionary &dict, const fvMesh &mesh)
 Return a reference to the selected fvOption model. More...
 
- Public Attributes inherited from option
bool log
 Switch write log to Info. More...
 

Detailed Description

Intermediate abstract class for handling cell-set options for the derived fvOptions.

Usage
Minimal example by using constant/fvOptions:
<userDefinedName1>
{
    // Mandatory/Optional (inherited) entries
    ...

    // Mandatory entries (unmodifiable)
    selectionMode     all;

    // Optional entries (runtime modifiable)
    timeStart         1.0;

    // Conditional mandatory entries (runtime modifiable)

        // when timeStart entry is present
        duration          1.4;

        // when selectionMode=cellSet
        cellSet           <cellSetName>;

        // when selectionMode=cellZone
        cellZone          <cellZoneName>;

        // when selectionMode=points
        points            (<point1> <point2> ... <pointN>);

    // Mandatory/Optional (derived) entries
    ...
}

where the entries mean:

Property Description Type Reqd Dflt
selectionMode Mode of cell selection - see below word yes -
timeStart Start time of fvOption scalar no -1
duration Duration of fvOption execution starting from timeStart scalar cndtnl 0
cellSet Name of operand cellSet word cndtnl -
cellZone Name of operand cellZone word cndtnl -
points Set of points in global coordinate system vectorList cndtnl -

Options for the selectionMode entry:

      all       | Use all cells in the computational domain
      cellZone  | Use a given cellZone
      cellSet   | Use a given cellSet
      points    | Use cells containing a given set of points

The inherited entries are elaborated in:

Note
  • Source/sink options are to be added to the right-hand side of equations.
Source files

Definition at line 163 of file cellSetOption.H.

Member Enumeration Documentation

◆ selectionModeType

Enumeration for selection mode types.

Enumerator
smAll 
smCellSet 
smCellZone 
smPoints 

Definition at line 172 of file cellSetOption.H.

Constructor & Destructor Documentation

◆ cellSetOption()

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

Construct from components.

Definition at line 200 of file cellSetOption.C.

References Foam::decrIndent(), dict, Foam::incrIndent(), Foam::Info, and Foam::read().

Here is the call graph for this function:

◆ ~cellSetOption()

virtual ~cellSetOption ( )
virtualdefault

Destructor.

Member Function Documentation

◆ setSelection()

void setSelection ( const dictionary dict)
protected

Set cell selection name or points selection from dictionary input.

Definition at line 58 of file cellSetOption.C.

References cellSetOption::cellSetName_, dict, Foam::exit(), Foam::FatalError, FatalErrorInFunction, cellSetOption::points_, cellSetOption::selectionMode_, cellSetOption::selectionModeTypeNames_, cellSetOption::smAll, cellSetOption::smCellSet, cellSetOption::smCellZone, and cellSetOption::smPoints.

Here is the call graph for this function:

◆ setCellSelection()

void setCellSelection ( )
protected

Set the cell selection based on user input selection mode.

Definition at line 121 of file cellSetOption.C.

References Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::identity(), Foam::indent(), Foam::Info, HashSet< Key, Hash >::insert(), Foam::returnReduce(), WarningInFunction, and zoneID.

Here is the call graph for this function:

◆ setVol()

void setVol ( )
protected

Recalculate the volume.

Definition at line 94 of file cellSetOption.C.

References IOstream::defaultPrecision(), Foam::endl(), Foam::indent(), Foam::Info, Foam::reduce(), Foam::returnReduce(), and Time::timeName().

Here is the call graph for this function:

◆ TypeName()

TypeName ( "cellSetOption"  )

Runtime type information.

◆ timeStart() [1/2]

Foam::scalar timeStart ( ) const
inlinenoexcept

Return const access to the time start.

Definition at line 31 of file cellSetOptionI.H.

References cellSetOption::timeStart_.

◆ duration() [1/2]

Foam::scalar duration ( ) const
inlinenoexcept

Return const access to the duration.

Definition at line 37 of file cellSetOptionI.H.

◆ inTimeLimits()

bool inTimeLimits ( const scalar  timeValue) const
inline

True if within time limits.

Definition at line 43 of file cellSetOptionI.H.

◆ selectionMode()

Foam::fv::cellSetOption::selectionModeType selectionMode ( ) const
inlinenoexcept

Return the cell selection mode.

Definition at line 58 of file cellSetOptionI.H.

◆ useSubMesh()

bool useSubMesh ( ) const
inlinenoexcept

True if sub-selection should be used.

Definition at line 64 of file cellSetOptionI.H.

Referenced by limitVelocity::correct(), and limitTemperature::correct().

Here is the caller graph for this function:

◆ cellSetName()

const Foam::word & cellSetName ( ) const
inlinenoexcept

Return const access to the name of cell set/zone for "cellSet" / "cellZone" selection modes

Definition at line 70 of file cellSetOptionI.H.

◆ V()

Foam::scalar V ( ) const
inlinenoexcept

Return const access to the total cell volume.

Definition at line 76 of file cellSetOptionI.H.

◆ cells()

const Foam::labelList & cells ( ) const
inlinenoexcept

Return const access to the cell selection.

Definition at line 82 of file cellSetOptionI.H.

◆ timeStart() [2/2]

Foam::scalar timeStart ( scalar  val)
inlinenoexcept

Adjust the time start, return the old value.

Definition at line 88 of file cellSetOptionI.H.

◆ duration() [2/2]

Foam::scalar duration ( scalar  val)
inlinenoexcept

Adjust the duration, return the old value.

Definition at line 96 of file cellSetOptionI.H.

◆ isActive()

bool isActive ( )
virtual

Is the source active?

Reimplemented from option.

Definition at line 225 of file cellSetOption.C.

References option::isActive().

Here is the call graph for this function:

◆ read()

Member Data Documentation

◆ selectionModeTypeNames_

const Foam::Enum< Foam::fv::cellSetOption::selectionModeType > selectionModeTypeNames_
static

List of selection mode type names.

Definition at line 181 of file cellSetOption.H.

Referenced by cellSetOption::setSelection().

◆ timeStart_

scalar timeStart_
protected

Start time of fvOption.

Definition at line 189 of file cellSetOption.H.

Referenced by cellSetOption::timeStart().

◆ duration_

scalar duration_
protected

Duration of fvOption execution starting from timeStart.

Definition at line 192 of file cellSetOption.H.

◆ selectionMode_

selectionModeType selectionMode_
protected

Cell selection mode.

Definition at line 195 of file cellSetOption.H.

Referenced by cellSetOption::setSelection().

◆ cellSetName_

word cellSetName_
protected

Name of set/zone for "cellSet" and "cellZone" selectionMode.

Definition at line 198 of file cellSetOption.H.

Referenced by cellSetOption::setSelection().

◆ points_

List<point> points_
protected

List of points for "points" selectionMode.

Definition at line 201 of file cellSetOption.H.

Referenced by cellSetOption::setSelection().

◆ cells_

labelList cells_
protected

Set of cells to apply source to.

Definition at line 204 of file cellSetOption.H.

Referenced by meanVelocityForce::correct(), and acousticDampingSource::setBlendingFactor().

◆ V_

scalar V_
protected

Sum of cell volumes.

Definition at line 207 of file cellSetOption.H.

Referenced by meanVelocityForce::correct().


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