CollidingParcel< ParcelType > Class Template Reference

Wrapper around kinematic parcel types to add collision modelling. More...

Inheritance diagram for CollidingParcel< ParcelType >:
[legend]
Collaboration diagram for CollidingParcel< ParcelType >:
[legend]

Classes

class  constantProperties
 Class to hold thermo particle constant properties. More...
 
class  iNew
 Factory class to read-construct particles used for. More...
 

Public Types

typedef ParcelType::trackingData trackingData
 Use base tracking data. More...
 

Public Member Functions

 TypeName ("CollidingParcel")
 Runtime type information. More...
 
 AddToPropertyList (ParcelType, " (fx fy fz)"+" (angularMomentumx angularMomentumy angularMomentumz)"+" (torquex torquey torquez)"+" collisionRecordsPairAccessed"+" collisionRecordsPairOrigProcOfOther"+" collisionRecordsPairOrigIdOfOther"+" (collisionRecordsPairData)"+" collisionRecordsWallAccessed"+" collisionRecordsWallPRel"+" (collisionRecordsWallData)")
 String representation of properties. More...
 
 CollidingParcel (const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti)
 Construct from mesh, coordinates and topology. More...
 
 CollidingParcel (const polyMesh &mesh, const vector &position, const label celli)
 Construct from a position and a cell, searching for the rest of the. More...
 
 CollidingParcel (const polyMesh &mesh, const barycentric &coordinates, const label celli, const label tetFacei, const label tetPti, const label typeId, const scalar nParticle0, const scalar d0, const scalar dTarget0, const vector &U0, const vector &f0, const vector &angularMomentum0, const vector &torque0, const typename ParcelType::constantProperties &constProps)
 Construct from components. More...
 
 CollidingParcel (const polyMesh &mesh, Istream &is, bool readFields=true, bool newFormat=true)
 Construct from Istream. More...
 
 CollidingParcel (const CollidingParcel &p)
 Construct as a copy. More...
 
 CollidingParcel (const CollidingParcel &p, const polyMesh &mesh)
 Construct as a copy. More...
 
virtual autoPtr< particleclone () const
 Construct and return a (basic particle) clone. More...
 
virtual autoPtr< particleclone (const polyMesh &mesh) const
 Construct and return a (basic particle) clone. More...
 
const vectorf () const
 Return const access to force. More...
 
const vectorangularMomentum () const
 Return const access to angular momentum. More...
 
const vectortorque () const
 Return const access to torque. More...
 
const collisionRecordListcollisionRecords () const
 Return const access to the collision records. More...
 
vectorf ()
 Return access to force. More...
 
vectorangularMomentum ()
 Return access to angular momentum. More...
 
vectortorque ()
 Return access to torque. More...
 
collisionRecordListcollisionRecords ()
 Return access to collision records. More...
 
vector omega () const
 Particle angular velocity. More...
 
template<class TrackCloudType >
bool move (TrackCloudType &cloud, trackingData &td, const scalar trackTime)
 Move the parcel. More...
 
virtual void transformProperties (const tensor &T)
 Transform the physical properties of the particle. More...
 
virtual void transformProperties (const vector &separation)
 Transform the physical properties of the particle. More...
 
void writeProperties (Ostream &os, const wordRes &filters, const word &delim, const bool namesOnly) const
 Write individual parcel properties to stream. More...
 

Static Public Member Functions

template<class CloudType >
static void readFields (CloudType &c)
 Read. More...
 
template<class CloudType >
static void writeFields (const CloudType &c)
 Write. More...
 
template<class CloudType >
static void readObjects (CloudType &c, const objectRegistry &obr)
 Read particle fields as objects from the obr registry. More...
 
template<class CloudType >
static void writeObjects (const CloudType &c, objectRegistry &obr)
 Write particle fields as objects into the obr registry. More...
 

Static Public Attributes

static const std::size_t sizeofFields
 Size in bytes of the fields. More...
 

Protected Attributes

vector f_
 Force on particle due to collisions [N]. More...
 
vector angularMomentum_
 Angular momentum of Parcel in global reference frame [kg m2/s]. More...
 
vector torque_
 Torque on particle due to collisions in global. More...
 
collisionRecordList collisionRecords_
 Particle collision records. More...
 

Friends

Ostreamoperator (Ostream &, const CollidingParcel< ParcelType > &)
 

Detailed Description

template<class ParcelType>
class Foam::CollidingParcel< ParcelType >

Wrapper around kinematic parcel types to add collision modelling.

Source files

Definition at line 77 of file CollidingParcel.H.

Member Typedef Documentation

◆ trackingData

Use base tracking data.

Definition at line 127 of file CollidingParcel.H.

Constructor & Destructor Documentation

◆ CollidingParcel() [1/6]

CollidingParcel ( const polyMesh mesh,
const barycentric coordinates,
const label  celli,
const label  tetFacei,
const label  tetPti 
)
inline

Construct from mesh, coordinates and topology.

Other properties initialised as null

Definition at line 65 of file CollidingParcelI.H.

◆ CollidingParcel() [2/6]

CollidingParcel ( const polyMesh mesh,
const vector position,
const label  celli 
)
inline

Construct from a position and a cell, searching for the rest of the.

required topology. Other properties are initialised as null.

Definition at line 83 of file CollidingParcelI.H.

◆ CollidingParcel() [3/6]

CollidingParcel ( const polyMesh mesh,
const barycentric coordinates,
const label  celli,
const label  tetFacei,
const label  tetPti,
const label  typeId,
const scalar  nParticle0,
const scalar  d0,
const scalar  dTarget0,
const vector U0,
const vector f0,
const vector angularMomentum0,
const vector torque0,
const typename ParcelType::constantProperties &  constProps 
)
inline

Construct from components.

Definition at line 99 of file CollidingParcelI.H.

◆ CollidingParcel() [4/6]

◆ CollidingParcel() [5/6]

CollidingParcel ( const CollidingParcel< ParcelType > &  p)

Construct as a copy.

◆ CollidingParcel() [6/6]

CollidingParcel ( const CollidingParcel< ParcelType > &  p,
const polyMesh mesh 
)

Construct as a copy.

Member Function Documentation

◆ TypeName()

TypeName ( "CollidingParcel< ParcelType >"  )

Runtime type information.

◆ AddToPropertyList()

AddToPropertyList ( ParcelType  ,
" (fx fy fz)"+" (angularMomentumx angularMomentumy angularMomentumz)"+" (torquex torquey torquez)"+" collisionRecordsPairAccessed"+" collisionRecordsPairOrigProcOfOther"+" collisionRecordsPairOrigIdOfOther"+" (collisionRecordsPairData)"+" collisionRecordsWallAccessed"+" collisionRecordsWallPRel"+" (collisionRecordsWallData)"   
)

String representation of properties.

◆ clone() [1/2]

virtual autoPtr< particle > clone ( ) const
inlinevirtual

Construct and return a (basic particle) clone.

Definition at line 229 of file CollidingParcel.H.

◆ clone() [2/2]

virtual autoPtr< particle > clone ( const polyMesh mesh) const
inlinevirtual

Construct and return a (basic particle) clone.

Definition at line 235 of file CollidingParcel.H.

References mesh.

◆ f() [1/2]

const Foam::vector & f
inline

Return const access to force.

Definition at line 159 of file CollidingParcelI.H.

◆ angularMomentum() [1/2]

const Foam::vector & angularMomentum
inline

Return const access to angular momentum.

Definition at line 167 of file CollidingParcelI.H.

◆ torque() [1/2]

const Foam::vector & torque
inline

Return const access to torque.

Definition at line 174 of file CollidingParcelI.H.

◆ collisionRecords() [1/2]

const Foam::collisionRecordList & collisionRecords
inline

Return const access to the collision records.

Definition at line 182 of file CollidingParcelI.H.

◆ f() [2/2]

Foam::vector & f
inline

Return access to force.

Definition at line 189 of file CollidingParcelI.H.

◆ angularMomentum() [2/2]

Foam::vector & angularMomentum
inline

Return access to angular momentum.

Definition at line 196 of file CollidingParcelI.H.

◆ torque() [2/2]

Foam::vector & torque
inline

Return access to torque.

Definition at line 203 of file CollidingParcelI.H.

◆ collisionRecords() [2/2]

Foam::collisionRecordList & collisionRecords
inline

Return access to collision records.

Definition at line 211 of file CollidingParcelI.H.

◆ omega()

Foam::vector omega
inline

Particle angular velocity.

Definition at line 218 of file CollidingParcelI.H.

◆ move()

bool move ( TrackCloudType &  cloud,
trackingData td,
const scalar  trackTime 
)

Move the parcel.

Definition at line 65 of file CollidingParcel.C.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, engineMesh::move(), NotImplemented, and p.

Here is the call graph for this function:

◆ transformProperties() [1/2]

void transformProperties ( const tensor T)
virtual

Transform the physical properties of the particle.

according to the given transformation tensor

Definition at line 122 of file CollidingParcel.C.

References T, Foam::transform(), and particle< Type >::transformProperties().

Here is the call graph for this function:

◆ transformProperties() [2/2]

void transformProperties ( const vector separation)
virtual

Transform the physical properties of the particle.

according to the given separation vector

Definition at line 135 of file CollidingParcel.C.

References particle< Type >::transformProperties().

Here is the call graph for this function:

◆ readFields()

void readFields ( CloudType c)
static

Read.

Definition at line 98 of file CollidingParcelIO.C.

References f(), IOobject::MUST_READ, and p.

Referenced by CollidingParcel< ParcelType >::CollidingParcel().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ writeFields()

void writeFields ( const CloudType c)
static

Write.

Definition at line 204 of file CollidingParcelIO.C.

References f(), IOobject::NO_READ, p, regIOobject::write(), and fieldAverage::writeFields().

Here is the call graph for this function:

◆ writeProperties()

void writeProperties ( Ostream os,
const wordRes filters,
const word delim,
const bool  namesOnly 
) const

Write individual parcel properties to stream.

Definition at line 295 of file CollidingParcelIO.C.

References os(), writeProp, and injectedParticle::writeProperties().

Here is the call graph for this function:

◆ readObjects()

void readObjects ( CloudType c,
const objectRegistry obr 
)
static

Read particle fields as objects from the obr registry.

Definition at line 320 of file CollidingParcelIO.C.

References f(), p, and injectedParticle::readObjects().

Here is the call graph for this function:

◆ writeObjects()

void writeObjects ( const CloudType c,
objectRegistry obr 
)
static

Write particle fields as objects into the obr registry.

Definition at line 348 of file CollidingParcelIO.C.

References f(), and p.

Here is the call graph for this function:

Friends And Related Function Documentation

◆ operator

Ostream & operator ( Ostream ,
const CollidingParcel< ParcelType > &   
)
friend

Member Data Documentation

◆ sizeofFields

const std::size_t sizeofFields
static

Size in bytes of the fields.

Definition at line 84 of file CollidingParcel.H.

Referenced by CollidingParcel< ParcelType >::CollidingParcel().

◆ f_

vector f_
protected

Force on particle due to collisions [N].

Definition at line 135 of file CollidingParcel.H.

Referenced by CollidingParcel< ParcelType >::CollidingParcel().

◆ angularMomentum_

vector angularMomentum_
protected

Angular momentum of Parcel in global reference frame [kg m2/s].

Definition at line 138 of file CollidingParcel.H.

Referenced by CollidingParcel< ParcelType >::CollidingParcel().

◆ torque_

vector torque_
protected

Torque on particle due to collisions in global.

reference frame [Nm]

Definition at line 142 of file CollidingParcel.H.

Referenced by CollidingParcel< ParcelType >::CollidingParcel().

◆ collisionRecords_

collisionRecordList collisionRecords_
protected

Particle collision records.

Definition at line 145 of file CollidingParcel.H.

Referenced by CollidingParcel< ParcelType >::CollidingParcel().


The documentation for this class was generated from the following files: