peclet-dem 1.1.0
Performance-portable XPBD Discrete Element Method (Kokkos + ArborX)
Loading...
Searching...
No Matches
peclet::dem::Particles Struct Reference

#include <particles.hpp>

Classes

struct  MlLast
 

Public Member Functions

void allocate (int cap, int maxPairs_, int maxContacts_, int nShapes, int nShell, int nPlanes)
 
void ensureCapacity (int newCap)
 
Kokkos::View< const float *[3], CpMem > cpos () const
 
Kokkos::View< const float *, CpMem > crad () const
 

Public Attributes

V3 pos
 
Vf invMass
 
V4 quat
 
V3 vel
 
V3 angVel
 
V3 invInertia
 
Vf scale
 
Vf targetScale
 
Vi shapeId
 
V3 posPred
 
V4 quatPred
 
V3 velPred
 
V3 angVelPred
 
V3 deltaPos
 
V4 deltaQuat
 
V3 deltaVel
 
V3 deltaAngVel
 
Vi constraintCounts
 
Vi realIndices
 
Vi gid
 
Kokkos::View< float *[2], CpMem > planeFriction
 
Vf rad
 
V3 extForce
 
V3 extTorque
 
Kokkos::View< int *[2], CpMem > pairs
 
Kokkos::View< ContactC *, CpMem > contacts
 
Kokkos::View< ManifoldC *, CpMem > manifolds
 
Kokkos::View< int *, CpMem > manifoldColor
 
Kokkos::View< int *, CpMem > prevManifoldColor
 
int velLastFullColors = 0
 
Kokkos::View< unsigned long long *, CpMem > pairKeys
 
Kokkos::View< unsigned long long *, CpMem > prevPairKeys
 
Kokkos::View< unsigned char *, CpMem > manifoldPersistent
 
int prevPairCount = 0
 
Kokkos::View< unsigned char *, CpMem > groundedLevel
 
Kokkos::View< float *, CpMem > lambdaAcc
 
Kokkos::View< float *, CpMem > prevLambda
 
Kokkos::View< float *, CpMem > vn0
 
Kokkos::View< float *[3], CpMem > vt0
 
Kokkos::View< float *[3], CpMem > lambdaT
 
Kokkos::View< float *[3], CpMem > prevLambdaT
 
Kokkos::View< float *, CpMem > hertzSnPair
 
Kokkos::View< float *, CpMem > hertzSnWall
 
Kokkos::View< float *, CpMem > posLambdaContact
 
Kokkos::View< float *, CpMem > posImpulse
 
Kokkos::View< float *, CpMem > prevPosImpulse
 
Kokkos::View< float *, CpMem > restBank
 
Kokkos::View< float *, CpMem > prevRestBank
 
Kokkos::View< float *, CpMem > restRel
 
Kokkos::View< float *, CpMem > restVPeak
 
Kokkos::View< float *, CpMem > prevRestVPeak
 
Kokkos::View< float *, CpMem > bodyOrphan
 
Kokkos::View< float *, CpMem > bodyOrphanVPeak
 
Kokkos::View< unsigned char *, CpMem > prevMatched
 
Kokkos::View< unsigned char *, CpMem > sideFlags
 
Kokkos::View< int *, CpMem > heightLevel
 
Kokkos::View< int *, CpMem > levelKey
 
Kokkos::View< int *, CpMem > levelPerm
 
Kokkos::View< long long *, CpMem > mlColorPacked
 
Kokkos::View< int *, CpMem > mlParent
 
Kokkos::View< float *, CpMem > mlInvMassG
 
Kokkos::View< float *[3], CpMem > mlVelG
 
Kokkos::View< float *[3], CpMem > mlVelG0
 
Kokkos::View< float *, CpMem > mlMassG
 
Kokkos::View< int *, CpMem > mlGrp
 
Kokkos::View< int *, CpMem > mlMate
 
Kokkos::View< float *[3], CpMem > mlOriginG
 
Kokkos::View< float *[3], CpMem > mlComOffG
 
Kokkos::View< float *[3], CpMem > mlAngG
 
Kokkos::View< float *[3], CpMem > mlAngG0
 
Kokkos::View< float *[6], CpMem > mlInvIG
 
Kokkos::View< double *[7], CpMem > mlAccD
 
Kokkos::View< float *[3], CpMem > hertzXi
 
Kokkos::View< unsigned long long *, CpMem > hertzKeys
 
Kokkos::View< unsigned long long *, CpMem > hertzPrevKeys
 
Kokkos::View< float *[3], CpMem > hertzPrevXi
 
Kokkos::View< float *[3], CpMem > hertzXiWall
 
Kokkos::View< int *, CpMem > hertzWallCand
 
Kokkos::View< int, CpMem > hertzWallCandCount
 
int hertzNumWallCand = 0
 
float hertzContactRadiusFrac = 0.5f
 
Kokkos::View< float *[3], CpMem > hertzRefPos
 
Kokkos::View< float, CpMem > hertzDispMax
 
Kokkos::View< float *, CpMem > hertzE
 
Kokkos::View< float *, CpMem > hertzNu
 
int hertzNumPairs = -1
 
int hertzPrevCount = 0
 
int stabilizationMode = 1
 
int restitutionModel = 0
 
Kokkos::View< unsigned char *, CpMem > materialId
 
Kokkos::View< float *, CpMem > pairMaterials
 
Kokkos::View< int *, CpMem > contactSlot
 
Kokkos::View< int *, CpMem > contactColor
 
Kokkos::View< int *, CpMem > unitStart
 
Kokkos::View< int *, CpMem > unitContacts
 
Kokkos::View< int *, CpMem > unitColor
 
int numPosUnits = 0
 
Kokkos::View< unsigned long long *, CpMem > contactKeys
 
Kokkos::View< unsigned long long *, CpMem > prevContactKeys
 
Kokkos::View< int *, CpMem > prevContactColor
 
Kokkos::View< int *, CpMem > posCommitPerm
 
int posPrevContactCount = 0
 
int posLastFullColors = 0
 
Kokkos::View< int *, CpMem > velPerm
 
Kokkos::View< int *, CpMem > commitPerm
 
Kokkos::View< int *, CpMem > bucketCursor
 
Kokkos::View< int *, CpMem > mlBucketPerm
 
Kokkos::View< int *, CpMem > posPerm
 
Kokkos::View< int *, CpMem > velOffsDev
 
Kokkos::View< int *, CpMem > posOffsDev
 
Kokkos::View< int *, CpMem > mlOffsDev
 
Kokkos::View< unsigned *, CpMem > fusedBar
 
void * graphCache [4] = {nullptr, nullptr, nullptr, nullptr}
 
Kokkos::View< long long *, CpMem > bodyWinner
 
Kokkos::View< std::uint64_t *, CpMem > bodyColorMask
 
Kokkos::View< unsigned char *, CpMem > asleep
 
Kokkos::View< unsigned char *, CpMem > sleepCounter
 
Kokkos::View< unsigned char *, CpMem > sleepMovingWall
 
Kokkos::View< int *, CpMem > sleepCurCount
 
Kokkos::View< int *, CpMem > sleepPrevCount
 
Kokkos::View< float *, CpMem > invMassEff
 
Kokkos::View< unsigned char *, CpMem > manifoldSleep
 
Kokkos::View< unsigned char *, CpMem > contactSleep
 
bool sleepingEnabled = true
 
float sleepScale = 2.0f
 
float wakeScale = 40.0f
 
int sleepK = 64
 
bool sleepWakeLostContact = false
 
float sleepImmovableFrac = 0.01f
 
bool extForceActive = false
 
bool extTorqueActive = false
 
Kokkos::View< float *[3], CpMem > impRefPos
 
Kokkos::View< float, CpMem > impDispMax
 
int impNumPairs = -1
 
float impRefMaxRad = 0.0f
 
float verletSkinFrac = 0.0f
 
bool cudaGraphs = true
 
int fusedSweeps = -1
 
bool incrementalColoring = true
 
Kokkos::View< int, CpMem > pairCount
 
Kokkos::View< int, CpMem > contactCount
 
Kokkos::View< int, CpMem > manifoldCount
 
Kokkos::View< int, CpMem > topGhost
 
Kokkos::View< float, CpMem > maxOverlap
 
Kokkos::View< float, CpMem > posResidual
 
float positionOmega = 1.5f
 
Kokkos::View< float, CpMem > maxApproach
 
Kokkos::View< float, CpMem > maxApproachQS
 
Kokkos::View< float, CpMem > maxConsensus
 
Kokkos::View< ShapeDesc *, CpMem > shapes
 
Kokkos::View< float *[3], CpMem > shell
 
Kokkos::View< PlaneP *, CpMem > planes
 
Kokkos::View< float *, CpMem > sdfGrid
 
Kokkos::View< WallSdf *, CpMem > walls
 
Kokkos::View< float *, CpMem > wallGrid
 
Kokkos::View< peclet::core::geom::ShapeNode< float > *, CpMem > wallNodes
 
Kokkos::View< peclet::core::geom::ShapeNode< float > *, CpMem > shapeNodes
 
int capacity = 0
 
int numReal = 0
 
int numParticles = 0
 
int maxPairs = 0
 
int maxContacts = 0
 
int numPlanes = 0
 
int numWalls = 0
 
int shellPoints = 0
 
int shellDetection = 0
 
float wallFrictionMax = 0.0f
 
Domain domain {}
 
F3 gravity {0, 0, 0}
 
float dt = 1e-3f
 
float globalScale = 1.0f
 
float growthRate = 0.0f
 
float growthFactor = -1.0f
 
float baseRadius
 
float thermostatTau = 0.0f
 
float thermostatTemp = 0.0f
 
float thermostatKB = 1.0f
 
float frictionDynamic = 0.0f
 
float restitutionNormal = 0.0f
 
float skin = 0.1f
 
float restitutionTangent = 0.0f
 
int positionIterations = 10
 
int velocityIterations = 0
 
bool velocityUseGS = true
 
PhaseCopies velCopies
 
PhaseCopies posCopies
 
Kokkos::View< float *, CpMem > invMassSolve
 
Kokkos::View< float *[3], CpMem > invInertiaSolve
 
Kokkos::View< unsigned char *, CpMem > splitSlot
 
Kokkos::View< int *, CpMem > vertexDegree
 
Kokkos::View< int *, CpMem > aVel
 
Kokkos::View< int *, CpMem > aPos
 
Kokkos::View< int *, CpMem > kVel
 
Kokkos::View< int *, CpMem > kPos
 
Kokkos::View< unsigned char *, CpMem > activityHit
 
Kokkos::View< unsigned long long *, CpMem > velMask
 
Kokkos::View< unsigned char *, CpMem > xGate
 
long long solveEpoch = 0
 
Kokkos::View< float *, CpMem > invMassCoarse
 
Kokkos::View< float *[3], CpMem > invInertiaCoarse
 
Kokkos::View< int, CpMem > orphanClampCount
 
Kokkos::View< float *[3], CpMem > imageShift
 
bool velCopiesLastSubstep = false
 
SplitStats splitStats
 
struct peclet::dem::Particles::MlLast mlLast
 
bool iterCounters = false
 
bool noAdaptiveStop = false
 
Kokkos::View< int *, CpMem > iterCountDev
 
bool debugCapture = false
 
DebugContactCapture debugCaptured
 

Static Public Attributes

static constexpr int kHertzMaxWalls = 4
 

Detailed Description

Definition at line 73 of file particles.hpp.

Member Function Documentation

◆ allocate()

void peclet::dem::Particles::allocate ( int  cap,
int  maxPairs_,
int  maxContacts_,
int  nShapes,
int  nShell,
int  nPlanes 
)
inline

Definition at line 479 of file particles.hpp.

References angVel, angVelPred, asleep, bodyColorMask, bodyOrphan, bodyOrphanVPeak, bodyWinner, bucketCursor, capacity, commitPerm, constraintCounts, contactColor, contactCount, contactKeys, contacts, contactSleep, contactSlot, deltaAngVel, deltaPos, deltaQuat, deltaVel, extForce, extTorque, fusedBar, gid, groundedLevel, heightLevel, hertzDispMax, hertzE, hertzNu, hertzRefPos, hertzSnWall, hertzWallCand, hertzWallCandCount, hertzXiWall, impDispMax, impRefPos, invInertia, invMass, invMassEff, kHertzMaxWalls, lambdaAcc, lambdaT, levelKey, levelPerm, manifoldColor, manifoldCount, manifoldPersistent, manifolds, manifoldSleep, materialId, maxApproach, maxApproachQS, maxConsensus, maxContacts, maxOverlap, maxPairs, mlBucketPerm, mlColorPacked, mlGrp, mlInvMassG, mlMassG, mlMate, mlOffsDev, mlParent, mlVelG, mlVelG0, numPlanes, numWalls, pairCount, pairKeys, pairs, planeFriction, planes, pos, posCommitPerm, posImpulse, posLambdaContact, posOffsDev, posPerm, posPred, posResidual, prevContactColor, prevContactKeys, prevLambda, prevLambdaT, prevManifoldColor, prevMatched, prevPairCount, prevPairKeys, prevPosImpulse, prevRestBank, prevRestVPeak, quat, quatPred, rad, realIndices, restBank, restRel, restVPeak, scale, sdfGrid, shapeId, shapeNodes, shapes, shell, sideFlags, sleepCounter, sleepCurCount, sleepMovingWall, sleepPrevCount, targetScale, topGhost, unitColor, unitContacts, unitStart, vel, velOffsDev, velPerm, velPred, vn0, vt0, wallGrid, wallNodes, and walls.

Referenced by peclet::dem::Simulation::Simulation().

◆ ensureCapacity()

◆ cpos()

Kokkos::View< const float *[3], CpMem > peclet::dem::Particles::cpos ( ) const
inline

Definition at line 689 of file particles.hpp.

References pos.

◆ crad()

Kokkos::View< const float *, CpMem > peclet::dem::Particles::crad ( ) const
inline

Definition at line 690 of file particles.hpp.

References rad.

Referenced by peclet::dem::findCollisionsGrow().

Member Data Documentation

◆ pos

◆ invMass

◆ quat

◆ vel

◆ angVel

◆ invInertia

◆ scale

◆ targetScale

◆ shapeId

◆ posPred

◆ quatPred

◆ velPred

◆ angVelPred

V3 peclet::dem::Particles::angVelPred

◆ deltaPos

V3 peclet::dem::Particles::deltaPos

◆ deltaQuat

V4 peclet::dem::Particles::deltaQuat

◆ deltaVel

◆ deltaAngVel

◆ constraintCounts

Vi peclet::dem::Particles::constraintCounts

◆ realIndices

◆ gid

◆ planeFriction

Kokkos::View<float* [2], CpMem> peclet::dem::Particles::planeFriction

Definition at line 98 of file particles.hpp.

Referenced by allocate(), peclet::dem::demSolveContacts(), and ensureCapacity().

◆ rad

◆ extForce

◆ extTorque

◆ pairs

Kokkos::View<int* [2], CpMem> peclet::dem::Particles::pairs

◆ contacts

◆ manifolds

◆ manifoldColor

◆ prevManifoldColor

Kokkos::View<int*, CpMem> peclet::dem::Particles::prevManifoldColor

◆ velLastFullColors

int peclet::dem::Particles::velLastFullColors = 0

Definition at line 122 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ pairKeys

Kokkos::View<unsigned long long*, CpMem> peclet::dem::Particles::pairKeys

◆ prevPairKeys

Kokkos::View<unsigned long long*, CpMem> peclet::dem::Particles::prevPairKeys

◆ manifoldPersistent

Kokkos::View<unsigned char*, CpMem> peclet::dem::Particles::manifoldPersistent

◆ prevPairCount

◆ groundedLevel

Kokkos::View<unsigned char*, CpMem> peclet::dem::Particles::groundedLevel

◆ lambdaAcc

Kokkos::View<float*, CpMem> peclet::dem::Particles::lambdaAcc

◆ prevLambda

Kokkos::View<float*, CpMem> peclet::dem::Particles::prevLambda

◆ vn0

Kokkos::View<float*, CpMem> peclet::dem::Particles::vn0

◆ vt0

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::vt0

◆ lambdaT

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::lambdaT

◆ prevLambdaT

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::prevLambdaT

◆ hertzSnPair

Kokkos::View<float*, CpMem> peclet::dem::Particles::hertzSnPair

◆ hertzSnWall

Kokkos::View<float*, CpMem> peclet::dem::Particles::hertzSnWall

◆ posLambdaContact

Kokkos::View<float*, CpMem> peclet::dem::Particles::posLambdaContact

◆ posImpulse

Kokkos::View<float*, CpMem> peclet::dem::Particles::posImpulse

◆ prevPosImpulse

Kokkos::View<float*, CpMem> peclet::dem::Particles::prevPosImpulse

◆ restBank

Kokkos::View<float*, CpMem> peclet::dem::Particles::restBank

◆ prevRestBank

Kokkos::View<float*, CpMem> peclet::dem::Particles::prevRestBank

◆ restRel

Kokkos::View<float*, CpMem> peclet::dem::Particles::restRel

◆ restVPeak

Kokkos::View<float*, CpMem> peclet::dem::Particles::restVPeak

◆ prevRestVPeak

Kokkos::View<float*, CpMem> peclet::dem::Particles::prevRestVPeak

◆ bodyOrphan

Kokkos::View<float*, CpMem> peclet::dem::Particles::bodyOrphan

◆ bodyOrphanVPeak

Kokkos::View<float*, CpMem> peclet::dem::Particles::bodyOrphanVPeak

Definition at line 182 of file particles.hpp.

Referenced by allocate(), peclet::dem::demSolveContacts(), and ensureCapacity().

◆ prevMatched

Kokkos::View<unsigned char*, CpMem> peclet::dem::Particles::prevMatched

◆ sideFlags

Kokkos::View<unsigned char*, CpMem> peclet::dem::Particles::sideFlags

◆ heightLevel

Kokkos::View<int*, CpMem> peclet::dem::Particles::heightLevel

Definition at line 190 of file particles.hpp.

Referenced by allocate(), peclet::dem::demSolveContacts(), and ensureCapacity().

◆ levelKey

Kokkos::View<int*, CpMem> peclet::dem::Particles::levelKey

◆ levelPerm

Kokkos::View<int*, CpMem> peclet::dem::Particles::levelPerm

◆ mlColorPacked

Kokkos::View<long long*, CpMem> peclet::dem::Particles::mlColorPacked

◆ mlParent

Kokkos::View<int*, CpMem> peclet::dem::Particles::mlParent

◆ mlInvMassG

Kokkos::View<float*, CpMem> peclet::dem::Particles::mlInvMassG

Definition at line 199 of file particles.hpp.

Referenced by allocate(), and peclet::dem::demSolveContacts().

◆ mlVelG

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::mlVelG

Definition at line 200 of file particles.hpp.

Referenced by allocate(), and peclet::dem::demSolveContacts().

◆ mlVelG0

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::mlVelG0

Definition at line 201 of file particles.hpp.

Referenced by allocate(), and peclet::dem::demSolveContacts().

◆ mlMassG

Kokkos::View<float*, CpMem> peclet::dem::Particles::mlMassG

Definition at line 202 of file particles.hpp.

Referenced by allocate(), and peclet::dem::demSolveContacts().

◆ mlGrp

Kokkos::View<int*, CpMem> peclet::dem::Particles::mlGrp

Definition at line 203 of file particles.hpp.

Referenced by allocate(), peclet::dem::demSolveContacts(), and ensureCapacity().

◆ mlMate

Kokkos::View<int*, CpMem> peclet::dem::Particles::mlMate

Definition at line 204 of file particles.hpp.

Referenced by allocate(), peclet::dem::demSolveContacts(), and ensureCapacity().

◆ mlOriginG

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::mlOriginG

Definition at line 208 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ mlComOffG

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::mlComOffG

Definition at line 209 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ mlAngG

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::mlAngG

Definition at line 210 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ mlAngG0

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::mlAngG0

Definition at line 211 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ mlInvIG

Kokkos::View<float* [6], CpMem> peclet::dem::Particles::mlInvIG

Definition at line 212 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ mlAccD

Kokkos::View<double* [7], CpMem> peclet::dem::Particles::mlAccD

Definition at line 213 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ hertzXi

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::hertzXi

◆ hertzKeys

Kokkos::View<unsigned long long*, CpMem> peclet::dem::Particles::hertzKeys

◆ hertzPrevKeys

Kokkos::View<unsigned long long*, CpMem> peclet::dem::Particles::hertzPrevKeys

◆ hertzPrevXi

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::hertzPrevXi

◆ hertzXiWall

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::hertzXiWall

◆ hertzWallCand

Kokkos::View<int*, CpMem> peclet::dem::Particles::hertzWallCand

◆ hertzWallCandCount

Kokkos::View<int, CpMem> peclet::dem::Particles::hertzWallCandCount

Definition at line 221 of file particles.hpp.

Referenced by allocate(), and peclet::dem::HertzMindlinLaw::rebuild().

◆ hertzNumWallCand

int peclet::dem::Particles::hertzNumWallCand = 0

◆ hertzContactRadiusFrac

float peclet::dem::Particles::hertzContactRadiusFrac = 0.5f

◆ hertzRefPos

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::hertzRefPos

◆ hertzDispMax

Kokkos::View<float, CpMem> peclet::dem::Particles::hertzDispMax

Definition at line 227 of file particles.hpp.

Referenced by allocate(), and peclet::dem::hertzRebuildPairs().

◆ hertzE

Kokkos::View<float*, CpMem> peclet::dem::Particles::hertzE

◆ hertzNu

Kokkos::View<float*, CpMem> peclet::dem::Particles::hertzNu

◆ hertzNumPairs

◆ hertzPrevCount

int peclet::dem::Particles::hertzPrevCount = 0

◆ kHertzMaxWalls

constexpr int peclet::dem::Particles::kHertzMaxWalls = 4
staticconstexpr

◆ stabilizationMode

int peclet::dem::Particles::stabilizationMode = 1

◆ restitutionModel

int peclet::dem::Particles::restitutionModel = 0

◆ materialId

◆ pairMaterials

Kokkos::View<float*, CpMem> peclet::dem::Particles::pairMaterials

◆ contactSlot

Kokkos::View<int*, CpMem> peclet::dem::Particles::contactSlot

◆ contactColor

Kokkos::View<int*, CpMem> peclet::dem::Particles::contactColor

◆ unitStart

Kokkos::View<int*, CpMem> peclet::dem::Particles::unitStart

◆ unitContacts

Kokkos::View<int*, CpMem> peclet::dem::Particles::unitContacts

◆ unitColor

◆ numPosUnits

int peclet::dem::Particles::numPosUnits = 0

◆ contactKeys

Kokkos::View<unsigned long long*, CpMem> peclet::dem::Particles::contactKeys

◆ prevContactKeys

Kokkos::View<unsigned long long*, CpMem> peclet::dem::Particles::prevContactKeys

◆ prevContactColor

Kokkos::View<int*, CpMem> peclet::dem::Particles::prevContactColor

◆ posCommitPerm

Kokkos::View<int*, CpMem> peclet::dem::Particles::posCommitPerm

◆ posPrevContactCount

int peclet::dem::Particles::posPrevContactCount = 0

◆ posLastFullColors

int peclet::dem::Particles::posLastFullColors = 0

Definition at line 267 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ velPerm

Kokkos::View<int*, CpMem> peclet::dem::Particles::velPerm

◆ commitPerm

Kokkos::View<int*, CpMem> peclet::dem::Particles::commitPerm

◆ bucketCursor

Kokkos::View<int*, CpMem> peclet::dem::Particles::bucketCursor

Definition at line 277 of file particles.hpp.

Referenced by allocate(), and peclet::dem::demSolveContacts().

◆ mlBucketPerm

Kokkos::View<int*, CpMem> peclet::dem::Particles::mlBucketPerm

Definition at line 278 of file particles.hpp.

Referenced by allocate(), and peclet::dem::demSolveContacts().

◆ posPerm

Kokkos::View<int*, CpMem> peclet::dem::Particles::posPerm

◆ velOffsDev

Kokkos::View<int*, CpMem> peclet::dem::Particles::velOffsDev

Definition at line 284 of file particles.hpp.

Referenced by allocate(), and peclet::dem::demSolveContacts().

◆ posOffsDev

Kokkos::View<int*, CpMem> peclet::dem::Particles::posOffsDev

Definition at line 285 of file particles.hpp.

Referenced by allocate(), and peclet::dem::demSolveContacts().

◆ mlOffsDev

Kokkos::View<int*, CpMem> peclet::dem::Particles::mlOffsDev

Definition at line 286 of file particles.hpp.

Referenced by allocate(), and peclet::dem::demSolveContacts().

◆ fusedBar

Kokkos::View<unsigned*, CpMem> peclet::dem::Particles::fusedBar

Definition at line 287 of file particles.hpp.

Referenced by allocate(), and peclet::dem::demSolveContacts().

◆ graphCache

void* peclet::dem::Particles::graphCache[4] = {nullptr, nullptr, nullptr, nullptr}

Definition at line 291 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ bodyWinner

Kokkos::View<long long*, CpMem> peclet::dem::Particles::bodyWinner

Definition at line 292 of file particles.hpp.

Referenced by allocate(), peclet::dem::demSolveContacts(), and ensureCapacity().

◆ bodyColorMask

Kokkos::View<std::uint64_t*, CpMem> peclet::dem::Particles::bodyColorMask

Definition at line 293 of file particles.hpp.

Referenced by allocate(), peclet::dem::demSolveContacts(), and ensureCapacity().

◆ asleep

Kokkos::View<unsigned char*, CpMem> peclet::dem::Particles::asleep

◆ sleepCounter

Kokkos::View<unsigned char*, CpMem> peclet::dem::Particles::sleepCounter

Definition at line 302 of file particles.hpp.

Referenced by allocate(), peclet::dem::demStep(), and ensureCapacity().

◆ sleepMovingWall

Kokkos::View<unsigned char*, CpMem> peclet::dem::Particles::sleepMovingWall

Definition at line 303 of file particles.hpp.

Referenced by allocate(), peclet::dem::demStep(), and ensureCapacity().

◆ sleepCurCount

Kokkos::View<int*, CpMem> peclet::dem::Particles::sleepCurCount

Definition at line 304 of file particles.hpp.

Referenced by allocate(), peclet::dem::demStep(), and ensureCapacity().

◆ sleepPrevCount

Kokkos::View<int*, CpMem> peclet::dem::Particles::sleepPrevCount

Definition at line 305 of file particles.hpp.

Referenced by allocate(), peclet::dem::demStep(), and ensureCapacity().

◆ invMassEff

Kokkos::View<float*, CpMem> peclet::dem::Particles::invMassEff

Definition at line 306 of file particles.hpp.

Referenced by allocate(), peclet::dem::demStep(), and ensureCapacity().

◆ manifoldSleep

Kokkos::View<unsigned char*, CpMem> peclet::dem::Particles::manifoldSleep

◆ contactSleep

Kokkos::View<unsigned char*, CpMem> peclet::dem::Particles::contactSleep

◆ sleepingEnabled

bool peclet::dem::Particles::sleepingEnabled = true

◆ sleepScale

float peclet::dem::Particles::sleepScale = 2.0f

Definition at line 310 of file particles.hpp.

Referenced by peclet::dem::demStep(), and peclet::dem::Simulation::setSleeping().

◆ wakeScale

float peclet::dem::Particles::wakeScale = 40.0f

Definition at line 311 of file particles.hpp.

Referenced by peclet::dem::demStep(), and peclet::dem::Simulation::setSleeping().

◆ sleepK

int peclet::dem::Particles::sleepK = 64

Definition at line 314 of file particles.hpp.

Referenced by peclet::dem::demStep(), and peclet::dem::Simulation::setSleeping().

◆ sleepWakeLostContact

bool peclet::dem::Particles::sleepWakeLostContact = false

Definition at line 317 of file particles.hpp.

Referenced by peclet::dem::demStep(), and peclet::dem::Simulation::setSleeping().

◆ sleepImmovableFrac

float peclet::dem::Particles::sleepImmovableFrac = 0.01f

Definition at line 326 of file particles.hpp.

Referenced by peclet::dem::demStep(), and peclet::dem::Simulation::setSleeping().

◆ extForceActive

bool peclet::dem::Particles::extForceActive = false

Definition at line 327 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts(), and peclet::dem::demStep().

◆ extTorqueActive

bool peclet::dem::Particles::extTorqueActive = false

◆ impRefPos

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::impRefPos

Definition at line 335 of file particles.hpp.

Referenced by allocate(), ensureCapacity(), and peclet::dem::findCollisionsVerlet().

◆ impDispMax

Kokkos::View<float, CpMem> peclet::dem::Particles::impDispMax

Definition at line 336 of file particles.hpp.

Referenced by allocate().

◆ impNumPairs

int peclet::dem::Particles::impNumPairs = -1

◆ impRefMaxRad

float peclet::dem::Particles::impRefMaxRad = 0.0f

Definition at line 338 of file particles.hpp.

Referenced by peclet::dem::findCollisionsVerlet().

◆ verletSkinFrac

float peclet::dem::Particles::verletSkinFrac = 0.0f

◆ cudaGraphs

bool peclet::dem::Particles::cudaGraphs = true

◆ fusedSweeps

int peclet::dem::Particles::fusedSweeps = -1

◆ incrementalColoring

bool peclet::dem::Particles::incrementalColoring = true

◆ pairCount

Kokkos::View<int, CpMem> peclet::dem::Particles::pairCount

Definition at line 350 of file particles.hpp.

Referenced by allocate(), and peclet::dem::findCollisionsGrow().

◆ contactCount

◆ manifoldCount

◆ topGhost

Kokkos::View<int, CpMem> peclet::dem::Particles::topGhost

◆ maxOverlap

◆ posResidual

Kokkos::View<float, CpMem> peclet::dem::Particles::posResidual

Definition at line 354 of file particles.hpp.

Referenced by allocate(), and peclet::dem::demSolveContacts().

◆ positionOmega

float peclet::dem::Particles::positionOmega = 1.5f

Definition at line 355 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ maxApproach

Kokkos::View<float, CpMem> peclet::dem::Particles::maxApproach

Definition at line 359 of file particles.hpp.

Referenced by allocate(), and peclet::dem::demSolveContacts().

◆ maxApproachQS

Kokkos::View<float, CpMem> peclet::dem::Particles::maxApproachQS

Definition at line 364 of file particles.hpp.

Referenced by allocate(), and peclet::dem::demSolveContacts().

◆ maxConsensus

Kokkos::View<float, CpMem> peclet::dem::Particles::maxConsensus

Definition at line 370 of file particles.hpp.

Referenced by allocate(), and peclet::dem::demSolveContacts().

◆ shapes

◆ shell

◆ planes

Kokkos::View<PlaneP*, CpMem> peclet::dem::Particles::planes

◆ sdfGrid

◆ walls

◆ wallGrid

◆ wallNodes

Kokkos::View<peclet::core::geom::ShapeNode<float>*, CpMem> peclet::dem::Particles::wallNodes

◆ shapeNodes

Kokkos::View<peclet::core::geom::ShapeNode<float>*, CpMem> peclet::dem::Particles::shapeNodes

Definition at line 384 of file particles.hpp.

Referenced by allocate(), and peclet::dem::ShapeRegistry::uploadShapes().

◆ capacity

◆ numReal

int peclet::dem::Particles::numReal = 0

Definition at line 387 of file particles.hpp.

Referenced by peclet::dem::computeOverlapsKokkos(), peclet::dem::Simulation::debugColoringConflicts(), peclet::dem::demSolveContacts(), peclet::dem::demStep(), peclet::dem::demStepForce(), peclet::dem::Simulation::exportLammps(), peclet::dem::findCollisionsGrow(), peclet::dem::findCollisionsVerlet(), peclet::dem::Simulation::getAngularVelocities(), peclet::dem::Simulation::getInvInertia(), peclet::dem::Simulation::getMasses(), peclet::dem::Simulation::getPositions(), peclet::dem::Simulation::getQuaternions(), peclet::dem::Simulation::getScales(), peclet::dem::Simulation::getSdfGrid(), peclet::dem::Simulation::getVelocities(), peclet::dem::maxOwnedRadius(), peclet::dem::narrowPhaseGrow(), peclet::dem::Simulation::numAsleep(), peclet::dem::Simulation::numParticles(), peclet::dem::HertzMindlinLaw::rebuild(), peclet::dem::Simulation::restOrphanStats(), peclet::dem::Simulation::setAngularVelocities(), peclet::dem::Simulation::setExternalForces(), peclet::dem::Simulation::setExternalTorques(), peclet::dem::Simulation::setGrowthParams(), peclet::dem::Simulation::setInvInertia(), peclet::dem::Simulation::setInvMass(), peclet::dem::Simulation::setMaterialIds(), peclet::dem::Simulation::setPositions(), peclet::dem::Simulation::setQuaternions(), peclet::dem::Simulation::setScales(), peclet::dem::Simulation::setScalesUniform(), peclet::dem::ShapeRegistry::setShapeIds(), peclet::dem::Simulation::setVelocities(), and peclet::dem::Simulation::writeVtp().

◆ numParticles

◆ maxPairs

int peclet::dem::Particles::maxPairs = 0

Definition at line 388 of file particles.hpp.

Referenced by allocate(), and peclet::dem::findCollisionsGrow().

◆ maxContacts

int peclet::dem::Particles::maxContacts = 0

◆ numPlanes

int peclet::dem::Particles::numPlanes = 0

◆ numWalls

◆ shellPoints

int peclet::dem::Particles::shellPoints = 0

◆ shellDetection

◆ wallFrictionMax

float peclet::dem::Particles::wallFrictionMax = 0.0f

◆ domain

◆ gravity

◆ dt

◆ globalScale

◆ growthRate

float peclet::dem::Particles::growthRate = 0.0f

◆ growthFactor

float peclet::dem::Particles::growthFactor = -1.0f

◆ baseRadius

◆ thermostatTau

float peclet::dem::Particles::thermostatTau = 0.0f

Definition at line 405 of file particles.hpp.

Referenced by peclet::dem::demStep(), and peclet::dem::Simulation::setThermostat().

◆ thermostatTemp

float peclet::dem::Particles::thermostatTemp = 0.0f

Definition at line 405 of file particles.hpp.

Referenced by peclet::dem::demStep(), and peclet::dem::Simulation::setThermostat().

◆ thermostatKB

float peclet::dem::Particles::thermostatKB = 1.0f

Definition at line 406 of file particles.hpp.

Referenced by peclet::dem::demStep(), and peclet::dem::Simulation::setThermostat().

◆ frictionDynamic

◆ restitutionNormal

◆ skin

◆ restitutionTangent

float peclet::dem::Particles::restitutionTangent = 0.0f

◆ positionIterations

int peclet::dem::Particles::positionIterations = 10

◆ velocityIterations

int peclet::dem::Particles::velocityIterations = 0

◆ velocityUseGS

◆ velCopies

PhaseCopies peclet::dem::Particles::velCopies

◆ posCopies

PhaseCopies peclet::dem::Particles::posCopies

◆ invMassSolve

Kokkos::View<float*, CpMem> peclet::dem::Particles::invMassSolve

◆ invInertiaSolve

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::invInertiaSolve

◆ splitSlot

Kokkos::View<unsigned char*, CpMem> peclet::dem::Particles::splitSlot

◆ vertexDegree

Kokkos::View<int*, CpMem> peclet::dem::Particles::vertexDegree

Definition at line 425 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ aVel

Kokkos::View<int*, CpMem> peclet::dem::Particles::aVel

Definition at line 432 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ aPos

Kokkos::View<int*, CpMem> peclet::dem::Particles::aPos

Definition at line 432 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ kVel

Kokkos::View<int*, CpMem> peclet::dem::Particles::kVel

Definition at line 432 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ kPos

Kokkos::View<int*, CpMem> peclet::dem::Particles::kPos

Definition at line 432 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ activityHit

Kokkos::View<unsigned char*, CpMem> peclet::dem::Particles::activityHit

Definition at line 433 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ velMask

Kokkos::View<unsigned long long*, CpMem> peclet::dem::Particles::velMask

Definition at line 439 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ xGate

Kokkos::View<unsigned char*, CpMem> peclet::dem::Particles::xGate

Definition at line 440 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ solveEpoch

long long peclet::dem::Particles::solveEpoch = 0

Definition at line 441 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ invMassCoarse

Kokkos::View<float*, CpMem> peclet::dem::Particles::invMassCoarse

Definition at line 442 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ invInertiaCoarse

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::invInertiaCoarse

Definition at line 445 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ orphanClampCount

Kokkos::View<int, CpMem> peclet::dem::Particles::orphanClampCount

Definition at line 448 of file particles.hpp.

Referenced by peclet::dem::Simulation::debugSplitStats().

◆ imageShift

Kokkos::View<float* [3], CpMem> peclet::dem::Particles::imageShift

Definition at line 450 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts(), and peclet::dem::demStep().

◆ velCopiesLastSubstep

bool peclet::dem::Particles::velCopiesLastSubstep = false

Definition at line 454 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ splitStats

◆ mlLast

◆ iterCounters

bool peclet::dem::Particles::iterCounters = false

Definition at line 467 of file particles.hpp.

Referenced by peclet::dem::demReadIterCount(), and peclet::dem::demSolveContacts().

◆ noAdaptiveStop

bool peclet::dem::Particles::noAdaptiveStop = false

Definition at line 471 of file particles.hpp.

Referenced by peclet::dem::demSolveContacts().

◆ iterCountDev

Kokkos::View<int*, CpMem> peclet::dem::Particles::iterCountDev

Definition at line 472 of file particles.hpp.

Referenced by peclet::dem::demIterCountSlot(), and peclet::dem::demReadIterCount().

◆ debugCapture

bool peclet::dem::Particles::debugCapture = false

Definition at line 475 of file particles.hpp.

◆ debugCaptured

DebugContactCapture peclet::dem::Particles::debugCaptured

Definition at line 476 of file particles.hpp.


The documentation for this struct was generated from the following file: