|
peclet-dem 0.4.0
Performance-portable XPBD Discrete Element Method (Kokkos + ArborX)
|
The per-manifold coarse-PGS body (translation-only, e = 0, shared fine accumulator) lives in MlCoarseSweep so the per-colour launch loop and the fused whole-cycle kernel share it verbatim. More...
#include <solver_multilevel.hpp>
Public Member Functions | |
| void | solveOne (int idx, int off) const |
Public Attributes | |
| Kokkos::View< const ManifoldC *, CpMem > | manifolds |
| Kokkos::View< const int *, CpMem > | realIdx |
| Kokkos::View< const int *, CpMem > | grp |
| Kokkos::View< float *[3], CpMem > | velG |
| Kokkos::View< const float *, CpMem > | invMassG |
| Kokkos::View< float *, CpMem > | lambdaAcc |
| Kokkos::View< float, CpMem > | maxApproach |
| Kokkos::View< const float *, CpMem > | restRel |
The per-manifold coarse-PGS body (translation-only, e = 0, shared fine accumulator) lives in MlCoarseSweep so the per-colour launch loop and the fused whole-cycle kernel share it verbatim.
grp aliases the composed body -> group map of the CURRENT level (written by the compose phase between sweeps); off is the level's group-pool offset.
Definition at line 410 of file solver_multilevel.hpp.
|
inline |
Definition at line 420 of file solver_multilevel.hpp.
References peclet::dem::ManifoldC::bodyA, peclet::dem::ManifoldC::bodyB, peclet::dem::dot3(), grp, invMassG, lambdaAcc, manifolds, maxApproach, peclet::dem::ManifoldC::normal_sum, peclet::dem::ManifoldC::num_points, peclet::dem::ManifoldC::rA_sum, peclet::dem::ManifoldC::rB_sum, realIdx, restRel, peclet::dem::scale3(), peclet::dem::sub3(), velG, peclet::dem::ManifoldC::wallVel_sum, peclet::dem::F3::x, peclet::dem::F4::x, peclet::dem::F3::y, peclet::dem::F4::y, peclet::dem::F3::z, and peclet::dem::F4::z.
Definition at line 411 of file solver_multilevel.hpp.
Referenced by solveOne().
| Kokkos::View<const int*, CpMem> peclet::dem::MlCoarseSweep::realIdx |
Definition at line 412 of file solver_multilevel.hpp.
Referenced by solveOne().
| Kokkos::View<const int*, CpMem> peclet::dem::MlCoarseSweep::grp |
Definition at line 413 of file solver_multilevel.hpp.
Referenced by solveOne().
| Kokkos::View<float* [3], CpMem> peclet::dem::MlCoarseSweep::velG |
Definition at line 414 of file solver_multilevel.hpp.
Referenced by solveOne().
| Kokkos::View<const float*, CpMem> peclet::dem::MlCoarseSweep::invMassG |
Definition at line 415 of file solver_multilevel.hpp.
Referenced by solveOne().
| Kokkos::View<float*, CpMem> peclet::dem::MlCoarseSweep::lambdaAcc |
Definition at line 416 of file solver_multilevel.hpp.
Referenced by solveOne().
| Kokkos::View<float, CpMem> peclet::dem::MlCoarseSweep::maxApproach |
Definition at line 417 of file solver_multilevel.hpp.
Referenced by solveOne().
| Kokkos::View<const float*, CpMem> peclet::dem::MlCoarseSweep::restRel |
Definition at line 418 of file solver_multilevel.hpp.
Referenced by solveOne().