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