Go to the documentation of this file.
41 #ifndef PhaseChangeModel_H
42 #define PhaseChangeModel_H
58 template<
class CloudType>
59 class PhaseChangeModel
61 public CloudSubModelBase<CloudType>
209 #define makePhaseChangeModel(CloudType) \
211 typedef Foam::CloudType::reactingCloudType reactingCloudType; \
212 defineNamedTemplateTypeNameAndDebug \
214 Foam::PhaseChangeModel<reactingCloudType>, \
219 defineTemplateRunTimeSelectionTable \
221 PhaseChangeModel<reactingCloudType>, \
227 #define makePhaseChangeModelType(SS, CloudType) \
229 typedef Foam::CloudType::reactingCloudType reactingCloudType; \
230 defineNamedTemplateTypeNameAndDebug(Foam::SS<reactingCloudType>, 0); \
232 Foam::PhaseChangeModel<reactingCloudType>:: \
233 adddictionaryConstructorToTable<Foam::SS<reactingCloudType>> \
234 add##SS##CloudType##reactingCloudType##ConstructorToTable_;
static autoPtr< PhaseChangeModel< CloudType > > New(const dictionary &dict, CloudType &owner)
Selector.
Templated phase change model class.
virtual ~PhaseChangeModel()=default
Destructor.
A class for handling words, derived from Foam::string.
enthalpyTransferType enthalpyTransfer_
Enthalpy transfer type enumeration.
scalar dMass_
Mass of lagrangian phase converted.
PhaseChangeModel(CloudType &owner)
Construct null from owner.
virtual void info(Ostream &os)
Write injection info to stream.
declareRunTimeSelectionTable(autoPtr, PhaseChangeModel, dictionary,(const dictionary &dict, CloudType &owner),(dict, owner))
Declare runtime constructor selection table.
virtual scalar dh(const label idc, const label idl, const scalar p, const scalar T) const
Return the enthalpy per unit mass.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
enthalpyTransferType
Enthalpy transfer type.
TypeName("phaseChangeModel")
Runtime type information.
virtual void calculate(const scalar dt, const label celli, 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.
dimensionedScalar Pr("Pr", dimless, laminarTransport)
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
Templated base class for dsmc cloud.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
static const wordList enthalpyTransferTypeNames
Name representations of enthalpy transfer types.
scalar Sh() const
Sherwood number.
enthalpyTransferType wordToEnthalpyTransfer(const word &etName) const
Convert word to enthalpy transfer type.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Macros to ease declaration of run-time selection tables.
virtual scalar TMax(const scalar p, const scalarField &X) const
Return maximum/limiting temperature.
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
scalarField Re(const UList< complex > &cf)
Extract real component.
virtual scalar Tvap(const scalarField &X) const
Return vapourisation temperature.
const enthalpyTransferType & enthalpyTransfer() const
Return the enthalpy transfer type enumeration.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
virtual autoPtr< PhaseChangeModel< CloudType > > clone() const =0
Construct and return a clone.
void addToPhaseChangeMass(const scalar dMass)
Add to phase change mass.