Go to the documentation of this file.
21 #ifndef __sphereInteraction_hpp__
22 #define __sphereInteraction_hpp__
38 typename contactForceModel,
39 typename geometryMotionModel,
40 template <
class,
class,
class>
class contactListType>
51 using MotionModel =
typename geometryMotionModel::MotionModel;
53 using ModelStorage =
typename ContactForceModel::contactForceStorage;
62 contactListType<ModelStorage, DefaultExecutionSpace, IdType>;
119 Kokkos::RangePolicy<Kokkos::IndexType<uint32>, Kokkos::Schedule<Kokkos::Dynamic>>;
159 const anyList& varList)
override;
169 #endif //__sphereInteraction_hpp__
bool sphereWallInteraction()
Timer boundaryInteractionTimer_
timer for boundary interaction time
bool beforeIteration() override
This is called in time loop, before iterate. (overriden from demComponent)
const GeometryMotionModel & geometryMotion_
const reference to geometry
typename geometryMotionModel::MotionModel MotionModel
bool afterIteration() override
This is called in time loop, after iterate. (overriden from demComponent)
const auto & control() const
Const ref to systemControl.
contactListType< ModelStorage, DefaultExecutionSpace, IdType > ContactListType
bool createSphereInteraction()
TypeInfoTemplate13("sphereInteraction", ContactForceModel, MotionModel, ContactListType)
geometryMotionModel GeometryMotionModel
BoundaryListType boundaryInteraction_
particle-particle and particle-wall interactions at boundaries
rpPPInteraction rpPWInteraction
range policy for p-w interaction execution
sphereInteraction(systemControl &control, const particles &prtcl, const geometry &geom)
Constructor from components.
Timer ppInteractionTimer_
timer for particle-particle interaction computations
boundariesMask< 6 > activeBoundaries_
a mask for active boundaries (boundaries with intreaction)
uniquePtr< ContactListType > pwContactList_
contact list for particle-wall interactions (keeps the history)
contactForceModel ContactForceModel
Class for managing spherical particles.
uniquePtr< ContactListType > ppContactList_
contact list for particle-particle interactoins (keeps the history)
uniquePtr< contactSearch > contactSearch_
contact search object for pp and pw interactions
add_vCtor(interaction, sphereInteraction, systemControl)
Add virtual constructor.
const sphereParticles & sphParticles_
const reference to particles
typename ContactForceModel::contactForceStorage ModelStorage
Kokkos::RangePolicy< Kokkos::IndexType< uint32 >, Kokkos::Schedule< Kokkos::Dynamic > > rpPPInteraction
range policy for p-p interaction execution
Timer contactListMangementTimer_
timer for managing contact lists (only inernal points)
Base class for geometry for managing tri-surfaces, geometry motion, and surface physical properties.
Timer pwInteractionTimer_
timer for particle-wall interaction computations
bool iterate() override
This is called in time loop.
bool hearChanges(real t, real dt, uint32 iter, const message &msg, const anyList &varList) override
Check for changes in the point structures. (overriden from observer)
uniquePtr< ContactForceModel > forceModel_
contact force model
real dt() const
Time step of integration.
Timer contactListMangementBoundaryTimer_
bool sphereSphereInteraction()