41#ifndef CollidingCloud_H
42#define CollidingCloud_H
58template<
class CloudType>
65template<
class CloudType>
125 template<
class TrackCloudType>
128 TrackCloudType&
cloud,
198 inline const typename parcelType::constantProperties&
230 template<
class TrackCloudType>
233 TrackCloudType&
cloud,
234 typename parcelType::trackingData& td
const uniformDimensionedVectorField & g
ParticleType particleType
Adds coolisions to kinematic clouds.
const parcelType::constantProperties & constProps() const
Return the constant properties.
void setModels()
Set cloud sub-models.
void motion(TrackCloudType &cloud, typename parcelType::trackingData &td)
Particle motion.
void storeState()
Store the current cloud state.
autoPtr< CollisionModel< CollidingCloud< CloudType > > > collisionModel_
Collision model.
scalar rotationalKineticEnergyOfSystem() const
Total rotational kinetic energy in the system.
void cloudReset(CollidingCloud< CloudType > &c)
Reset state of cloud.
void moveCollide(TrackCloudType &cloud, typename parcelType::trackingData &td, const scalar deltaT)
Move-collide particles.
CloudType::particleType parcelType
Type of parcel the cloud was instantiated for.
const CollidingCloud & cloudCopy() const
Return a reference to the cloud copy.
CloudType cloudType
Type of cloud this cloud was instantiated for.
virtual autoPtr< Cloud< parcelType > > clone(const word &name)
Construct and return clone based on (this) with new name.
virtual autoPtr< Cloud< parcelType > > cloneBare(const word &name) const
Construct and return bare clone based on (this) with new name.
void evolve()
Evolve the cloud.
parcelType::constantProperties constProps_
Thermo parcel constant properties.
CollidingCloud< CloudType > collidingCloudType
Convenience typedef for this cloud type.
void info()
Print cloud information.
void restoreState()
Reset the current cloud to the previously stored state.
virtual ~CollidingCloud()
Destructor.
const CollisionModel< CollidingCloud< CloudType > > & collision() const
Return const access to the collision model.
Templated collision model class.
Templated base class for dsmc cloud.
const word & cloudName() const
Return the cloud type.
const fvMesh & mesh() const
Return reference to the mesh.
Class to hold DSMC particle constant properties.
const word & name() const noexcept
Return the object name.
autoPtr< IOobject > clone() const
Clone.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A cloud is a registry collection of lagrangian particles.
Class used to pass data into container.
Mesh data needed to do the Finite Volume discretisation.
A class for handling words, derived from Foam::string.
const volScalarField & mu
void readFields(const typename GeoFieldType::Mesh &mesh, const IOobjectList &objects, const wordHashSet &selectedFields, LIFOStack< regIOobject * > &storedObjects)
Read the selected GeometricFields of the templated type.