112#ifndef HeatTransferModel_H
113#define HeatTransferModel_H
129template<
class CloudType>
130class HeatTransferModel
132 public CloudSubModelBase<CloudType>
137 const Switch BirdCorrection_;
152 const dictionary&
dict,
162 void operator=(
const HeatTransferModel<CloudType>&) =
delete;
173 const dictionary&
dict,
182 virtual autoPtr<HeatTransferModel<CloudType>>
clone()
const = 0;
202 return BirdCorrection_;
233#define makeHeatTransferModel(CloudType) \
235 typedef Foam::CloudType::thermoCloudType thermoCloudType; \
236 defineNamedTemplateTypeNameAndDebug \
238 Foam::HeatTransferModel<thermoCloudType>, \
243 defineTemplateRunTimeSelectionTable \
245 HeatTransferModel<thermoCloudType>, \
251#define makeHeatTransferModelType(SS, CloudType) \
253 typedef Foam::CloudType::thermoCloudType thermoCloudType; \
254 defineNamedTemplateTypeNameAndDebug(Foam::SS<thermoCloudType>, 0); \
256 Foam::HeatTransferModel<thermoCloudType>:: \
257 adddictionaryConstructorToTable<Foam::SS<thermoCloudType>> \
258 add##SS##CloudType##thermoCloudType##ConstructorToTable_;
Base class for cloud sub-models.
const CloudType & owner() const
Return const access to the owner cloud.
Templated base class for dsmc cloud.
Templated class to calculate the fluid-particle heat transfer coefficients based on a specified Nusse...
bool BirdCorrection() const noexcept
The Bird HTC correction flag.
void operator=(const HeatTransferModel< CloudType > &)=delete
No copy assignment.
declareRunTimeSelectionTable(autoPtr, HeatTransferModel, dictionary,(const dictionary &dict, CloudType &owner),(dict, owner))
Declare runtime constructor selection table.
static autoPtr< HeatTransferModel< CloudType > > New(const dictionary &dict, CloudType &owner)
Selector.
virtual ~HeatTransferModel()=default
Destructor.
virtual autoPtr< HeatTransferModel< CloudType > > clone() const =0
Construct and return a clone.
virtual scalar htc(const scalar dp, const scalar Re, const scalar Pr, const scalar kappa, const scalar NCpW) const
Return heat transfer coefficient.
TypeName("heatTransferModel")
Runtime type information.
virtual scalar Nu(const scalar Re, const scalar Pr) const =0
Return Nusselt number.
HeatTransferModel(CloudType &owner)
Construct null from owner.
A simple wrapper around bool so that it can be read as a word: true/false, on/off,...
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
const dictionary & dict() const
Return const access to the cloud dictionary.
A class for handling words, derived from Foam::string.
DSMCCloud< dsmcParcel > CloudType
scalarField Re(const UList< complex > &cf)
Extract real component.
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
Macros to ease declaration of run-time selection tables.
#define declareRunTimeSelectionTable(ptrWrapper, baseType, argNames, argList, parList)
Declare a run-time selection (variables and adder classes)
dimensionedScalar Pr("Pr", dimless, laminarTransport)
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.