45 #ifndef ThermoParcel_H 46 #define ThermoParcel_H 57 template<
class ParcelType>
60 template<
class ParcelType>
71 template<
class ParcelType>
85 public ParcelType::constantProperties
128 inline scalar
T0()
const;
131 inline scalar
TMin()
const;
134 inline scalar
TMax()
const;
141 inline scalar
Cp0()
const;
149 inline scalar
f0()
const;
155 public ParcelType::trackingData
196 typedef typename ParcelType::trackingData::trackPart
trackPart;
201 template <
class TrackCloudType>
204 const TrackCloudType&
cloud,
205 trackPart part = ParcelType::trackingData::tpLinearTrack
234 inline scalar
Tc()
const;
240 inline scalar
Cpc()
const;
243 inline scalar&
Cpc();
263 template<
class TrackCloudType>
266 TrackCloudType&
cloud,
304 const label tetFacei,
323 const label tetFacei,
326 const scalar nParticle0,
328 const scalar dTarget0,
331 const vector& angularMomentum0,
342 bool newFormat =
true 367 const polyMesh& mesh_;
376 autoPtr<ThermoParcel<ParcelType>>
operator()(Istream& is)
const 378 return autoPtr<ThermoParcel<ParcelType>>
380 new ThermoParcel<ParcelType>(mesh_, is,
true)
391 inline scalar
T()
const;
394 inline scalar
Cp()
const;
397 inline scalar
hs()
const;
412 template<
class TrackCloudType>
416 template<
class TrackCloudType>
419 TrackCloudType& cloud,
425 template<
class TrackCloudType>
428 TrackCloudType& cloud,
439 template<
class TrackCloudType>
442 TrackCloudType& cloud,
451 template<
class CloudType>
455 template<
class CloudType>
464 const bool namesOnly =
false 468 template<
class CloudType>
472 template<
class CloudType>
478 friend Ostream& operator<< <ParcelType>
ParcelType::trackingData::trackPart trackPart
dimensionedScalar Pr("Pr", dimless, laminarTransport)
const interpolation< scalar > & kappaInterp() const
Return const access to the interpolator for continuous.
scalar T0() const
Return const access to the particle initial temperature [K].
DSMCCloud< dsmcParcel > CloudType
scalar TMin() const
Return const access to minimum temperature [K].
A list of keyword definitions, which are a keyword followed by a number of values (eg...
scalar Cp_
Specific heat capacity [J/(kg.K)].
scalar T() const
Return const access to temperature.
Class to hold thermo particle constant properties.
void calc(TrackCloudType &cloud, trackingData &td, const scalar dt)
Update parcel properties over the time interval.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
void setTMax(const scalar TMax)
Set the maximum temperature [K].
bool cp(const fileName &src, const fileName &dst, const bool followLink=true)
Copy the source to the destination (recursively if necessary).
trackingData(const TrackCloudType &cloud, trackPart part=ParcelType::trackingData::tpLinearTrack)
Construct from components.
const volScalarField & kappa() const
Return access to the locally stored carrier kappa field.
static const std::size_t sizeofFields
Size in bytes of the fields.
ThermoParcel(const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti)
Construct from mesh, coordinates and topology.
const interpolation< scalar > & GInterp() const
Return const access to the interpolator for continuous.
constantProperties()
Null constructor.
const dimensionedScalar kappa
Coulomb constant: default SI units: [N.m2/C2].
const interpolation< scalar > & TInterp() const
Return const access to the interpolator for continuous.
iNew(const polyMesh &mesh)
virtual autoPtr< particle > clone() const
Construct and return a (basic particle) clone.
scalar f0() const
Return const access to the particle scattering factor [].
TypeName("ThermoParcel")
Runtime type information.
scalar Cp() const
Return const access to specific heat capacity.
scalar T_
Temperature [K].
static void readFields(CloudType &c)
Read.
A class for handling words, derived from Foam::string.
A cloud is a registry collection of lagrangian particles.
void calcSurfaceValues(TrackCloudType &cloud, trackingData &td, const scalar T, scalar &Ts, scalar &rhos, scalar &mus, scalar &Pr, scalar &kappas) const
Calculate surface thermo properties.
void cellValueSourceCorrection(TrackCloudType &cloud, trackingData &td, const scalar dt)
Correct cell values using latest transfer information.
scalar hs() const
Return the parcel sensible enthalpy.
A List of wordRe with additional matching capabilities.
scalar Cp0() const
Return const access to the particle specific heat capacity.
static void writeFields(const CloudType &c)
Write.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
OBJstream os(runTime.globalPath()/outputName)
scalar Tc() const
Return the continuous phase temperature.
static void writeObjects(const CloudType &c, objectRegistry &obr)
Write particle fields as objects into the obr registry.
static void readObjects(CloudType &c, const objectRegistry &obr)
Read particle fields as objects from the obr registry.
scalarField Re(const UList< complex > &cmplx)
Extract real component.
const interpolation< scalar > & CpInterp() const
Return const access to the interpolator for continuous.
PtrList< coordinateSystem > coordinates(solidRegions.size())
scalar calcHeatTransfer(TrackCloudType &cloud, trackingData &td, const scalar dt, const scalar Re, const scalar Pr, const scalar kappa, const scalar NCpW, const scalar Sh, scalar &dhsTrans, scalar &Sph)
Calculate new particle temperature.
AddToPropertyList(ParcelType, " T"+" Cp")
String representation of properties.
scalar Cpc() const
Return the continuous phase specific heat capacity.
const dimensionedScalar c
Speed of light in a vacuum.
void setCellValues(TrackCloudType &cloud, trackingData &td)
Set cell values.
const volScalarField & Cp() const
Return access to the locally stored carrier Cp field.
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
Mesh consisting of general polyhedral cells.
Registry of regIOobjects.
Templated base class for dsmc cloud.
autoPtr< ThermoParcel< ParcelType > > operator()(Istream &is) const
void writeProperties(Ostream &os, const wordRes &filters, const word &delim, const bool namesOnly=false) const
Write individual parcel properties to stream.
scalar TMax() const
Return const access to maximum temperature [K].
Thermodynamic parcel class with one/two-way coupling with the continuous phase. Includes Kinematic pa...
scalar epsilon0() const
Return const access to the particle emissivity [].