Go to the documentation of this file.
42 #ifndef PackingModel_H
43 #define PackingModel_H
57 class ParticleStressModel;
59 class CorrectionLimitingMethod;
62 class AveragingMethod;
68 template<
class CloudType>
71 public CloudSubModelBase<CloudType>
149 #define makePackingModel(CloudType) \
151 typedef Foam::CloudType::kinematicCloudType kinematicCloudType; \
152 defineNamedTemplateTypeNameAndDebug \
154 Foam::PackingModel<kinematicCloudType>, \
160 defineTemplateRunTimeSelectionTable \
162 PackingModel<kinematicCloudType>, \
168 #define makePackingModelType(SS, CloudType) \
170 typedef Foam::CloudType::kinematicCloudType kinematicCloudType; \
171 defineNamedTemplateTypeNameAndDebug \
172 (Foam::PackingModels::SS<kinematicCloudType>, 0); \
174 Foam::PackingModel<kinematicCloudType>:: \
175 adddictionaryConstructorToTable \
176 <Foam::PackingModels::SS<kinematicCloudType>> \
177 add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
182 #define makePackingModelMPPIC(CloudType) \
184 typedef Foam::CloudType::MPPICCloudType MPPICCloudType; \
185 defineNamedTemplateTypeNameAndDebug \
187 Foam::PackingModel<MPPICCloudType>, \
193 defineTemplateRunTimeSelectionTable \
195 PackingModel<MPPICCloudType>, \
201 #define makePackingModelTypeMPPIC(SS, CloudType) \
203 typedef Foam::CloudType::MPPICCloudType MPPICCloudType; \
204 defineNamedTemplateTypeNameAndDebug \
205 (Foam::PackingModels::SS<MPPICCloudType>, 0); \
207 Foam::PackingModel<MPPICCloudType>:: \
208 adddictionaryConstructorToTable \
209 <Foam::PackingModels::SS<MPPICCloudType>> \
210 add##SS##CloudType##MPPICCloudType##ConstructorToTable_;
virtual autoPtr< PackingModel< CloudType > > clone() const =0
autoPtr< ParticleStressModel > particleStressModel_
A class for handling words, derived from Foam::string.
Templated base class for dsmc cloud.
Base class for packing models.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
static autoPtr< PackingModel< CloudType > > New(const dictionary &dict, CloudType &owner)
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
declareRunTimeSelectionTable(autoPtr, PackingModel, dictionary,(const dictionary &dict, CloudType &owner),(dict, owner))
Macros to ease declaration of run-time selection tables.
fileName::Type type(const fileName &name, const bool followLink=true)
virtual vector velocityCorrection(typename CloudType::parcelType &p, const scalar deltaT) const =0
PackingModel(CloudType &owner)