41#ifndef DevolatilisationModel_H
42#define DevolatilisationModel_H
58template<
class CloudType>
156#define makeDevolatilisationModel(CloudType) \
158 typedef Foam::CloudType::reactingMultiphaseCloudType \
159 reactingMultiphaseCloudType; \
160 defineNamedTemplateTypeNameAndDebug \
162 Foam::DevolatilisationModel<reactingMultiphaseCloudType>, \
167 defineTemplateRunTimeSelectionTable \
169 DevolatilisationModel<reactingMultiphaseCloudType>, \
175#define makeDevolatilisationModelType(SS, CloudType) \
177 typedef Foam::CloudType::reactingMultiphaseCloudType \
178 reactingMultiphaseCloudType; \
179 defineNamedTemplateTypeNameAndDebug \
180 (Foam::SS<reactingMultiphaseCloudType>, 0); \
182 Foam::DevolatilisationModel<reactingMultiphaseCloudType>:: \
183 adddictionaryConstructorToTable \
184 <Foam::SS<reactingMultiphaseCloudType>> \
185 add##SS##CloudType##reactingMultiphaseCloudType##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 devolatilisation model class.
virtual void calculate(const scalar dt, const scalar age, const scalar mass0, const scalar mass, const scalar T, const scalarField &YGasEff, const scalarField &YLiquidEff, const scalarField &YSolidEff, label &canCombust, scalarField &dMassDV) const =0
Update model.
scalar dMass_
Mass of lagrangian phase converted.
virtual void info(Ostream &os)
Write injection info to stream.
virtual autoPtr< DevolatilisationModel< CloudType > > clone() const =0
Construct and return a clone.
static autoPtr< DevolatilisationModel< CloudType > > New(const dictionary &dict, CloudType &owner)
Selector.
virtual ~DevolatilisationModel()
Destructor.
TypeName("devolatilisationModel")
Runtime type information.
declareRunTimeSelectionTable(autoPtr, DevolatilisationModel, dictionary,(const dictionary &dict, CloudType &owner),(dict, owner))
Declare runtime constructor selection table.
void addToDevolatilisationMass(const scalar dMass)
Add to devolatilisation mass.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
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.
OBJstream os(runTime.globalPath()/outputName)
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)
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.