36 #ifndef SurfaceReactionModel_H 37 #define SurfaceReactionModel_H 54 template<
class CloudType>
55 class SurfaceReactionModel
57 public CloudSubModelBase<CloudType>
161 #define makeSurfaceReactionModel(CloudType) \ 163 typedef Foam::CloudType::reactingMultiphaseCloudType \ 164 reactingMultiphaseCloudType; \ 165 defineNamedTemplateTypeNameAndDebug \ 167 Foam::SurfaceReactionModel<reactingMultiphaseCloudType>, \ 172 defineTemplateRunTimeSelectionTable \ 174 SurfaceReactionModel<reactingMultiphaseCloudType>, \ 180 #define makeSurfaceReactionModelType(SS, CloudType) \ 182 typedef Foam::CloudType::reactingMultiphaseCloudType \ 183 reactingMultiphaseCloudType; \ 184 defineNamedTemplateTypeNameAndDebug \ 185 (Foam::SS<reactingMultiphaseCloudType>, 0); \ 187 Foam::SurfaceReactionModel<reactingMultiphaseCloudType>:: \ 188 adddictionaryConstructorToTable \ 189 <Foam::SS<reactingMultiphaseCloudType>> \ 190 add##SS##CloudType##reactingMultiphaseCloudType##ConstructorToTable_; virtual autoPtr< SurfaceReactionModel< CloudType > > clone() const =0
Construct and return a clone.
declareRunTimeSelectionTable(autoPtr, SurfaceReactionModel, dictionary,(const dictionary &dict, CloudType &cloud),(dict, cloud))
Declare runtime constructor selection table.
A list of keyword definitions, which are a keyword followed by any number of values (e...
static autoPtr< SurfaceReactionModel< CloudType > > New(const dictionary &dict, CloudType &cloud)
Selector.
virtual ~SurfaceReactionModel()
Destructor.
const dictionary & dict() const
Return const access to the cloud dictionary.
const CloudType & owner() const
Return const access to the owner cloud.
TypeName("surfaceReactionModel")
Runtime type information.
virtual void info(Ostream &os)
Write injection info to stream.
A class for handling words, derived from string.
A cloud is a collection of lagrangian particles.
virtual scalar calculate(const scalar dt, const label celli, const scalar d, const scalar T, const scalar Tc, const scalar pc, const scalar rhoc, const scalar mass, const scalarField &YGas, const scalarField &YLiquid, const scalarField &YSolid, const scalarField &YMixture, const scalar N, scalarField &dMassGas, scalarField &dMassLiquid, scalarField &dMassSolid, scalarField &dMassSRCarrier) const =0
Update surface reactions.
volScalarField rhoc(IOobject(rhocValue.name(), runTime.timeName(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE), mesh, rhocValue)
An Ostream is an abstract base class for all output systems (streams, files, token lists...
scalar dMass_
Mass of lagrangian phase converted.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
SurfaceReactionModel(CloudType &owner)
Construct null from owner.
void addToSurfaceReactionMass(const scalar dMass)
Add to devolatilisation mass.
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.
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.
Templated surface reaction model class.
Templated base class for dsmc cloud.