BioCMAMC-ST
ContributionFunctor< M > Struct Template Reference

#include <contribution_kernel.hpp>

Collaboration diagram for ContributionFunctor< M >:
[legend]

Classes

struct  Tag0D
struct  Tag3D

Public Types

using TeamPolicy = Kokkos::TeamPolicy<ComputeSpace>
using TeamMember = TeamPolicy::member_type
using ScratchView
using float_t = float

Public Member Functions

 ContributionFunctor (std::size_t particle_per_team, MC::ContributionView contribution_scatter, MC::ParticlesContainer< M > particles)
void update (MC::ParticlesContainer< M > _particles)
KOKKOS_INLINE_FUNCTION void operator() (Tag0D _tag, const TeamMember &team) const
KOKKOS_INLINE_FUNCTION void operator() (const Tag3D _tag, const TeamMember &team) const

Public Attributes

size_t np {}
std::size_t m_particle_per_team
MC::ContributionView m_contribution_scatter
MC::ParticlesContainer< M > m_particles

Member Typedef Documentation

◆ float_t

template<ModelType M>
using ContributionFunctor< M >::float_t = float

◆ ScratchView

template<ModelType M>
using ContributionFunctor< M >::ScratchView
Initial value:
Kokkos::View<float_t*,
TeamPolicy::execution_space::scratch_memory_space>
float float_t
Definition contribution_kernel.hpp:22

◆ TeamMember

template<ModelType M>
using ContributionFunctor< M >::TeamMember = TeamPolicy::member_type

◆ TeamPolicy

template<ModelType M>
using ContributionFunctor< M >::TeamPolicy = Kokkos::TeamPolicy<ComputeSpace>

Constructor & Destructor Documentation

◆ ContributionFunctor()

template<ModelType M>
ContributionFunctor< M >::ContributionFunctor ( std::size_t particle_per_team,
MC::ContributionView contribution_scatter,
MC::ParticlesContainer< M > particles )
inline

Member Function Documentation

◆ operator()() [1/2]

template<ModelType M>
KOKKOS_INLINE_FUNCTION void ContributionFunctor< M >::operator() ( const Tag3D _tag,
const TeamMember & team ) const
inline

◆ operator()() [2/2]

template<ModelType M>
KOKKOS_INLINE_FUNCTION void ContributionFunctor< M >::operator() ( Tag0D _tag,
const TeamMember & team ) const
inline

◆ update()

template<ModelType M>
void ContributionFunctor< M >::update ( MC::ParticlesContainer< M > _particles)
inline

Member Data Documentation

◆ m_contribution_scatter

template<ModelType M>
MC::ContributionView ContributionFunctor< M >::m_contribution_scatter

◆ m_particle_per_team

template<ModelType M>
std::size_t ContributionFunctor< M >::m_particle_per_team

◆ m_particles

template<ModelType M>
MC::ParticlesContainer<M> ContributionFunctor< M >::m_particles

◆ np

template<ModelType M>
size_t ContributionFunctor< M >::np {}

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