Go to the documentation of this file.
36 template<
class CloudType>
39 devolatilisationModel_.reset
43 this->subModelProperties(),
48 surfaceReactionModel_.reset
52 this->subModelProperties(),
59 template<
class CloudType>
65 CloudType::cloudReset(
c);
67 devolatilisationModel_.reset(
c.devolatilisationModel_.ptr());
68 surfaceReactionModel_.reset(
c.surfaceReactionModel_.ptr());
70 dMassDevolatilisation_ =
c.dMassDevolatilisation_;
71 dMassSurfaceReaction_ =
c.dMassSurfaceReaction_;
77 template<
class CloudType>
90 cloudCopyPtr_(
nullptr),
91 constProps_(this->particleProperties()),
92 devolatilisationModel_(
nullptr),
93 surfaceReactionModel_(
nullptr),
94 dMassDevolatilisation_(0.0),
95 dMassSurfaceReaction_(0.0)
104 this->deleteLostParticles();
108 if (this->
solution().resetSourcesOnStartup())
115 template<
class CloudType>
124 cloudCopyPtr_(
nullptr),
125 constProps_(
c.constProps_),
126 devolatilisationModel_(
c.devolatilisationModel_->clone()),
127 surfaceReactionModel_(
c.surfaceReactionModel_->clone()),
128 dMassDevolatilisation_(
c.dMassDevolatilisation_),
129 dMassSurfaceReaction_(
c.dMassSurfaceReaction_)
133 template<
class CloudType>
143 cloudCopyPtr_(
nullptr),
145 devolatilisationModel_(
nullptr),
146 surfaceReactionModel_(
nullptr),
147 dMassDevolatilisation_(0.0),
148 dMassSurfaceReaction_(0.0)
154 template<
class CloudType>
161 template<
class CloudType>
165 const scalar lagrangianDt
168 CloudType::setParcelThermoProperties(parcel, lagrangianDt);
175 parcel.YLiquid() = this->
composition().Y0(idLiquid);
181 if (constProps_.rho0() == -1)
187 this->
composition().thermo().thermo().p()[parcel.cell()];
188 const scalar
T0 = constProps_.T0();
195 template<
class CloudType>
199 const scalar lagrangianDt,
200 const bool fullyDescribed
203 CloudType::checkParcelProperties(parcel, lagrangianDt, fullyDescribed);
211 this->checkSuppliedComposition
217 this->checkSuppliedComposition
223 this->checkSuppliedComposition
233 template<
class CloudType>
240 clone(this->
name() +
"Copy").ptr()
246 template<
class CloudType>
249 cloudReset(cloudCopyPtr_());
250 cloudCopyPtr_.clear();
254 template<
class CloudType>
257 CloudType::resetSourceTerms();
261 template<
class CloudType>
266 typename parcelType::trackingData td(*
this);
268 this->
solve(*
this, td);
273 template<
class CloudType>
285 template<
class CloudType>
290 this->devolatilisation().info(
Info);
291 this->surfaceReaction().info(
Info);
295 template<
class CloudType>
298 if (this->compositionModel_)
Templated surface reaction model class.
void cloudReset(ReactingMultiphaseCloud< CloudType > &c)
Reset state of cloud.
Selector class for relaxation factors, solver type and solution.
void restoreState()
Reset the current cloud to the previously stored state.
const word cloudName(propsDict.get< word >("cloud"))
A class for handling words, derived from Foam::string.
Thermo package for (S)olids (L)iquids and (G)ases Takes reference to thermo package,...
void storeState()
Store the current cloud state.
Virtual abstract base class for templated reactingMultiphaseCloud.
Basic thermodynamics type based on the use of fitting functions for cp, h, s obtained from the templa...
void info()
Print cloud information.
void checkParcelProperties(parcelType &parcel, const scalar lagrangianDt, const bool fullyDescribed)
Check parcel properties.
ParticleType parcelType
Parcels are just particles.
virtual void writeFields() const
Write the field data for the cloud.
basicSpecieMixture & composition
void setModels()
Set cloud sub-models.
messageStream Info
Information stream (stdout output on master, null elsewhere)
Templated devolatilisation model class.
DSMCCloud< dsmcParcel > CloudType
Mesh data needed to do the Finite Volume discretisation.
const uniformDimensionedVectorField & g
virtual ~ReactingMultiphaseCloud()
Destructor.
void readFields(const typename GeoFieldType::Mesh &mesh, const IOobjectList &objects, const wordHashSet &selectedFields, LIFOStack< regIOobject * > &storedObjects)
Read the selected GeometricFields of the templated type.
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tdf1, const word &name, const dimensionSet &dimensions)
Global function forwards to reuseTmpDimensionedField::New.
void setParcelThermoProperties(parcelType &parcel, const scalar lagrangianDt)
Set parcel thermo properties.
void evolve()
Evolve the cloud.
void resetSourceTerms()
Reset the cloud source terms.
Base cloud calls templated on particle type.
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
const dimensionedScalar c
Speed of light in a vacuum.
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
virtual void autoMap(const mapPolyMesh &)
Remap the cells of particles corresponding to the.
const volScalarField & p0
Templated base class for multiphase reacting cloud.
void writeFields(const fvMesh &mesh, const wordHashSet &selectedFields, const bool writeFaceFields)