Intermediate abstract class for handling cell-set options for the derived fvOptions. More...
Public Types | |
enum | selectionModeType { smAll , smCellSet , smCellZone , smPoints , smGeometric } |
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 wordRe & | zoneName () const noexcept |
scalar | V () const noexcept |
Return const access to the total cell volume. More... | |
const labelList & | cells () 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... | |
const word & | cellSetName () const noexcept |
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< option > | clone () const |
Return clone. More... | |
virtual | ~option ()=default |
Destructor. More... | |
const word & | name () const noexcept |
Return const access to the source name. More... | |
const fvMesh & | mesh () const noexcept |
Return const access to the mesh database. More... | |
const dictionary & | coeffs () 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 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 | 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... | |
virtual bool | read (const dictionary &dict) |
Read source dictionary. More... | |
Static Public Attributes | |
static const Enum< selectionModeType > | selectionModeTypeNames_ |
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... | |
wordRe | zoneName_ |
Name of set/zone for "cellSet" and "cellZone" selectionMode. More... | |
List< point > | points_ |
List of points for "points" selectionMode. More... | |
dictionary | geometricSelection_ |
Dictionary entries for "geometric" (topoSetCellSource) selection. 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 fvMesh & | mesh_ |
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< bool > | applied_ |
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< option > | New (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... | |
Intermediate abstract class for handling cell-set options for the derived fvOptions.
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 <name>; // when selectionMode=cellZone cellZone <name>; // when selectionMode=points points (<point1> <point2> ... <pointN>); // when selectionMode=geometric selection { box1 { action use; source box; min (-0.1 -0.01 -0.1); max (0.1 0.30 0.1); } ball { action add; source sphere; origin (-0.1 -0.01 -0.1); radius 0.25; } ... } // 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 | - |
selection | Dictionary of geometric selections | dict | cndtnl | - |
Options for the selectionMode
entry:
all | Use all cells in the computational domain cellZone | Use specified cellZone cellSet | Use specified cellSet points | Use cells containing a given set of points geometric | Select cells based on topoSetCellSource actions
The inherited entries are elaborated in:
The geometric selection uses topoSetCellSource to select cells. Any searchableSurface selections must describe a closed volume. Ie, its hasVolumeType() method must be true.
Definition at line 198 of file cellSetOption.H.
enum selectionModeType |
Enumeration for selection mode types.
Enumerator | |
---|---|
smAll | "all" cells |
smCellSet | "cellSet" |
smCellZone | "cellZone" |
smPoints | "points" |
smGeometric | "geometric" |
Definition at line 207 of file cellSetOption.H.
cellSetOption | ( | const word & | name, |
const word & | modelType, | ||
const dictionary & | dict, | ||
const fvMesh & | mesh | ||
) |
Construct from components.
Definition at line 244 of file cellSetOption.C.
References option::coeffs_, Foam::decrIndent(), dict, fv(), Foam::incrIndent(), Foam::Info, cellSetOption::read(), cellSetOption::setCellSelection(), cellSetOption::setSelection(), and cellSetOption::setVol().
|
virtualdefault |
Destructor.
|
protected |
Set cell selection name or points selection from dictionary input.
Definition at line 61 of file cellSetOption.C.
References dict, Foam::exit(), Foam::FatalError, FatalErrorInFunction, cellSetOption::geometricSelection_, cellSetOption::points_, dictionary::readEntry(), cellSetOption::selectionMode_, cellSetOption::selectionModeTypeNames_, cellSetOption::smAll, cellSetOption::smCellSet, cellSetOption::smCellZone, cellSetOption::smGeometric, cellSetOption::smPoints, dictionary::subDict(), and cellSetOption::zoneName_.
Referenced by cellSetOption::cellSetOption().
|
protected |
Set the cell selection based on user input selection mode.
Definition at line 129 of file cellSetOption.C.
References Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::flatOutput(), found, Foam::identity(), Foam::indent(), Foam::Info, HashSet< Key, Hash >::insert(), Foam::nl, p, Foam::returnReduce(), cellBitSet::select(), bitSet::sortedToc(), HashTable< T, Key, Hash >::sortedToc(), WarningInFunction, and zoneIDs.
Referenced by cellSetOption::cellSetOption().
|
protected |
Recalculate the volume.
Definition at line 102 of file cellSetOption.C.
References IOstream::defaultPrecision(), Foam::endl(), Foam::indent(), Foam::Info, Foam::reduce(), Foam::returnReduce(), and Time::timeName().
Referenced by cellSetOption::cellSetOption().
TypeName | ( | "cellSetOption" | ) |
Runtime type information.
|
inlinenoexcept |
Return const access to the time start.
Definition at line 31 of file cellSetOptionI.H.
References cellSetOption::timeStart_.
|
inlinenoexcept |
Return const access to the duration.
Definition at line 37 of file cellSetOptionI.H.
|
inline |
True if within time limits.
Definition at line 43 of file cellSetOptionI.H.
|
inlinenoexcept |
Return the cell selection mode.
Definition at line 58 of file cellSetOptionI.H.
Referenced by rotorDiskSource::checkData().
|
inlinenoexcept |
True if sub-selection should be used.
Definition at line 64 of file cellSetOptionI.H.
Referenced by limitTemperature::correct(), and limitVelocity::correct().
|
inlinenoexcept |
Return const access to the name of cell set/zone for "cellSet" / "cellZone" selection modes
Definition at line 304 of file cellSetOption.H.
References cellSetOption::zoneName_.
Referenced by explicitPorositySource::explicitPorositySource().
|
inlinenoexcept |
Return const access to the total cell volume.
Definition at line 70 of file cellSetOptionI.H.
Referenced by rotorDiskSource::calculate().
|
inlinenoexcept |
Return const access to the cell selection.
Definition at line 76 of file cellSetOptionI.H.
Referenced by targetCoeffTrim::calcCoeffs().
|
inlinenoexcept |
Adjust the time start, return the old value.
Definition at line 82 of file cellSetOptionI.H.
|
inlinenoexcept |
Adjust the duration, return the old value.
Definition at line 90 of file cellSetOptionI.H.
|
virtual |
Is the source active?
Reimplemented from option.
Definition at line 272 of file cellSetOption.C.
References option::isActive().
|
virtual |
Read source dictionary.
Reimplemented from option.
Reimplemented in VoFSolidificationMeltingSource, atmAmbientTurbSource, atmBuoyancyTurbSource, atmCoriolisUSource, atmLengthScaleTurbSource, atmNutSource, atmPlantCanopyTSource, atmPlantCanopyTurbSource, atmPlantCanopyUSource, fixedTemperatureConstraint, velocityDampingConstraint, FixedValueConstraint< Type >, limitTemperature, limitVelocity, acousticDampingSource, actuationDiskSource, buoyancyTurbSource, directionalPressureGradientExplicitSource, effectivenessHeatExchangerSource, explicitPorositySource, meanVelocityForce, radialActuationDiskSource, rotorDiskSource, solidificationMeltingSource, CodedSource< Type >, and SemiImplicitSource< Type >.
Definition at line 306 of file cellSetOption.C.
References dict, and kEpsilonLopesdaCosta< BasicTurbulenceModel >::read().
Referenced by cellSetOption::cellSetOption().
|
inlinenoexcept |
The name of the cell set/zone [as a word] for "cellSet" / "cellZone" selection modes)
Definition at line 338 of file cellSetOption.H.
References cellSetOption::zoneName_.
|
static |
List of selection mode type names.
Definition at line 217 of file cellSetOption.H.
Referenced by rotorDiskSource::checkData(), and cellSetOption::setSelection().
|
protected |
Start time of fvOption.
Definition at line 225 of file cellSetOption.H.
Referenced by cellSetOption::timeStart().
|
protected |
Duration of fvOption execution starting from timeStart.
Definition at line 228 of file cellSetOption.H.
|
protected |
Cell selection mode.
Definition at line 231 of file cellSetOption.H.
Referenced by cellSetOption::setSelection().
|
protected |
Name of set/zone for "cellSet" and "cellZone" selectionMode.
Definition at line 234 of file cellSetOption.H.
Referenced by cellSetOption::cellSetName(), cellSetOption::setSelection(), and cellSetOption::zoneName().
List of points for "points" selectionMode.
Definition at line 237 of file cellSetOption.H.
Referenced by cellSetOption::setSelection().
|
protected |
Dictionary entries for "geometric" (topoSetCellSource) selection.
Definition at line 240 of file cellSetOption.H.
Referenced by cellSetOption::setSelection().
|
protected |
Set of cells to apply source to.
Definition at line 243 of file cellSetOption.H.
Referenced by velocityDampingConstraint::addDamping(), rotorDiskSource::calculate(), and acousticDampingSource::setBlendingFactor().
|
protected |
Sum of cell volumes.
Definition at line 246 of file cellSetOption.H.