42 #ifndef DampingModel_H 43 #define DampingModel_H 63 template<
class CloudType>
66 public CloudSubModelBase<CloudType>
144 #define makeDampingModel(CloudType) \ 146 typedef Foam::CloudType::kinematicCloudType kinematicCloudType; \ 147 defineNamedTemplateTypeNameAndDebug \ 149 Foam::DampingModel<kinematicCloudType>, \ 155 defineTemplateRunTimeSelectionTable \ 157 DampingModel<kinematicCloudType>, \ 163 #define makeDampingModelType(SS, CloudType) \ 165 typedef Foam::CloudType::kinematicCloudType kinematicCloudType; \ 166 defineNamedTemplateTypeNameAndDebug \ 167 (Foam::DampingModels::SS<kinematicCloudType>, 0); \ 169 Foam::DampingModel<kinematicCloudType>:: \ 170 adddictionaryConstructorToTable \ 171 <Foam::DampingModels::SS<kinematicCloudType>> \ 172 add##SS##CloudType##kinematicCloudType##ConstructorToTable_; 177 #define makeDampingModelMPPIC(CloudType) \ 179 typedef Foam::CloudType::MPPICCloudType MPPICCloudType; \ 180 defineNamedTemplateTypeNameAndDebug \ 182 Foam::DampingModel<MPPICCloudType>, \ 188 defineTemplateRunTimeSelectionTable \ 190 DampingModel<MPPICCloudType>, \ 196 #define makeDampingModelTypeMPPIC(SS, CloudType) \ 198 typedef Foam::CloudType::MPPICCloudType MPPICCloudType; \ 199 defineNamedTemplateTypeNameAndDebug \ 200 (Foam::DampingModels::SS<MPPICCloudType>, 0); \ 202 Foam::DampingModel<MPPICCloudType>:: \ 203 adddictionaryConstructorToTable \ 204 <Foam::DampingModels::SS<MPPICCloudType>> \ 205 add##SS##CloudType##MPPICCloudType##ConstructorToTable_; declareRunTimeSelectionTable(autoPtr, DampingModel, dictionary,(const dictionary &dict, CloudType &owner),(dict, owner))
Declare runtime constructor selection table.
A list of keyword definitions, which are a keyword followed by a number of values (eg...
autoPtr< TimeScaleModel > timeScaleModel_
Time scale model.
const dictionary & dict() const
Return const access to the cloud dictionary.
const CloudType & owner() const
Return const access to the owner cloud.
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
A class for handling words, derived from Foam::string.
virtual autoPtr< DampingModel< CloudType > > clone() const =0
Construct and return a clone.
ParcelType parcelType
Type of parcel the cloud was instantiated for.
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
virtual vector velocityCorrection(typename CloudType::parcelType &p, const scalar deltaT) const =0
Calculate the velocity correction.
static autoPtr< DampingModel< CloudType > > New(const dictionary &dict, CloudType &owner)
Selector.
DampingModel(CloudType &owner)
Construct null from owner.
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
Macros to ease declaration of run-time selection tables.
virtual ~DampingModel()
Destructor.
Templated base class for dsmc cloud.
TypeName("dampingModel")
Runtime type information.
Base class for collisional damping models.