Constructs on-the-fly fvOption source. More...
Public Member Functions | |
TypeName ("coded") | |
Runtime type information. More... | |
CodedSource (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) | |
Construct from components. More... | |
option & | redirectFvOption () const |
Dynamically compiled fvOption. More... | |
virtual void | correct (GeometricField< Type, fvPatchField, volMesh > &) |
Correct field. More... | |
virtual void | addSup (fvMatrix< Type > &eqn, const label fieldi) |
Explicit and implicit matrix contributions. More... | |
virtual void | addSup (const volScalarField &rho, fvMatrix< Type > &eqn, const label fieldi) |
Explicit and implicit matrix contributions. More... | |
virtual void | constrain (fvMatrix< Type > &eqn, const label fieldi) |
Set value. More... | |
virtual bool | read (const dictionary &dict) |
Read source dictionary. More... | |
Public Member Functions inherited from cellSetOption | |
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 () |
Destructor. More... | |
scalar | timeStart () const |
Return const access to the time start. More... | |
scalar | duration () const |
Return const access to the duration. More... | |
bool | inTimeLimits (const scalar time) const |
Return true if within time limits. More... | |
const selectionModeType & | selectionMode () const |
Return const access to the cell selection mode. More... | |
const word & | cellSetName () const |
Return const access to the name of cell set for "cellSet". More... | |
scalar | V () const |
Return const access to the total cell volume. More... | |
const labelList & | cells () const |
Return const access to the cell set. More... | |
scalar & | timeStart () |
Return access to the time start. More... | |
scalar & | duration () |
Return access to the duration. More... | |
virtual bool | isActive () |
Is the source active? 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< option > | clone () const |
Return clone. More... | |
virtual | ~option () |
Destructor. More... | |
const word & | name () const |
Return const access to the source name. More... | |
const fvMesh & | mesh () const |
Return const access to the mesh database. More... | |
const dictionary & | coeffs () 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... | |
Switch & | active () |
Return access to the source active flag. 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... | |
Public Member Functions inherited from codedBase | |
ClassName ("codedBase") | |
Runtime type information. More... | |
codedBase () | |
Construct null. More... | |
virtual | ~codedBase () |
Destructor. More... | |
Protected Member Functions | |
virtual dlLibraryTable & | libs () const |
Get the loaded dynamic libraries. More... | |
virtual void | prepare (dynamicCode &, const dynamicCodeContext &) const |
Adapt the context for the current object. More... | |
virtual string | description () const |
virtual void | clearRedirect () const |
virtual const dictionary & | codeDict () const |
Protected Member Functions inherited from cellSetOption | |
void | setSelection (const dictionary &dict) |
Set the cellSet or points selection. More... | |
void | setCellSet () |
Set the cell set based on the user input selection mode. More... | |
Protected Member Functions inherited from codedBase | |
void | updateLibrary (const word &name) const |
Update library as required. More... | |
Protected Attributes | |
word | name_ |
string | codeCorrect_ |
string | codeAddSup_ |
string | codeSetValue_ |
autoPtr< option > | redirectFvOptionPtr_ |
Underlying functionObject. More... | |
Protected Attributes inherited from cellSetOption | |
scalar | timeStart_ |
Time start. More... | |
scalar | duration_ |
Duration. More... | |
selectionModeType | selectionMode_ |
Cell selection mode. More... | |
word | cellSetName_ |
Name of cell set for "cellSet" and "cellZone" selectionMode. More... | |
List< point > | points_ |
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 fvMesh & | mesh_ |
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... | |
Additional Inherited Members | |
Public Types inherited from cellSetOption | |
enum | selectionModeType { smPoints, smCellSet, smCellZone, smAll } |
Enumeration for selection mode types. More... | |
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... | |
Static Public Attributes inherited from cellSetOption | |
static const NamedEnum< selectionModeType, 4 > | selectionModeTypeNames_ |
Word list of selection mode type names. More... | |
Constructs on-the-fly fvOption source.
The hook functions take the following arguments:
codeCorrect ( GeometricField<Type, fvPatchField, volMesh>& field )
codeAddSup ( fvMatrix<Type}>& eqn, const label fieldi )
constrain ( fvMatrix<Type}>& eqn, const label fieldi )
where : field is the field in fieldNames eqn is the fvMatrix
energySource { type scalarCodedSource; active yes; name sourceTime; scalarCodedSourceCoeffs { selectionMode all; fields (h); codeInclude #{ #}; codeCorrect #{ Pout<< "**codeCorrect**" << endl; #}; codeAddSup #{ const Time& time = mesh().time(); const scalarField& V = mesh_.V(); scalarField& heSource = eqn.source(); heSource -= 0.1*sqr(time.value())*V; #}; codeSetValue #{ Pout<< "**codeSetValue**" << endl; #}; // Dummy entry. Make dependent on above to trigger recompilation code #{ $codeInclude $codeCorrect $codeAddSup $codeSetValue #}; } sourceTimeCoeffs { $scalarCodedSourceCoeffs; } }
Definition at line 133 of file CodedSource.H.
CodedSource | ( | const word & | name, |
const word & | modelType, | ||
const dictionary & | dict, | ||
const fvMesh & | mesh | ||
) |
Construct from components.
Definition at line 115 of file CodedSource.C.
References Foam::blockMeshTools::read().
Referenced by CodedSource< Type >::codeDict().
|
protectedvirtual |
Get the loaded dynamic libraries.
Implements codedBase.
Definition at line 84 of file CodedSource.C.
|
protectedvirtual |
Adapt the context for the current object.
Implements codedBase.
Definition at line 36 of file CodedSource.C.
References dynamicCode::addCompileFile(), dynamicCode::addCopyFile(), dynamicCodeContext::libs(), dynamicCodeContext::options(), dynamicCode::setFilterVariable(), and dynamicCode::setMakeOptions().
|
protectedvirtual |
Implements codedBase.
Definition at line 91 of file CodedSource.C.
|
protectedvirtual |
Implements codedBase.
Definition at line 98 of file CodedSource.C.
|
protectedvirtual |
Implements codedBase.
Definition at line 105 of file CodedSource.C.
References CodedSource< Type >::CodedSource().
TypeName | ( | "coded" | ) |
Runtime type information.
Foam::fv::option & redirectFvOption | ( | ) | const |
Dynamically compiled fvOption.
Definition at line 131 of file CodedSource.C.
References CodedSource< Type >::correct(), Foam::New(), and dictionary::set().
|
virtual |
Correct field.
Definition at line 151 of file CodedSource.C.
References CodedSource< Type >::addSup(), Foam::endl(), and Foam::Info.
Referenced by CodedSource< Type >::redirectFvOption().
Explicit and implicit matrix contributions.
Definition at line 168 of file CodedSource.C.
References Foam::endl(), and Foam::Info.
Referenced by CodedSource< Type >::correct().
|
virtual |
Explicit and implicit matrix contributions.
to compressible equation
Definition at line 186 of file CodedSource.C.
References CodedSource< Type >::constrain(), Foam::endl(), and Foam::Info.
Set value.
Definition at line 205 of file CodedSource.C.
References Foam::endl(), and Foam::Info.
Referenced by CodedSource< Type >::addSup().
|
virtual |
Read source dictionary.
Reimplemented from cellSetOption.
Definition at line 32 of file CodedSourceIO.C.
References Foam::constant::electromagnetic::e, dictionary::found(), Foam::stringOps::inplaceExpand(), dictionary::lookup(), Foam::blockMeshTools::read(), entry::startLineNumber(), entry::stream(), and Foam::stringOps::trim().
|
protected |
Definition at line 143 of file CodedSource.H.
|
protected |
Definition at line 145 of file CodedSource.H.
|
protected |
Definition at line 146 of file CodedSource.H.
|
protected |
Definition at line 147 of file CodedSource.H.
Underlying functionObject.
Definition at line 150 of file CodedSource.H.