Templated patch interaction model class. More...
#include <PatchInteractionModel.H>


Public Types | |
| enum | interactionType { itNone , itRebound , itStick , itEscape , itOther } |
| Public Types inherited from CloudSubModelBase< CloudType > | |
| typedef CloudType | cloudType |
| Type of cloud this model was instantiated for. | |
Public Member Functions | |
| TypeName ("patchInteractionModel") | |
| Runtime type information. | |
| declareRunTimeSelectionTable (autoPtr, PatchInteractionModel, dictionary,(const dictionary &dict, CloudType &owner),(dict, owner)) | |
| Declare runtime constructor selection table. | |
| PatchInteractionModel (CloudType &owner) | |
| Construct null from owner. | |
| PatchInteractionModel (const dictionary &dict, CloudType &owner, const word &type) | |
| Construct from components. | |
| PatchInteractionModel (const PatchInteractionModel< CloudType > &pim) | |
| Construct copy. | |
| virtual autoPtr< PatchInteractionModel< CloudType > > | clone () const =0 |
| Construct and return a clone. | |
| virtual | ~PatchInteractionModel ()=default |
| Destructor. | |
| const word & | UName () const |
| Return name of velocity field. | |
| const scalar & | Urmax () const |
| Return Urmax. | |
| virtual bool | correct (typename CloudType::parcelType &p, const polyPatch &pp, bool &keepParticle)=0 |
| Apply velocity correction. | |
| virtual void | addToEscapedParcels (const scalar mass) |
| Add to escaped parcels. | |
| virtual void | postEvolve () |
| Post-evolve hook. | |
| virtual void | info () |
| Write patch interaction info. | |
| Public Member Functions inherited from CloudSubModelBase< CloudType > | |
| CloudSubModelBase (CloudType &owner) | |
| Construct null from owner cloud. | |
| CloudSubModelBase (CloudType &owner, const dictionary &dict, const word &baseName, const word &modelType, const word &dictExt="Coeffs") | |
| Construct from owner cloud without name. | |
| CloudSubModelBase (const word &modelName, CloudType &owner, const dictionary &dict, const word &baseName, const word &modelType) | |
| Construct from owner cloud with name. | |
| CloudSubModelBase (const CloudSubModelBase< CloudType > &smb) | |
| Construct as copy. | |
| virtual | ~CloudSubModelBase ()=default |
| Destructor. | |
| const CloudType & | owner () const |
| Return const access to the owner cloud. | |
| virtual bool | writeTime () const |
| Flag to indicate when to write a property. | |
| virtual fileName | localPath () const |
| Output directory. | |
| CloudType & | owner () |
| Return non-const access to the owner cloud for manipulation. | |
| virtual void | write (Ostream &os) const |
| Write to os. | |
| Public Member Functions inherited from subModelBase | |
| subModelBase (dictionary &properties) | |
| Construct null. | |
| subModelBase (dictionary &properties, const dictionary &dict, const word &baseName, const word &modelType, const word &dictExt="Coeffs") | |
| Construct from components without name. | |
| subModelBase (const word &modelName, dictionary &properties, const dictionary &dict, const word &baseName, const word &modelType) | |
| Construct from components with name. | |
| subModelBase (const subModelBase &smb) | |
| Construct as copy. | |
| virtual | ~subModelBase ()=default |
| Destructor. | |
| const word & | modelName () const |
| Return const access to the name of the sub-model. | |
| const dictionary & | dict () const |
| Return const access to the cloud dictionary. | |
| const word & | baseName () const |
| Return const access to the base name of the sub-model. | |
| const word & | modelType () const |
| Return const access to the sub-model type. | |
| const dictionary & | coeffDict () const |
| Return const access to the coefficients dictionary. | |
| const dictionary & | properties () const |
| Return const access to the properties dictionary. | |
| virtual bool | defaultCoeffs (const bool printMsg) const |
| Returns true if defaultCoeffs is true and outputs on printMsg. | |
| virtual bool | active () const |
| Return the model 'active' status - default active = true. | |
| virtual void | cacheFields (const bool store) |
| Cache dependent sub-model fields. | |
| template<class Type> | |
| Type | getBaseProperty (const word &entryName, const Type &defaultValue=Type(Zero)) const |
| Retrieve generic property from the base model. | |
| template<class Type> | |
| void | getBaseProperty (const word &entryName, Type &value) const |
| Retrieve generic property from the base model. | |
| template<class Type> | |
| void | setBaseProperty (const word &entryName, const Type &value) |
| Add generic property to the base model. | |
| bool | getModelDict (const word &entryName, dictionary &dict) const |
| Retrieve dictionary, return true if set. | |
| template<class Type> | |
| bool | getModelProperty (const word &entryName, Type &value) const |
| Retrieve generic property from the sub-model. | |
| template<class Type> | |
| Type | getModelProperty (const word &entryName, const Type &defaultValue=Type(Zero)) const |
| Retrieve generic property from the sub-model. | |
| template<class Type> | |
| void | setModelProperty (const word &entryName, const Type &value) |
| Add generic property to the sub-model. | |
| Public Member Functions inherited from writeFile | |
| writeFile (const objectRegistry &obr, const fileName &prefix, const word &name="undefined", const bool writeToFile=true, const string &ext=".dat") | |
| Construct from objectRegistry, prefix, fileName. | |
| writeFile (const objectRegistry &obr, const fileName &prefix, const word &name, const dictionary &dict, const bool writeToFile=true, const string &ext=".dat") | |
| Construct from objectRegistry, prefix, fileName and read options from dictionary. | |
| writeFile (const writeFile &wf) | |
| Construct copy. | |
| virtual | ~writeFile ()=default |
| Destructor. | |
| virtual bool | read (const dictionary &dict) |
| Read. | |
| virtual const string & | setExt (const string &ext) |
| Set extension. | |
| virtual OFstream & | file () |
| Return access to the file (if only 1). | |
| virtual bool | writeToFile () const |
| Flag to allow writing to file. | |
| virtual bool | canWriteToFile () const |
| Flag to allow writing to the file. | |
| virtual bool | canResetFile () const |
| Flag to allow resetting the file. | |
| virtual bool | canWriteHeader () const |
| Flag to allow writing the header. | |
| virtual label | charWidth () const |
| Return width of character stream output. | |
| virtual void | writeCommented (Ostream &os, const string &str) const |
| Write a commented string to stream. | |
| virtual void | writeTabbed (Ostream &os, const string &str) const |
| Write a tabbed string to stream. | |
| virtual void | writeHeader (Ostream &os, const string &str) const |
| Write a commented header to stream. | |
| virtual void | writeCurrentTime (Ostream &os) const |
| Write the current time to stream. | |
| virtual void | writeBreak (Ostream &os) const |
| Write a break marker to the stream. | |
| template<class Type> | |
| void | writeHeaderValue (Ostream &os, const string &property, const Type &value) const |
| Write a (commented) header property and value pair. | |
| template<class Type> | |
| void | writeValue (Ostream &os, const Type &val) const |
| Write a given value to stream with the space delimiter. | |
Static Public Member Functions | |
| static autoPtr< PatchInteractionModel< CloudType > > | New (const dictionary &dict, CloudType &owner) |
| Selector. | |
| static word | interactionTypeToWord (const interactionType &itEnum) |
| Convert interaction result to word. | |
| static interactionType | wordToInteractionType (const word &itWord) |
| Convert word to interaction result. | |
Static Public Attributes | |
| static wordList | interactionTypeNames_ |
| Static Public Attributes inherited from writeFile | |
| static label | addChars = 8 |
| Additional characters for writing. | |
Protected Member Functions | |
| virtual void | writeFileHeader (Ostream &os) |
| Output file header information. | |
| Protected Member Functions inherited from subModelBase | |
| bool | inLine () const |
| Flag to indicate whether data is/was read in-line. | |
| Protected Member Functions inherited from writeFile | |
| void | initStream (Ostream &os) const |
| Initialise the output stream for writing. | |
| fileName | baseFileDir () const |
| Return the base directory for output. | |
| fileName | baseTimeDir () const |
| Return the base directory for the current time value. | |
| fileName | filePath (const fileName &fName) const |
| Return the full path for the supplied file name. | |
| virtual autoPtr< OFstream > | newFile (const fileName &fName) const |
| Return autoPtr to a new file using file name. | |
| virtual autoPtr< OFstream > | newFileAtTime (const word &name, scalar timeValue) const |
| Return autoPtr to a new file for a given time. | |
| virtual autoPtr< OFstream > | newFileAtStartTime (const word &name) const |
| Return autoPtr to a new file using the simulation start time. | |
| virtual void | resetFile (const word &name) |
| Reset internal file pointer to new file with new name. | |
| Omanip< int > | valueWidth (const label offset=0) const |
| Return the value width when writing to stream with optional offset. | |
| void | operator= (const writeFile &)=delete |
| No copy assignment. | |
| virtual autoPtr< OFstream > | createFile (const word &name, scalar timeValue) const |
| Deprecated(2022-09) Return autoPtr to a new file for a given time. | |
| virtual autoPtr< OFstream > | createFile (const word &name) const |
| Deprecated(2022-09) Return autoPtr to a new file using the simulation start time. | |
Protected Attributes | |
| const word | UName_ |
| Name of velocity field - default = "U". | |
| label | escapedParcels_ |
| Number of parcels escaped. | |
| scalar | escapedMass_ |
| Mass of parcels escaped. | |
| scalar | Urmax_ |
| Maximum relative U with patch for particle to be removed. | |
| Protected Attributes inherited from CloudSubModelBase< CloudType > | |
| CloudType & | owner_ |
| Reference to the cloud. | |
| Protected Attributes inherited from subModelBase | |
| const word | modelName_ |
| Name of the sub-model. | |
| dictionary & | properties_ |
| Reference to properties dictionary e.g. for restart. | |
| const dictionary | dict_ |
| Copy of dictionary used during construction. | |
| const word | baseName_ |
| Name of the sub-model base class. | |
| const word | modelType_ |
| Type of the sub-model. | |
| const dictionary | coeffDict_ |
| Coefficients dictionary. | |
| Protected Attributes inherited from writeFile | |
| const objectRegistry & | fileObr_ |
| Reference to the region objectRegistry. | |
| const fileName | prefix_ |
| Prefix. | |
| word | fileName_ |
| Name of file. | |
| autoPtr< OFstream > | filePtr_ |
| File pointer. | |
| label | writePrecision_ |
| Write precision. | |
| bool | writeToFile_ |
| Flag to enable/disable writing to file. | |
| bool | updateHeader_ |
| Flag to update the header, e.g. on mesh changes. Default is true. | |
| bool | writtenHeader_ |
| Flag to identify whether the header has been written. | |
| bool | useUserTime_ |
| Flag to use the specified user time, e.g. CA deg instead of seconds. Default = true. | |
| scalar | startTime_ |
| Start time value. | |
| string | ext_ |
| File extension; default = .dat. | |
Additional Inherited Members | |
| Public Attributes inherited from subModelBase | |
| bool | log |
| Flag to write log into Info. | |
Templated patch interaction model class.
Definition at line 59 of file PatchInteractionModel.H.
| enum interactionType |
| Enumerator | |
|---|---|
| itNone | |
| itRebound | |
| itStick | |
| itEscape | |
| itOther | |
Definition at line 69 of file PatchInteractionModel.H.
Construct null from owner.
Definition at line 124 of file PatchInteractionModel.C.
References CloudSubModelBase< CloudType >::CloudSubModelBase(), e, escapedMass_, escapedParcels_, Foam::GlobalIOList< Tuple2< scalar, vector > >::typeName, CloudSubModelBase< CloudType >::localPath(), CloudSubModelBase< CloudType >::owner(), UName_, Urmax_, and writeFile::writeFile().
Referenced by declareRunTimeSelectionTable(), LocalInteraction< CloudType >::LocalInteraction(), LocalInteraction< CloudType >::LocalInteraction(), MultiInteraction< CloudType >::MultiInteraction(), MultiInteraction< CloudType >::MultiInteraction(), NoInteraction< CloudType >::NoInteraction(), NoInteraction< CloudType >::NoInteraction(), PatchInteractionModel(), Rebound< CloudType >::Rebound(), Rebound< CloudType >::Rebound(), RecycleInteraction< CloudType >::RecycleInteraction(), RecycleInteraction< CloudType >::RecycleInteraction(), StandardWallInteraction< CloudType >::StandardWallInteraction(), and StandardWallInteraction< CloudType >::StandardWallInteraction().


| PatchInteractionModel | ( | const dictionary & | dict, |
| CloudType & | owner, | ||
| const word & | type ) |
Construct from components.
Definition at line 139 of file PatchInteractionModel.C.
References subModelBase::dict(), and CloudSubModelBase< CloudType >::owner().

Construct copy.
Definition at line 163 of file PatchInteractionModel.C.
References CloudSubModelBase< CloudType >::CloudSubModelBase(), escapedMass_, escapedParcels_, PatchInteractionModel(), UName_, Urmax_, and writeFile::writeFile().

|
virtualdefault |
Destructor.
References subModelBase::dict(), and CloudSubModelBase< CloudType >::owner().

Output file header information.
Reimplemented in LocalInteraction< CloudType >, RecycleInteraction< CloudType >, and StandardWallInteraction< CloudType >.
Definition at line 39 of file PatchInteractionModel.C.
References subModelBase::modelType(), os(), writeFile::writeCommented(), writeFile::writeHeader(), writeFile::writeHeaderValue(), and writeFile::writeTabbed().
Referenced by LocalInteraction< CloudType >::writeFileHeader(), RecycleInteraction< CloudType >::writeFileHeader(), and StandardWallInteraction< CloudType >::writeFileHeader().


| TypeName | ( | "patchInteractionModel" | ) |
Runtime type information.
| declareRunTimeSelectionTable | ( | autoPtr | , |
| PatchInteractionModel< CloudType > | , | ||
| dictionary | , | ||
| (const dictionary &dict, CloudType &owner) | , | ||
| (dict, owner) | ) |
Declare runtime constructor selection table.
References subModelBase::dict(), CloudSubModelBase< CloudType >::owner(), and PatchInteractionModel().

|
pure virtual |
Construct and return a clone.
Implemented in LocalInteraction< CloudType >, MultiInteraction< CloudType >, NoInteraction< CloudType >, Rebound< CloudType >, RecycleInteraction< CloudType >, and StandardWallInteraction< CloudType >.
|
static |
Selector.
Definition at line 28 of file PatchInteractionModelNew.C.
References Foam::abort(), subModelBase::dict(), Foam::endl(), Foam::FatalIOError, FatalIOErrorInLookup, Foam::Info, subModelBase::modelType(), and CloudSubModelBase< CloudType >::owner().

| const Foam::word & UName | ( | ) | const |
Return name of velocity field.
Definition at line 180 of file PatchInteractionModel.C.
References UName_.
| const Foam::scalar & Urmax | ( | ) | const |
Return Urmax.
Definition at line 187 of file PatchInteractionModel.C.
Referenced by LocalInteraction< CloudType >::correct(), and StandardWallInteraction< CloudType >::correct().

|
static |
Convert interaction result to word.
Definition at line 53 of file PatchInteractionModel.C.
References itEscape, itNone, itRebound, and itStick.
Referenced by StandardWallInteraction< CloudType >::correct().

|
static |
Convert word to interaction result.
Definition at line 93 of file PatchInteractionModel.C.
References itEscape, itNone, itRebound, and itStick.
Referenced by LocalInteraction< CloudType >::correct(), LocalInteraction< CloudType >::LocalInteraction(), and StandardWallInteraction< CloudType >::StandardWallInteraction().

|
pure virtual |
Apply velocity correction.
Returns true if particle remains in same cell
Implemented in LocalInteraction< CloudType >, MultiInteraction< CloudType >, NoInteraction< CloudType >, Rebound< CloudType >, RecycleInteraction< CloudType >, and StandardWallInteraction< CloudType >.

|
virtual |
Add to escaped parcels.
Definition at line 194 of file PatchInteractionModel.C.
References escapedMass_, and escapedParcels_.
|
virtual |
Post-evolve hook.
Reimplemented in MultiInteraction< CloudType >, and RecycleInteraction< CloudType >.
Definition at line 205 of file PatchInteractionModel.C.
|
virtual |
Write patch interaction info.
Reimplemented from CloudSubModelBase< CloudType >.
Reimplemented in LocalInteraction< CloudType >, MultiInteraction< CloudType >, RecycleInteraction< CloudType >, and StandardWallInteraction< CloudType >.
Definition at line 210 of file PatchInteractionModel.C.
References escapedMass_, escapedParcels_, subModelBase::getBaseProperty(), CloudSubModelBase< CloudType >::info(), and Foam::returnReduce().
Referenced by LocalInteraction< CloudType >::info(), MultiInteraction< CloudType >::info(), RecycleInteraction< CloudType >::info(), and StandardWallInteraction< CloudType >::info().


|
static |
Definition at line 78 of file PatchInteractionModel.H.
Referenced by LocalInteraction< CloudType >::correct(), LocalInteraction< CloudType >::LocalInteraction(), and StandardWallInteraction< CloudType >::StandardWallInteraction().
Name of velocity field - default = "U".
Definition at line 88 of file PatchInteractionModel.H.
Referenced by PatchInteractionModel(), PatchInteractionModel(), and UName().
|
protected |
Number of parcels escaped.
Definition at line 96 of file PatchInteractionModel.H.
Referenced by addToEscapedParcels(), info(), PatchInteractionModel(), and PatchInteractionModel().
|
protected |
Mass of parcels escaped.
Definition at line 101 of file PatchInteractionModel.H.
Referenced by addToEscapedParcels(), info(), PatchInteractionModel(), and PatchInteractionModel().
|
protected |
Maximum relative U with patch for particle to be removed.
Definition at line 106 of file PatchInteractionModel.H.
Referenced by PatchInteractionModel(), and PatchInteractionModel().