MultiInteraction< CloudType > Class Template Reference

Runs multiple patch interaction models in turn. Takes dictionary where all the subdictionaries are the interaction models. More...

Inheritance diagram for MultiInteraction< CloudType >:
[legend]
Collaboration diagram for MultiInteraction< CloudType >:
[legend]

Public Member Functions

 TypeName ("multiInteraction")
 Runtime type information. More...
 
 MultiInteraction (const dictionary &dict, CloudType &cloud)
 Construct from dictionary. More...
 
 MultiInteraction (const MultiInteraction< CloudType > &pim)
 Construct copy from owner cloud and patch interaction model. More...
 
virtual autoPtr< PatchInteractionModel< CloudType > > clone () const
 Construct and return a clone using supplied owner cloud. More...
 
virtual ~MultiInteraction ()=default
 Destructor. More...
 
virtual bool active () const
 Flag to indicate whether model activates patch interaction model. More...
 
virtual bool correct (typename CloudType::parcelType &p, const polyPatch &pp, bool &keepParticle)
 Apply velocity correction. More...
 
- Public Member Functions inherited from PatchInteractionModel< CloudType >
 TypeName ("patchInteractionModel")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, PatchInteractionModel, dictionary,(const dictionary &dict, CloudType &owner),(dict, owner))
 Declare runtime constructor selection table. More...
 
 PatchInteractionModel (CloudType &owner)
 Construct null from owner. More...
 
 PatchInteractionModel (const dictionary &dict, CloudType &owner, const word &type)
 Construct from components. More...
 
 PatchInteractionModel (const PatchInteractionModel< CloudType > &pim)
 Construct copy. More...
 
virtual ~PatchInteractionModel ()=default
 Destructor. More...
 
const wordUName () const
 Return name of velocity field. More...
 
void addToEscapedParcels (const scalar mass)
 Add to escaped parcels. More...
 
virtual void info (Ostream &os)
 Write patch interaction info to stream. More...
 

Additional Inherited Members

- Public Types inherited from PatchInteractionModel< CloudType >
enum  interactionType {
  itNone, itRebound, itStick, itEscape,
  itOther
}
 
- Static Public Member Functions inherited from PatchInteractionModel< CloudType >
static autoPtr< PatchInteractionModel< CloudType > > New (const dictionary &dict, CloudType &owner)
 Selector. More...
 
static word interactionTypeToWord (const interactionType &itEnum)
 Convert interaction result to word. More...
 
static interactionType wordToInteractionType (const word &itWord)
 Convert word to interaction result. More...
 
- Static Public Attributes inherited from PatchInteractionModel< CloudType >
static wordList interactionTypeNames_
 
- Protected Member Functions inherited from PatchInteractionModel< CloudType >
virtual void writeFileHeader (Ostream &os)
 Output file header information. More...
 
- Protected Attributes inherited from PatchInteractionModel< CloudType >
const word UName_
 Name of velocity field - default = "U". More...
 
label escapedParcels_
 Number of parcels escaped. More...
 
scalar escapedMass_
 Mass of parcels escaped. More...
 

Detailed Description

template<class CloudType>
class Foam::MultiInteraction< CloudType >

Runs multiple patch interaction models in turn. Takes dictionary where all the subdictionaries are the interaction models.

Exit upon first successful interaction or continue doing other models. Returned interaction status will be true if there has been any interaction (so logical or) oneInteractionOnly true;

model1 { patchInteractionModel coincidentBaffleInteraction; coincidentBaffleInteractionCoeffs { coincidentPatches ( (pipetteWall_A pipetteCyclic_half0) (pipetteWall_B pipetteCyclic_half1) ); } } model2 { patchInteractionModel localInteraction; localInteractionCoeffs { patches ( cWall { type rebound; } pipetteWall_A { type rebound; } pipetteWall_B { type rebound; } ); } }

Definition at line 92 of file MultiInteraction.H.

Constructor & Destructor Documentation

◆ MultiInteraction() [1/2]

MultiInteraction ( const dictionary dict,
CloudType cloud 
)

Construct from dictionary.

Definition at line 90 of file MultiInteraction.C.

References Foam::blockMeshTools::read().

Here is the call graph for this function:

◆ MultiInteraction() [2/2]

Construct copy from owner cloud and patch interaction model.

Definition at line 103 of file MultiInteraction.C.

◆ ~MultiInteraction()

virtual ~MultiInteraction ( )
virtualdefault

Destructor.

Member Function Documentation

◆ TypeName()

TypeName ( "multiInteraction"  )

Runtime type information.

◆ clone()

virtual autoPtr<PatchInteractionModel<CloudType> > clone ( ) const
inlinevirtual

Construct and return a clone using supplied owner cloud.

Implements PatchInteractionModel< CloudType >.

Definition at line 124 of file MultiInteraction.H.

◆ active()

bool active ( ) const
virtual

Flag to indicate whether model activates patch interaction model.

Definition at line 116 of file MultiInteraction.C.

References forAll.

◆ correct()

bool correct ( typename CloudType::parcelType p,
const polyPatch pp,
bool keepParticle 
)
virtual

Apply velocity correction.

Returns true if particle remains in same cell

Implements PatchInteractionModel< CloudType >.

Definition at line 131 of file MultiInteraction.C.

References forAll, patchIdentifier::index(), and p.

Here is the call graph for this function:

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