36 #ifndef AtomisationModel_H 37 #define AtomisationModel_H 53 template<
class CloudType>
54 class AtomisationModel
56 public CloudSubModelBase<CloudType>
70 const dictionary&
dict,
85 const dictionary& dict,
94 virtual autoPtr<AtomisationModel<CloudType>>
clone()
const = 0;
102 static autoPtr<AtomisationModel<CloudType>>
New 104 const dictionary& dict,
112 scalar
Taverage(
const scalar& Tliq,
const scalar& Tc)
const;
118 virtual bool calcChi()
const = 0;
129 const scalar volFlowRate,
133 const vector& injectionPos,
134 const scalar pAmbient,
147 #define makeAtomisationModel(CloudType) \ 149 typedef Foam::CloudType::sprayCloudType sprayCloudType; \ 150 defineNamedTemplateTypeNameAndDebug \ 152 Foam::AtomisationModel<sprayCloudType>, \ 158 defineTemplateRunTimeSelectionTable \ 160 AtomisationModel<sprayCloudType>, \ 166 #define makeAtomisationModelType(SS, CloudType) \ 168 typedef Foam::CloudType::sprayCloudType sprayCloudType; \ 169 defineNamedTemplateTypeNameAndDebug(Foam::SS<sprayCloudType>, 0); \ 171 Foam::AtomisationModel<sprayCloudType>:: \ 172 adddictionaryConstructorToTable<Foam::SS<sprayCloudType>> \ 173 add##SS##CloudType##sprayCloudType##ConstructorToTable_;
virtual bool calcChi() const =0
Flag to indicate if chi needs to be calculated.
DSMCCloud< dsmcParcel > CloudType
TypeName("atomisationModel")
Runtime type information.
Vector< scalar > vector
A scalar version of the templated Vector.
declareRunTimeSelectionTable(autoPtr, AtomisationModel, dictionary,(const dictionary &dict, CloudType &owner),(dict, owner))
Declare runtime constructor selection table.
const dictionary & dict() const
Return const access to the cloud dictionary.
AtomisationModel(CloudType &owner)
Construct null from owner.
const CloudType & owner() const
Return const access to the owner cloud.
const dimensionedScalar sigma
Stefan-Boltzmann constant: default SI units: [W/m^2/K^4].
dimensionedScalar pos(const dimensionedScalar &ds)
virtual ~AtomisationModel()
Destructor.
virtual autoPtr< AtomisationModel< CloudType > > clone() const =0
Construct and return a clone.
virtual void update(const scalar dt, scalar &d, scalar &liquidCore, scalar &tc, const scalar rho, const scalar mu, const scalar sigma, const scalar volFlowRate, const scalar rhoAv, const scalar Urel, const vector &pos, const vector &injectionPos, const scalar pAmbient, const scalar chi, Random &rndGen) const =0
const dimensionedScalar mu
Atomic mass unit.
scalar Taverage(const scalar &Tliq, const scalar &Tc) const
Average temperature calculation.
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.
Macros to ease declaration of run-time selection tables.
static autoPtr< AtomisationModel< CloudType > > New(const dictionary &dict, CloudType &owner)
Selector.
virtual scalar initLiquidCore() const =0
Initial value of liquidCore.