36 #ifndef PatchInteractionModel_H 37 #define PatchInteractionModel_H 56 template<
class CloudType>
57 class PatchInteractionModel
59 public CloudSubModelBase<CloudType>
157 const scalar trackFraction,
175 #define makePatchInteractionModel(CloudType) \ 177 typedef Foam::CloudType::kinematicCloudType kinematicCloudType; \ 178 defineNamedTemplateTypeNameAndDebug \ 180 Foam::PatchInteractionModel<kinematicCloudType>, \ 186 defineTemplateRunTimeSelectionTable \ 188 PatchInteractionModel<kinematicCloudType>, \ 194 #define makePatchInteractionModelType(SS, CloudType) \ 196 typedef Foam::CloudType::kinematicCloudType kinematicCloudType; \ 197 defineNamedTemplateTypeNameAndDebug(Foam::SS<kinematicCloudType>, 0); \ 199 Foam::PatchInteractionModel<kinematicCloudType>:: \ 200 adddictionaryConstructorToTable<Foam::SS<kinematicCloudType>> \ 201 add##SS##CloudType##kinematicCloudType##ConstructorToTable_; PatchInteractionModel(CloudType &owner)
Construct null from owner.
const word & UName() const
Return name of velocity field.
static word interactionTypeToWord(const interactionType &itEnum)
Convert interaction result to word.
const dictionary & dict() const
Return const access to the cloud dictionary.
A list of keyword definitions, which are a keyword followed by any number of values (e...
static wordList interactionTypeNames_
virtual ~PatchInteractionModel()
Destructor.
Templated patch interaction model class.
virtual autoPtr< PatchInteractionModel< CloudType > > clone() const =0
Construct and return a clone.
declareRunTimeSelectionTable(autoPtr, PatchInteractionModel, dictionary,(const dictionary &dict, CloudType &owner),(dict, owner))
Declare runtime constructor selection table.
A class for handling words, derived from string.
static autoPtr< PatchInteractionModel< CloudType > > New(const dictionary &dict, CloudType &owner)
Selector.
Storage and named access for the indices of a tet which is part of the decomposition of a cell...
ParcelType parcelType
Type of parcel the cloud was instantiated for.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
TypeName("patchInteractionModel")
Runtime type information.
fileName::Type type(const fileName &)
Return the file type: DIRECTORY or FILE.
virtual void info(Ostream &os)
Write patch interaction info to stream.
virtual bool correct(typename CloudType::parcelType &p, const polyPatch &pp, bool &keepParticle, const scalar trackFraction, const tetIndices &tetIs)=0
Apply velocity correction.
const CloudType & owner() const
Return const access to the owner cloud.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Macros to ease declaration of run-time selection tables.
A patch is a list of labels that address the faces in the global face list.
Templated base class for dsmc cloud.
static interactionType wordToInteractionType(const word &itWord)
Convert word to interaction result.