# PhasicFlow: particles Class Reference

particles Class Referenceabstract
Inheritance diagram for particles:
[legend]
Collaboration diagram for particles:
[legend]

## 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_D & | contactForce ()
const realx3PointField_D & | contactForce () const
realx3PointField_D & | contactTorque ()
const realx3PointField_D & | contactTorque () 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_D & | rAcceleration ()=0
virtual const realx3PointField_D & | rAcceleration () const =0
virtual const realVector_D & | boundingSphere () 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

Time & | time_
const word | integrationMethod_
dynamicPointStructure | dynPointStruct_
wordPointField & | shapeName_
int32PointField_HD & | id_
int8PointField_D & | propertyId_
realPointField_D & | diameter_
realPointField_D & | mass_
realx3PointField_D & | accelertion_
realx3PointField_D & | contactForce_
realx3PointField_D & | contactTorque_
particleIdHandler | idHandler_
Protected Attributes inherited from eventObserver
const eventSubscriber * | subscriber_ = nullptr
bool | subscribed_ = false
Protected Attributes inherited from demComponent
word | componentName_
systemControl & | control_
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]

const auto& pStruct | ( |  | ) | const

inline

Definition at line 118 of file particles.hpp.

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

Referenced by particles::activePointsMaskD(), particles::activePointsMaskH(), particles::activeRange(), particles::allActive(), particles::capacity(), interaction::interaction(), particles::numActive(), particles::pointPosition(), particles::position(), interactionBase::pStruct(), particles::size(), and sphereParticles::sphereParticles().

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

## 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

Definition at line 46 of file particles.hpp.

Referenced by particles::beforeIteration(), particles::dynPointStruct(), and particles::pStruct().

## shapeName_

wordPointField& shapeName_

protected

Definition at line 49 of file particles.hpp.

Referenced by particles::getFieldObjectList(), particles::shapeName(), and particles::shapName().

## 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:

- src/Particles/particles/particles.hpp
- src/Particles/particles/particles.cpp