24#ifdef ESPRESSO_SHARED_MEMORY_PARALLELISM
28#include <Kokkos_Core.hpp>
64#ifdef ESPRESSO_ELECTROSTATICS
73#if defined(ESPRESSO_GAY_BERNE) or defined(ESPRESSO_DIPOLES)
76#ifdef ESPRESSO_DIPOLES
82#ifdef ESPRESSO_ELECTROSTATICS
91#if defined(ESPRESSO_GAY_BERNE) or defined(ESPRESSO_DIPOLES)
94#ifdef ESPRESSO_DIPOLES
100 template <
typename array_layout>
103 std::size_t i)
const {
107 template <
typename array_layout>
111 view(i, 0) = value[0];
112 view(i, 1) = value[1];
113 view(i, 2) = value[2];
cudaStream_t stream[1]
CUDA streams for parallel computing on CPU and GPU.
IdToIndexViewType id_to_index
Utils::Vector3d get_vector_at(Kokkos::View< double *[3], array_layout, Kokkos::HostSpace > const &view, std::size_t i) const
Kokkos::View< double *, Kokkos::HostSpace > ChargeViewType
bool has_exclusion(std::size_t i) const
Kokkos::View< uint8_t *, Kokkos::HostSpace > FlagsViewType
Kokkos::View< double *, Kokkos::HostSpace > DipmViewType
void set_vector_at(Kokkos::View< double *[3], array_layout, Kokkos::HostSpace > &view, std::size_t i, Utils::Vector3d const &value)
Kokkos::View< double *[3], Kokkos::LayoutRight, Kokkos::HostSpace > DirectorViewType
PositionViewType position
AoSoA_pack(std::size_t num_particles)
Kokkos::View< int *, Kokkos::HostSpace > TypeViewType
Kokkos::View< double *[3], Kokkos::LayoutRight, Kokkos::HostSpace > PositionViewType
void set_has_exclusion(std::size_t i, bool value)
DirectorViewType director
Kokkos::View< int *, Kokkos::HostSpace > IdViewType
VelocityViewType velocity
void resize(std::size_t num_particles)