Public Member Functions | |
TypeInfo ("particles") | |
particles (systemControl &control) | |
const auto & | dynPointStruct () const |
const pointStructure & | pStruct () const |
const auto & | simDomain () const |
const auto & | thisDomain () const |
const auto & | extendedDomain () const |
auto | size () const |
auto | capacity () const |
auto | numActive () const |
bool | isAllActive () const |
const auto & | pointPosition () const |
const auto & | velocity () const |
const auto & | accelertion () const |
auto & | accelertion () |
auto & | contactForce () |
const auto & | contactForce () const |
auto & | contactTorque () |
const auto & | contactTorque () const |
uint | maxId () const |
bool | beforeIteration () override |
This is called in time loop, before iterate. More... | |
bool | iterate () override |
This is called in time loop. More... | |
bool | afterIteration () override |
This is called in time loop, after iterate. More... | |
virtual bool | insertParticles (const realx3Vector &position, const wordVector &shapesNames, const anyList &setVarList)=0 |
virtual const uint32PointField_D & | propertyId () const =0 |
virtual const realPointField_D & | diameter () const =0 |
virtual const realPointField_D & | mass () const =0 |
virtual realx3PointField_D & | rAcceleration ()=0 |
virtual const realx3PointField_D & | rAcceleration () const =0 |
virtual const realPointField_D & | boundingSphere () const =0 |
virtual word | shapeTypeName () const =0 |
virtual const shape & | getShapes () const =0 |
virtual void | boundingSphereMinMax (real &minDiam, real &maxDiam) const =0 |
![]() | |
observer (message msg) | |
observer (const subscriber *subscrbr, message msg) | |
virtual | ~observer () |
void | subscribe (const subscriber *subscrbr, message msg) |
observer & | addEvent (message::EVENT event) |
bool | subscribed () const |
void | addToSubscriber (const subscriber *subscrbr, message msg) |
bool | addToSubscriber (const subscriber &subscriber) |
virtual bool | hearChanges (real t, real dt, uint32 iter, const message &msg, const anyList &varList)=0 |
![]() | |
TypeInfo ("demComponent") | |
Type info. More... | |
demComponent (const word &name, systemControl &control) | |
construct from components More... | |
demComponent (const demComponent &)=delete | |
No copy constructor. More... | |
demComponent (demComponent &&)=delete | |
No move constructor. More... | |
demComponent & | operator= (const demComponent &)=delete |
No copy assignment. More... | |
demComponent & | operator= (demComponent &&)=delete |
No move assignment. More... | |
virtual | ~demComponent ()=default |
destructor More... | |
const auto & | control () const |
Const ref to systemControl. More... | |
auto & | control () |
Ref to systemControl. More... | |
real | dt () const |
Time step of integration. More... | |
real | currentTime () const |
Current simulation time. More... | |
uint32 | currentIter () const |
return current iteration number More... | |
timeInfo | TimeInfo () const |
return time info of the simulaiton More... | |
const auto & | time () const |
auto & | time () |
const auto & | timers () const |
Const ref to timers. More... | |
auto & | timers () |
Ref to timers. More... | |
virtual bool | beforeTimeLoop () |
This is called before the start of time loop. More... | |
virtual bool | afterTimeLoop () |
This is called after the time loop. More... | |
Protected Member Functions | |
void | zeroForce () |
void | zeroTorque () |
auto & | dynPointStruct () |
auto & | pointPosition () |
auto & | idHandler () |
auto & | shapeIndex () |
Private Attributes | |
dynamicPointStructure | dynPointStruct_ |
dynamic point structure for particles center mass More... | |
uint32PointField_D | shapeIndex_ |
shape index of each particle More... | |
realx3PointField_D | accelertion_ |
acceleration on device More... | |
realx3PointField_D | contactForce_ |
contact force field More... | |
realx3PointField_D | contactTorque_ |
contact torque field More... | |
uniquePtr< particleIdHandler > | idHandler_ = nullptr |
handling new ids for new particles More... | |
Timer | baseFieldBoundaryUpdateTimer_ |
Static Private Attributes | |
static const message | defaultMessage_ { message::DEFAULT } |
messages for this objects More... | |
Additional Inherited Members | |
![]() | |
static constexpr auto | numEvents () |
Definition at line 33 of file particles.hpp.
|
explicit |
Definition at line 22 of file particles.cpp.
References observer::addToSubscriber(), and particles::dynPointStruct_.
|
inlineprotected |
Definition at line 64 of file particles.hpp.
References particles::contactForce_, pointField< T, MemorySpace >::fill(), and pFlow::zero3.
|
inlineprotected |
Definition at line 69 of file particles.hpp.
References particles::contactTorque_, pointField< T, MemorySpace >::fill(), and pFlow::zero3.
|
inlineprotected |
Definition at line 74 of file particles.hpp.
References particles::dynPointStruct_.
Referenced by ContactSearch< searchMethod >::BroadSearch(), ContactSearch< searchMethod >::ContactSearch(), grainParticles::grainParticles(), grainParticles::initializeParticles(), sphereParticles::initializeParticles(), and sphereParticles::sphereParticles().
|
inlineprotected |
Definition at line 79 of file particles.hpp.
References particles::dynPointStruct_, and internalPoints::pointPosition().
Referenced by ContactSearch< searchMethod >::BroadSearch(), and ContactSearch< searchMethod >::ContactSearch().
|
inlineprotected |
Definition at line 84 of file particles.hpp.
References particles::idHandler_.
|
inlineprotected |
Definition at line 89 of file particles.hpp.
References particles::shapeIndex_.
Referenced by grainParticles::initializeParticles(), and sphereParticles::initializeParticles().
TypeInfo | ( | "particles" | ) |
|
inline |
Definition at line 101 of file particles.hpp.
References particles::dynPointStruct_.
|
inline |
Definition at line 106 of file particles.hpp.
References particles::dynPointStruct_.
|
inline |
Definition at line 111 of file particles.hpp.
References particles::dynPointStruct_, and pointStructure::simDomain().
|
inline |
Definition at line 116 of file particles.hpp.
References particles::dynPointStruct_, and pointStructure::thisDomain().
|
inline |
Definition at line 121 of file particles.hpp.
References particles::dynPointStruct_, and pointStructure::extendedDomain().
|
inline |
Definition at line 126 of file particles.hpp.
References particles::dynPointStruct_, and internalPoints::size().
|
inline |
Definition at line 131 of file particles.hpp.
References internalPoints::capacity(), and particles::dynPointStruct_.
|
inline |
Definition at line 136 of file particles.hpp.
References particles::dynPointStruct_, and internalPoints::numActive().
|
inline |
Definition at line 141 of file particles.hpp.
References particles::dynPointStruct_, and internalPoints::isAllActive().
|
inline |
Definition at line 146 of file particles.hpp.
References particles::dynPointStruct_, and internalPoints::pointPosition().
|
inline |
Definition at line 151 of file particles.hpp.
References particles::dynPointStruct_, and dynamicPointStructure::velocity().
|
inline |
Definition at line 156 of file particles.hpp.
References particles::accelertion_.
|
inline |
Definition at line 161 of file particles.hpp.
References particles::accelertion_.
|
inline |
Definition at line 166 of file particles.hpp.
References particles::contactForce_.
|
inline |
Definition at line 171 of file particles.hpp.
References particles::contactForce_.
|
inline |
Definition at line 176 of file particles.hpp.
References particles::contactTorque_.
|
inline |
Definition at line 181 of file particles.hpp.
References particles::contactTorque_.
|
inline |
Definition at line 187 of file particles.hpp.
References particles::idHandler_.
|
overridevirtual |
This is called in time loop, before iterate.
Implements demComponent.
Reimplemented in sphereParticles.
Definition at line 86 of file particles.cpp.
Referenced by sphereParticles::beforeIteration(), and grainParticles::beforeIteration().
|
overridevirtual |
This is called in time loop.
Perform the main calculations when the component should evolve along time.
Implements demComponent.
Reimplemented in sphereParticles.
Definition at line 104 of file particles.cpp.
Referenced by sphereParticles::iterate(), and grainParticles::iterate().
|
overridevirtual |
This is called in time loop, after iterate.
Implements demComponent.
Definition at line 110 of file particles.cpp.
Referenced by main().
|
pure virtual |
Implemented in grainParticles, and sphereParticles.
|
pure virtual |
Implemented in sphereParticles, and grainParticles.
|
pure virtual |
Implemented in sphereParticles, and grainParticles.
|
pure virtual |
Implemented in grainParticles, and sphereParticles.
|
pure virtual |
Implemented in grainParticles, and sphereParticles.
|
pure virtual |
Implemented in grainParticles, and sphereParticles.
|
pure virtual |
Implemented in grainParticles, and sphereParticles.
Referenced by ContactSearch< searchMethod >::BroadSearch(), and ContactSearch< searchMethod >::ContactSearch().
|
pure virtual |
Implemented in grainParticles, and sphereParticles.
Referenced by interaction::create().
|
pure virtual |
Implemented in grainParticles, and sphereParticles.
Referenced by insertionRegion::readInsertionRegion().
Implemented in grainParticles, and sphereParticles.
Definition at line 116 of file particles.cpp.
Referenced by ContactSearch< searchMethod >::ContactSearch().
|
private |
dynamic point structure for particles center mass
Definition at line 40 of file particles.hpp.
Referenced by particles::capacity(), particles::dynPointStruct(), particles::extendedDomain(), particles::isAllActive(), particles::numActive(), particles::particles(), particles::pointPosition(), particles::pStruct(), particles::simDomain(), particles::size(), particles::thisDomain(), and particles::velocity().
|
private |
shape index of each particle
Definition at line 43 of file particles.hpp.
Referenced by particles::shapeIndex().
|
private |
acceleration on device
Definition at line 46 of file particles.hpp.
Referenced by particles::accelertion().
|
private |
contact force field
Definition at line 49 of file particles.hpp.
Referenced by particles::contactForce(), and particles::zeroForce().
|
private |
contact torque field
Definition at line 52 of file particles.hpp.
Referenced by particles::contactTorque(), and particles::zeroTorque().
|
private |
handling new ids for new particles
Definition at line 55 of file particles.hpp.
Referenced by particles::idHandler(), and particles::maxId().
|
private |
Definition at line 57 of file particles.hpp.
|
inlinestaticprivate |
messages for this objects
Definition at line 60 of file particles.hpp.