Class for managing spherical particles. More...


Public Member Functions | |
| sphereParticles (systemControl &control, const property &prop) | |
| construct from systemControl and property More... | |
| sphereParticles (const sphereParticles &)=delete | |
| no copy constructor More... | |
| sphereParticles (sphereParticles &&)=default | |
| move constructor More... | |
| sphereParticles & | operator= (const sphereParticles &)=delete |
| no copy-assignement More... | |
| sphereParticles & | operator= (sphereParticles &&)=default |
| move-assignement More... | |
| virtual | ~sphereParticles ()=default |
| bool | insertParticles (const realx3Vector &position, const wordVector &shapes, const setFieldList &setField) override |
| Insert new particles in position with specified shapes. More... | |
| const auto & | shapes () const |
| const reference to shapes object More... | |
| const auto & | I () const |
| const reference to inertia pointField More... | |
| auto & | I () |
| reference to inertia pointField More... | |
| const realx3Vector_D | rVelocity () const |
| const realVector_D & | boundingSphere () const override |
| word | shapeTypeName () const override |
| void | boundingSphereMinMax (real &minDiam, real &maxDiam) const override |
| bool | update (const eventMessage &msg) override |
| realx3PointField_D & | rAcceleration () override |
| const realx3PointField_D & | rAcceleration () const override |
| bool | beforeIteration () override |
| before iteration step More... | |
| bool | iterate () override |
| iterate particles More... | |
| bool | afterIteration () override |
| after iteration step More... | |
Public Member Functions inherited from particles | |
| 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 () |
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 () |
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 |
Protected Member Functions | |
| bool | diameterMassInertiaPropId (const word &shName, real &diam, real &mass, real &I, int8 &propIdx) |
| bool | initializeParticles () |
| bool | insertSphereParticles (const wordVector &names, const int32IndexContainer &indices) |
| virtual uniquePtr< List< eventObserver * > > | getFieldObjectList () const override |
Protected Member Functions inherited from particles | |
| void | zeroForce () |
| void | zeroTorque () |
Class for managing spherical particles.
This is a top-level class that contains the essential components for defining spherical prticles in a DEM simulation.
Definition at line 44 of file sphereParticles.hpp.
| sphereParticles | ( | systemControl & | control, |
| const property & | prop | ||
| ) |
construct from systemControl and property
Definition at line 219 of file sphereParticles.cpp.
References integration::create(), endREPORT, fatalErrorInFunction, fatalExit, greenText, indexContainer< IndexType >::indicesHost(), sphereParticles::initializeParticles(), particles::integrationMethod(), n, particles::pStruct(), REPORT, sphereParticles::rVelIntegration_, sphereParticles::rVelocity_, indexContainer< IndexType >::size(), and particles::time().

|
delete |
no copy constructor
|
default |
move constructor
|
virtualdefault |
|
protected |
Definition at line 37 of file sphereParticles.cpp.
References pFlow::endl(), fatalErrorInFunction, pFlow::Pi, pFlow::pow(), and pFlow::printKeys().

|
protected |
Definition at line 73 of file sphereParticles.cpp.
Referenced by sphereParticles::sphereParticles().

|
protected |
Definition at line 139 of file sphereParticles.cpp.
References pFlow::endl(), fatalErrorInFunction, ForAll, m, indexContainer< IndexType >::size(), and Vector< T, Allocator >::size().

|
overrideprotectedvirtual |
Reimplemented from particles.
Definition at line 26 of file sphereParticles.cpp.
References particles::getFieldObjectList(), and sphereParticles::I_.

|
delete |
no copy-assignement
|
default |
move-assignement
|
overridevirtual |
Insert new particles in position with specified shapes.
This function is involked by inserted object to insert new set of particles into the simulation.
| position | position of new particles |
| shape | shape of new particles |
| setField | initial value of the selected fields for new particles |
Implements particles.
Definition at line 362 of file sphereParticles.cpp.
References cyanText, endREPORT, fatalErrorInFunction, pStruct, REPORT, Vector< T, Allocator >::size(), and yellowText.

|
inline |
const reference to shapes object
Definition at line 121 of file sphereParticles.hpp.
References sphereParticles::shapes_.
|
inline |
const reference to inertia pointField
Definition at line 127 of file sphereParticles.hpp.
References sphereParticles::I_.
|
inline |
reference to inertia pointField
Definition at line 133 of file sphereParticles.hpp.
References sphereParticles::I_.
|
inline |
Definition at line 138 of file sphereParticles.hpp.
References sphereParticles::rVelocity_.
|
inlineoverridevirtual |
Implements particles.
Definition at line 143 of file sphereParticles.hpp.
References particles::diameter().

|
inlineoverridevirtual |
Implements particles.
Definition at line 148 of file sphereParticles.hpp.
Implements particles.
Definition at line 153 of file sphereParticles.hpp.
References sphereShape::diameterMinMax(), and sphereParticles::shapes_.

|
overridevirtual |
Implements eventObserver.
Definition at line 334 of file sphereParticles.cpp.
|
inlineoverridevirtual |
Implements particles.
Definition at line 163 of file sphereParticles.hpp.
References sphereParticles::rAcceleration_.
|
inlineoverridevirtual |
Implements particles.
Definition at line 168 of file sphereParticles.hpp.
References sphereParticles::rAcceleration_.
|
overridevirtual |
before iteration step
Reimplemented from particles.
Definition at line 84 of file sphereParticles.cpp.
References particles::beforeIteration().
Referenced by main().


|
overridevirtual |
iterate particles
Implements demComponent.
Definition at line 104 of file sphereParticles.cpp.
References pFlow::sphereParticlesKernels::acceleration(), and pStruct.
Referenced by main().


|
overridevirtual |
after iteration step
Implements demComponent.
Definition at line 133 of file sphereParticles.cpp.
Referenced by main().

|
protected |
reference to material properties
Definition at line 51 of file sphereParticles.hpp.
|
protected |
reference to shapes
Definition at line 54 of file sphereParticles.hpp.
Referenced by sphereParticles::boundingSphereMinMax(), and sphereParticles::shapes().
|
protected |
pointField of inertial of particles
Definition at line 57 of file sphereParticles.hpp.
Referenced by sphereParticles::getFieldObjectList(), and sphereParticles::I().
|
protected |
pointField of rotational Velocity of particles on device
Definition at line 60 of file sphereParticles.hpp.
Referenced by sphereParticles::rVelocity(), and sphereParticles::sphereParticles().
|
protected |
pointField of rotational acceleration of particles on device
Definition at line 63 of file sphereParticles.hpp.
Referenced by sphereParticles::rAcceleration().
|
protected |
rotational velocity integrator
Definition at line 66 of file sphereParticles.hpp.
Referenced by sphereParticles::sphereParticles().
|
protected |
timer for acceleration computations
Definition at line 69 of file sphereParticles.hpp.
|
protected |
timer for integration computations (prediction step)
Definition at line 72 of file sphereParticles.hpp.
|
protected |
timer for integration computations (correction step)
Definition at line 75 of file sphereParticles.hpp.