StandardWallInteraction< CloudType > Class Template Reference

Wall interaction model. More...

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

Public Member Functions

 TypeName ("standardWallInteraction")
 Runtime type information. More...
 
 StandardWallInteraction (const dictionary &dict, CloudType &cloud)
 Construct from dictionary. More...
 
 StandardWallInteraction (const StandardWallInteraction< 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 ~StandardWallInteraction ()=default
 Destructor. More...
 
virtual bool correct (typename CloudType::parcelType &p, const polyPatch &pp, bool &keepParticle)
 Apply velocity correction. More...
 
virtual void info (Ostream &os)
 Write patch interaction info to stream. 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...
 
const scalar & Urmax () const
 Return Urmax. More...
 
virtual void addToEscapedParcels (const scalar mass)
 Add to escaped parcels. More...
 
virtual void postEvolve ()
 Post-evolve hook. More...
 

Protected Member Functions

virtual void writeFileHeader (Ostream &os)
 Output file header information. More...
 

Protected Attributes

const fvMeshmesh_
 
PatchInteractionModel< CloudType >::interactionType interactionType_
 Interaction type. More...
 
scalar e_
 Elasticity coefficient. More...
 
scalar mu_
 Restitution coefficient. More...
 
List< List< label > > nEscape_
 Number of parcels escaped. More...
 
List< List< scalar > > massEscape_
 Mass of parcels escaped. More...
 
List< List< label > > nStick_
 Number of parcels stuck to patches. More...
 
List< List< scalar > > massStick_
 Mass of parcels stuck to patches. More...
 
bool outputByInjectorId_
 Flag to output escaped/mass particles sorted by injectorID. More...
 
Map< label > injIdToIndex_
 InjectorId to index map, when outputting escaped/stick/... 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...
 
scalar Urmax_
 Maximum relative U with patch for particle to be removed. 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_
 

Detailed Description

template<class CloudType>
class Foam::StandardWallInteraction< CloudType >

Wall interaction model.

Three choices:

  • rebound - optionally specify elasticity and restitution coefficients
  • stick - particles assigned zero velocity
  • escape - remove particle from the domain

Example usage:

StandardWallInteractionCoeffs
{
    type        rebound; // stick, escape
    e           1;       // optional - elasticity coeff
    mu          0;       // optional - restitution coeff
}

Definition at line 66 of file StandardWallInteraction.H.

Constructor & Destructor Documentation

◆ StandardWallInteraction() [1/2]

StandardWallInteraction ( const dictionary dict,
CloudType cloud 
)

Construct from dictionary.

Definition at line 58 of file StandardWallInteraction.C.

References Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, and Foam::Zero.

Here is the call graph for this function:

◆ StandardWallInteraction() [2/2]

Construct copy from owner cloud and patch interaction model.

Definition at line 132 of file StandardWallInteraction.C.

◆ ~StandardWallInteraction()

virtual ~StandardWallInteraction ( )
virtualdefault

Destructor.

Member Function Documentation

◆ writeFileHeader()

void writeFileHeader ( Ostream os)
protectedvirtual

Output file header information.

Reimplemented from PatchInteractionModel< CloudType >.

Definition at line 34 of file StandardWallInteraction.C.

References forAll, Foam::name(), and os().

Here is the call graph for this function:

◆ TypeName()

TypeName ( "standardWallInteraction"  )

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 132 of file StandardWallInteraction.H.

◆ 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 153 of file StandardWallInteraction.C.

References Foam::abort(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, patchIdentifier::index(), Foam::mag(), Foam::nl, p, U, WarningInFunction, and Foam::Zero.

Here is the call graph for this function:

◆ info()

void info ( Ostream os)
virtual

Write patch interaction info to stream.

Reimplemented from PatchInteractionModel< CloudType >.

Definition at line 260 of file StandardWallInteraction.C.

References Foam::endl(), forAll, forAllConstIters(), Foam::nl, os(), Foam::tab, and Foam::Zero.

Here is the call graph for this function:

Member Data Documentation

◆ mesh_

const fvMesh& mesh_
protected

Definition at line 75 of file StandardWallInteraction.H.

◆ interactionType_

PatchInteractionModel<CloudType>::interactionType interactionType_
protected

Interaction type.

Definition at line 79 of file StandardWallInteraction.H.

◆ e_

scalar e_
protected

Elasticity coefficient.

Definition at line 82 of file StandardWallInteraction.H.

◆ mu_

scalar mu_
protected

Restitution coefficient.

Definition at line 85 of file StandardWallInteraction.H.

◆ nEscape_

List<List<label> > nEscape_
protected

Number of parcels escaped.

Definition at line 91 of file StandardWallInteraction.H.

◆ massEscape_

List<List<scalar> > massEscape_
protected

Mass of parcels escaped.

Definition at line 94 of file StandardWallInteraction.H.

◆ nStick_

List<List<label> > nStick_
protected

Number of parcels stuck to patches.

Definition at line 97 of file StandardWallInteraction.H.

◆ massStick_

List<List<scalar> > massStick_
protected

Mass of parcels stuck to patches.

Definition at line 100 of file StandardWallInteraction.H.

◆ outputByInjectorId_

bool outputByInjectorId_
protected

Flag to output escaped/mass particles sorted by injectorID.

Definition at line 104 of file StandardWallInteraction.H.

◆ injIdToIndex_

Map<label> injIdToIndex_
protected

InjectorId to index map, when outputting escaped/stick/...

particles sorted by injectorID

Definition at line 108 of file StandardWallInteraction.H.


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