Go to the documentation of this file.
42 #ifndef PhaseChangeModel_H
43 #define PhaseChangeModel_H
59 template<
class CloudType>
60 class PhaseChangeModel
62 public CloudSubModelBase<CloudType>
213 #define makePhaseChangeModel(CloudType) \
215 typedef Foam::CloudType::reactingCloudType reactingCloudType; \
216 defineNamedTemplateTypeNameAndDebug \
218 Foam::PhaseChangeModel<reactingCloudType>, \
223 defineTemplateRunTimeSelectionTable \
225 PhaseChangeModel<reactingCloudType>, \
231 #define makePhaseChangeModelType(SS, CloudType) \
233 typedef Foam::CloudType::reactingCloudType reactingCloudType; \
234 defineNamedTemplateTypeNameAndDebug(Foam::SS<reactingCloudType>, 0); \
236 Foam::PhaseChangeModel<reactingCloudType>:: \
237 adddictionaryConstructorToTable<Foam::SS<reactingCloudType>> \
238 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.
virtual void calculate(const scalar dt, const label celli, const scalar Re, const scalar Pr, const scalar d, const scalar nu, const scalar rho, const scalar T, const scalar Ts, const scalar pc, const scalar Tc, const scalarField &X, const scalarField &solMass, const scalarField &liqMass, scalarField &dMassPC) const =0
Update model.
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.
enthalpyTransferType
Enthalpy transfer type.
TypeName("phaseChangeModel")
Runtime type information.
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,...
OBJstream os(runTime.globalPath()/outputName)
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.