36 #ifndef PhaseChangeModel_H 37 #define PhaseChangeModel_H 53 template<
class CloudType>
54 class PhaseChangeModel
56 public CloudSubModelBase<CloudType>
159 const typename CloudType::parcelType::trackingData& td,
205 #define makePhaseChangeModel(CloudType) \ 207 typedef Foam::CloudType::reactingCloudType reactingCloudType; \ 208 defineNamedTemplateTypeNameAndDebug \ 210 Foam::PhaseChangeModel<reactingCloudType>, \ 215 defineTemplateRunTimeSelectionTable \ 217 PhaseChangeModel<reactingCloudType>, \ 223 #define makePhaseChangeModelType(SS, CloudType) \ 225 typedef Foam::CloudType::reactingCloudType reactingCloudType; \ 226 defineNamedTemplateTypeNameAndDebug(Foam::SS<reactingCloudType>, 0); \ 228 Foam::PhaseChangeModel<reactingCloudType>:: \ 229 adddictionaryConstructorToTable<Foam::SS<reactingCloudType>> \ 230 add##SS##CloudType##reactingCloudType##ConstructorToTable_; virtual scalar TMax(const scalar p, const scalarField &X) const
Return maximum/limiting temperature.
static const Foam::wordList enthalpyTransferTypeNames
Name representations of enthalpy transfer types.
Templated phase change model class.
static autoPtr< PhaseChangeModel< CloudType > > New(const dictionary &dict, CloudType &owner)
Selector.
A list of keyword definitions, which are a keyword followed by any number of values (e...
void addToPhaseChangeMass(const scalar dMass)
Add to phase change mass.
const enthalpyTransferType & enthalpyTransfer() const
Return the enthalpy transfer type enumeration.
virtual ~PhaseChangeModel()
Destructor.
const dictionary & dict() const
Return const access to the cloud dictionary.
PhaseChangeModel(CloudType &owner)
Construct null from owner.
const CloudType & owner() const
Return const access to the owner cloud.
virtual autoPtr< PhaseChangeModel< CloudType > > clone() const =0
Construct and return a clone.
scalar dMass_
Mass of lagrangian phase converted.
declareRunTimeSelectionTable(autoPtr, PhaseChangeModel, dictionary,(const dictionary &dict, CloudType &owner),(dict, owner))
Declare runtime constructor selection table.
A class for handling words, derived from string.
virtual void info(Ostream &os)
Write injection info to stream.
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...
virtual void calculate(const typename CloudType::parcelType &p, const typename CloudType::parcelType::trackingData &td, const scalar dt, const scalar Re, const scalar Pr, const scalar d, const scalar nu, const scalar T, const scalar Ts, const scalar pc, const scalar Tc, const scalarField &X, scalarField &dMassPC) const =0
Update model.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
enthalpyTransferType enthalpyTransfer_
Enthalpy transfer type enumeration.
virtual scalar dh(const label idc, const label idl, const scalar p, const scalar T) const
Return the enthalpy per unit mass.
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.
TypeName("phaseChangeModel")
Runtime type information.
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.
virtual scalar Tvap(const scalarField &X) const
Return vapourisation temperature.
Templated base class for dsmc cloud.
scalarField Re(const UList< complex > &cf)
enthalpyTransferType
Enthalpy transfer type.
scalar Sh() const
Sherwood number.
enthalpyTransferType wordToEnthalpyTransfer(const word &etName) const
Convert word to enthalpy transfer type.