particles Class Referenceabstract
Inheritance diagram for particles:
Collaboration diagram for particles:

Public Member Functions

 TypeInfo ("particles")
 
 particles (systemControl &control, const word &integrationMethod)
 
const auto & time () const
 
auto & time ()
 
auto integrationMethod () const
 
const auto & dynPointStruct () const
 
auto & dynPointStruct ()
 
const auto & pStruct () const
 
auto & pStruct ()
 
auto size () const
 
auto capacity () const
 
auto activePointsMaskD () const
 
auto numActive () const
 
bool allActive () const
 
auto activeRange () const
 
auto activePointsMaskH () const
 
const auto & pointPosition () const
 
const auto & position () const
 
const auto & pointVelocity () const
 
const auto & velocity () const
 
const auto & id () const
 
auto & id ()
 
const auto & diameter () const
 
auto & diameter ()
 
const auto & mass () const
 
auto & mass ()
 
const auto & accelertion () const
 
auto & accelertion ()
 
realx3PointField_DcontactForce ()
 
const realx3PointField_DcontactForce () const
 
realx3PointField_DcontactTorque ()
 
const realx3PointField_DcontactTorque () const
 
const auto & propertyId () const
 
auto & propertyId ()
 
const auto & shapeName () const
 
auto & shapName ()
 
bool beforeIteration () override
 
virtual bool insertParticles (const realx3Vector &position, const wordVector &shapes, const setFieldList &setField)=0
 
virtual realx3PointField_DrAcceleration ()=0
 
virtual const realx3PointField_DrAcceleration () const =0
 
virtual const realVector_DboundingSphere () const =0
 
virtual word shapeTypeName () const =0
 
virtual void boundingSphereMinMax (real &minDiam, real &maxDiam) const =0
 
- Public Member Functions inherited from eventObserver
 eventObserver ()
 
 eventObserver (const eventSubscriber &subscriber, bool subscribe=true)
 
virtual ~eventObserver ()
 
bool subscribed () const
 
bool subscribe (const eventSubscriber &subscriber)
 
void invalidateSubscriber ()
 
virtual bool update (const eventMessage &msg)=0
 
- Public Member Functions inherited from demParticles
 demParticles (systemControl &control)
 
- Public Member Functions inherited from demComponent
 TypeInfo ("demComponent")
 
 demComponent (const word &name, systemControl &control)
 
virtual ~demComponent ()=default
 
const auto & control () const
 
auto & control ()
 
real dt () const
 
real currentTime () const
 
auto & timers ()
 
const auto & timers () const
 
virtual bool iterate ()=0
 
virtual bool afterIteration ()=0
 

Protected Member Functions

virtual uniquePtr< List< eventObserver * > > getFieldObjectList () const
 
void zeroForce ()
 
void zeroTorque ()
 

Protected Attributes

Timetime_
 
const word integrationMethod_
 
dynamicPointStructure dynPointStruct_
 
wordPointFieldshapeName_
 
int32PointField_HDid_
 
int8PointField_DpropertyId_
 
realPointField_Ddiameter_
 
realPointField_Dmass_
 
realx3PointField_Daccelertion_
 
realx3PointField_DcontactForce_
 
realx3PointField_DcontactTorque_
 
particleIdHandler idHandler_
 
- Protected Attributes inherited from eventObserver
const eventSubscribersubscriber_ = nullptr
 
bool subscribed_ = false
 
- Protected Attributes inherited from demComponent
word componentName_
 
systemControlcontrol_
 
Timers timers_
 

Detailed Description

Definition at line 33 of file particles.hpp.

Constructor & Destructor Documentation

◆ particles()

particles ( systemControl control,
const word integrationMethod 
)

Definition at line 26 of file particles.cpp.

References pStruct.

Member Function Documentation

◆ getFieldObjectList()

pFlow::uniquePtr< pFlow::List< pFlow::eventObserver * > > getFieldObjectList ( ) const
protectedvirtual

Reimplemented in sphereParticles.

Definition at line 154 of file particles.cpp.

References particles::diameter_, particles::id_, particles::mass_, particles::propertyId_, and particles::shapeName_.

Referenced by sphereParticles::getFieldObjectList().

Here is the caller graph for this function:

◆ zeroForce()

void zeroForce ( )
inlineprotected

Definition at line 78 of file particles.hpp.

References particles::contactForce_, and pFlow::zero3.

Referenced by particles::beforeIteration().

Here is the caller graph for this function:

◆ zeroTorque()

void zeroTorque ( )
inlineprotected

Definition at line 83 of file particles.hpp.

References particles::contactTorque_, and pFlow::zero3.

Referenced by particles::beforeIteration().

Here is the caller graph for this function:

◆ TypeInfo()

TypeInfo ( "particles"  )

◆ time() [1/2]

const auto& time ( ) const
inline

Definition at line 95 of file particles.hpp.

References particles::time_.

Referenced by sphereParticles::sphereParticles().

Here is the caller graph for this function:

◆ time() [2/2]

auto& time ( )
inline

Definition at line 99 of file particles.hpp.

References particles::time_.

◆ integrationMethod()

auto integrationMethod ( ) const
inline

Definition at line 103 of file particles.hpp.

References particles::integrationMethod_.

Referenced by sphereParticles::sphereParticles().

Here is the caller graph for this function:

◆ dynPointStruct() [1/2]

const auto& dynPointStruct ( ) const
inline

Definition at line 108 of file particles.hpp.

References particles::dynPointStruct_.

Referenced by particles::pointVelocity(), and particles::velocity().

Here is the caller graph for this function:

◆ dynPointStruct() [2/2]

auto& dynPointStruct ( )
inline

Definition at line 113 of file particles.hpp.

References particles::dynPointStruct_.

◆ pStruct() [1/2]

◆ pStruct() [2/2]

auto& pStruct ( )
inline

Definition at line 122 of file particles.hpp.

References particles::dynPointStruct_, and dynamicPointStructure::pStruct().

Here is the call graph for this function:

◆ size()

auto size ( ) const
inline

Definition at line 126 of file particles.hpp.

References particles::pStruct().

Here is the call graph for this function:

◆ capacity()

auto capacity ( ) const
inline

Definition at line 130 of file particles.hpp.

References particles::pStruct().

Here is the call graph for this function:

◆ activePointsMaskD()

auto activePointsMaskD ( ) const
inline

Definition at line 134 of file particles.hpp.

References particles::pStruct().

Here is the call graph for this function:

◆ numActive()

auto numActive ( ) const
inline

Definition at line 138 of file particles.hpp.

References particles::pStruct().

Referenced by sphereInteraction< contactForceModel, geometryMotionModel, contactListType >::iterate().

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

◆ allActive()

bool allActive ( ) const
inline

Definition at line 143 of file particles.hpp.

References particles::pStruct().

Here is the call graph for this function:

◆ activeRange()

auto activeRange ( ) const
inline

Definition at line 147 of file particles.hpp.

References particles::pStruct().

Here is the call graph for this function:

◆ activePointsMaskH()

auto activePointsMaskH ( ) const
inline

Definition at line 151 of file particles.hpp.

References particles::pStruct().

Here is the call graph for this function:

◆ pointPosition()

const auto& pointPosition ( ) const
inline

Definition at line 155 of file particles.hpp.

References particles::pStruct().

Here is the call graph for this function:

◆ position()

const auto& position ( ) const
inline

Definition at line 159 of file particles.hpp.

References particles::pStruct().

Here is the call graph for this function:

◆ pointVelocity()

const auto& pointVelocity ( ) const
inline

Definition at line 164 of file particles.hpp.

References particles::dynPointStruct().

Here is the call graph for this function:

◆ velocity()

const auto& velocity ( ) const
inline

Definition at line 168 of file particles.hpp.

References particles::dynPointStruct().

Here is the call graph for this function:

◆ id() [1/2]

const auto& id ( ) const
inline

Definition at line 172 of file particles.hpp.

References particles::id_.

◆ id() [2/2]

auto& id ( )
inline

Definition at line 176 of file particles.hpp.

References particles::id_.

◆ diameter() [1/2]

const auto& diameter ( ) const
inline

Definition at line 180 of file particles.hpp.

References particles::diameter_.

Referenced by sphereParticles::boundingSphere().

Here is the caller graph for this function:

◆ diameter() [2/2]

auto& diameter ( )
inline

Definition at line 184 of file particles.hpp.

References particles::diameter_.

◆ mass() [1/2]

const auto& mass ( ) const
inline

Definition at line 188 of file particles.hpp.

References particles::mass_.

◆ mass() [2/2]

auto& mass ( )
inline

Definition at line 192 of file particles.hpp.

References particles::mass_.

◆ accelertion() [1/2]

const auto& accelertion ( ) const
inline

Definition at line 196 of file particles.hpp.

References particles::accelertion_.

◆ accelertion() [2/2]

auto& accelertion ( )
inline

Definition at line 200 of file particles.hpp.

References particles::accelertion_.

◆ contactForce() [1/2]

realx3PointField_D& contactForce ( )
inline

Definition at line 205 of file particles.hpp.

References particles::contactForce_.

◆ contactForce() [2/2]

const realx3PointField_D& contactForce ( ) const
inline

Definition at line 211 of file particles.hpp.

References particles::contactForce_.

◆ contactTorque() [1/2]

realx3PointField_D& contactTorque ( )
inline

Definition at line 217 of file particles.hpp.

References particles::contactTorque_.

◆ contactTorque() [2/2]

const realx3PointField_D& contactTorque ( ) const
inline

Definition at line 223 of file particles.hpp.

References particles::contactTorque_.

◆ propertyId() [1/2]

const auto& propertyId ( ) const
inline

Definition at line 228 of file particles.hpp.

References particles::propertyId_.

◆ propertyId() [2/2]

auto& propertyId ( )
inline

Definition at line 232 of file particles.hpp.

References particles::propertyId_.

◆ shapeName()

const auto& shapeName ( ) const
inline

Definition at line 236 of file particles.hpp.

References particles::shapeName_.

◆ shapName()

auto& shapName ( )
inline

Definition at line 240 of file particles.hpp.

References particles::shapeName_.

◆ beforeIteration()

bool beforeIteration ( )
inlineoverridevirtual

Implements demComponent.

Reimplemented in sphereParticles.

Definition at line 244 of file particles.hpp.

References demComponent::control(), particles::dynPointStruct_, dynamicPointStructure::markDeleteOutOfBox(), particles::zeroForce(), and particles::zeroTorque().

Referenced by sphereParticles::beforeIteration().

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

◆ insertParticles()

virtual bool insertParticles ( const realx3Vector position,
const wordVector shapes,
const setFieldList setField 
)
pure virtual

Implemented in sphereParticles.

◆ rAcceleration() [1/2]

virtual realx3PointField_D& rAcceleration ( )
pure virtual

Implemented in sphereParticles.

◆ rAcceleration() [2/2]

virtual const realx3PointField_D& rAcceleration ( ) const
pure virtual

Implemented in sphereParticles.

◆ boundingSphere()

virtual const realVector_D& boundingSphere ( ) const
pure virtual

Implemented in sphereParticles.

◆ shapeTypeName()

virtual word shapeTypeName ( ) const
pure virtual

Implemented in sphereParticles.

Referenced by interaction::create().

Here is the caller graph for this function:

◆ boundingSphereMinMax()

virtual void boundingSphereMinMax ( real minDiam,
real maxDiam 
) const
pure virtual

Implemented in sphereParticles.

Member Data Documentation

◆ time_

Time& time_
protected

Definition at line 41 of file particles.hpp.

Referenced by particles::time().

◆ integrationMethod_

const word integrationMethod_
protected

Definition at line 43 of file particles.hpp.

Referenced by particles::integrationMethod().

◆ dynPointStruct_

dynamicPointStructure dynPointStruct_
protected

◆ shapeName_

wordPointField& shapeName_
protected

◆ id_

int32PointField_HD& id_
protected

Definition at line 52 of file particles.hpp.

Referenced by particles::getFieldObjectList(), and particles::id().

◆ propertyId_

int8PointField_D& propertyId_
protected

Definition at line 55 of file particles.hpp.

Referenced by particles::getFieldObjectList(), and particles::propertyId().

◆ diameter_

realPointField_D& diameter_
protected

Definition at line 58 of file particles.hpp.

Referenced by particles::diameter(), and particles::getFieldObjectList().

◆ mass_

realPointField_D& mass_
protected

Definition at line 61 of file particles.hpp.

Referenced by particles::getFieldObjectList(), and particles::mass().

◆ accelertion_

realx3PointField_D& accelertion_
protected

Definition at line 64 of file particles.hpp.

Referenced by particles::accelertion().

◆ contactForce_

realx3PointField_D& contactForce_
protected

Definition at line 67 of file particles.hpp.

Referenced by particles::contactForce(), and particles::zeroForce().

◆ contactTorque_

realx3PointField_D& contactTorque_
protected

Definition at line 70 of file particles.hpp.

Referenced by particles::contactTorque(), and particles::zeroTorque().

◆ idHandler_

particleIdHandler idHandler_
protected

Definition at line 74 of file particles.hpp.


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