Adapt an arbitrary particle operation to a Kokkos range kernel. More...
#include "part.hpp"
Public Member Functions | |
| void | operator() (const int ip) const |
| Invoke the wrapped operation for one zero-based marker index. | |
| ParticleParallelFunctor (Kokkos::View< Real ** > pic1_, Kokkos::View< Real ** > pic2_, int npart_, Functor func_) | |
| Bind particle arrays, active count, and operation. | |
Public Attributes | |
| Functor | func |
| Device-callable operation receiving both arrays and indices. | |
| int | npart |
| Number of active leading rows. | |
| Kokkos::View< Real ** > | pic1 |
| Evolving marker properties. | |
| Kokkos::View< Real ** > | pic2 |
| Invariant marker properties. | |
Adapt an arbitrary particle operation to a Kokkos range kernel.
|
inline |
Bind particle arrays, active count, and operation.
| [in] | pic1_ | Evolving marker-property view. |
| [in] | pic2_ | Invariant marker-property view. |
| [in] | npart_ | Number of active leading marker rows. |
| [in] | func_ | Device-callable operation to invoke for every marker. |
|
inline |
Invoke the wrapped operation for one zero-based marker index.
| [in] | ip | Local marker index in [0,npart). |
References orb5x::ParticleParallelFunctor< Functor >::func, orb5x::ParticleParallelFunctor< Functor >::npart, orb5x::ParticleParallelFunctor< Functor >::pic1, and orb5x::ParticleParallelFunctor< Functor >::pic2.
| Functor orb5x::ParticleParallelFunctor< Functor >::func |
Device-callable operation receiving both arrays and indices.
Referenced by orb5x::ParticleParallelFunctor< Functor >::operator()().
| int orb5x::ParticleParallelFunctor< Functor >::npart |
Number of active leading rows.
Referenced by orb5x::ParticleParallelFunctor< Functor >::operator()().
| Kokkos::View<Real**> orb5x::ParticleParallelFunctor< Functor >::pic1 |
Evolving marker properties.
Referenced by orb5x::ParticleParallelFunctor< Functor >::operator()().
| Kokkos::View<Real**> orb5x::ParticleParallelFunctor< Functor >::pic2 |
Invariant marker properties.
Referenced by orb5x::ParticleParallelFunctor< Functor >::operator()().