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_; virtual void info()
Write injection info.
virtual scalar TMax(const scalar p, const scalarField &X) const
Return maximum/limiting temperature.
dimensionedScalar Pr("Pr", dimless, laminarTransport)
static const 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 a number of values (eg...
void addToPhaseChangeMass(const scalar dMass)
Add to phase change mass.
const enthalpyTransferType & enthalpyTransfer() const
Return the enthalpy transfer type enumeration.
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.
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
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 Foam::string.
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.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
enthalpyTransferType enthalpyTransfer_
Enthalpy transfer type enumeration.
scalarField Re(const UList< complex > &cmplx)
Extract real component.
virtual scalar dh(const label idc, const label idl, const scalar p, const scalar T) const
Return the enthalpy per unit mass.
TypeName("phaseChangeModel")
Runtime type information.
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 Tvap(const scalarField &X) const
Return vapourisation temperature.
Templated base class for dsmc cloud.
enthalpyTransferType
Enthalpy transfer type.
scalar Sh() const
Sherwood number.
virtual ~PhaseChangeModel()=default
Destructor.
enthalpyTransferType wordToEnthalpyTransfer(const word &etName) const
Convert word to enthalpy transfer type.