ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
CellStructure::AoSoA_pack Struct Reference

#include <aosoa_pack.hpp>

+ Collaboration diagram for CellStructure::AoSoA_pack:

Public Types

using PositionViewType = Kokkos::View< double *[3], Kokkos::LayoutRight, Kokkos::HostSpace >
 
using VelocityViewType = Kokkos::View< double *[3], Kokkos::LayoutRight, Kokkos::HostSpace >
 
using DirectorViewType = Kokkos::View< double *[3], Kokkos::LayoutRight, Kokkos::HostSpace >
 
using ImageViewType = Kokkos::View< int *[3], Kokkos::LayoutRight, Kokkos::HostSpace >
 
using ChargeViewType = Kokkos::View< double *, Kokkos::HostSpace >
 
using DipmViewType = Kokkos::View< double *, Kokkos::HostSpace >
 
using IdViewType = Kokkos::View< int *, Kokkos::HostSpace >
 
using TypeViewType = Kokkos::View< int *, Kokkos::HostSpace >
 
using MassViewType = Kokkos::View< double *, Kokkos::HostSpace >
 
using FlagsViewType = Kokkos::View< uint8_t *, Kokkos::HostSpace >
 

Public Member Functions

 AoSoA_pack ()=default
 
 AoSoA_pack (std::size_t num_particles)
 
void resize (std::size_t num_particles)
 
template<typename array_layout , typename T , std::size_t N>
std::span< T, N > get_span_at (Kokkos::View< T *[N], array_layout, Kokkos::HostSpace > const &view, std::size_t i) const
 
template<typename array_layout , typename T , std::size_t N>
Utils::Vector< T, N > get_vector_at (Kokkos::View< T *[N], array_layout, Kokkos::HostSpace > const &view, std::size_t i) const
 
template<typename array_layout , typename T , std::size_t N>
void set_vector_at (Kokkos::View< T *[N], array_layout, Kokkos::HostSpace > &view, std::size_t i, Utils::Vector< T, N > const &value)
 
void set_has_exclusion (std::size_t i, bool value)
 
bool has_exclusion (std::size_t i) const
 

Public Attributes

PositionViewType position
 
VelocityViewType velocity
 
DirectorViewType director
 
ImageViewType image
 
ChargeViewType charge
 
DipmViewType dipm
 
IdViewType id
 
TypeViewType type
 
MassViewType mass
 
FlagsViewType flags
 

Detailed Description

Definition at line 39 of file aosoa_pack.hpp.

Member Typedef Documentation

◆ ChargeViewType

using CellStructure::AoSoA_pack::ChargeViewType = Kokkos::View<double *, Kokkos::HostSpace>

Definition at line 48 of file aosoa_pack.hpp.

◆ DipmViewType

using CellStructure::AoSoA_pack::DipmViewType = Kokkos::View<double *, Kokkos::HostSpace>

Definition at line 49 of file aosoa_pack.hpp.

◆ DirectorViewType

using CellStructure::AoSoA_pack::DirectorViewType = Kokkos::View<double *[3], Kokkos::LayoutRight, Kokkos::HostSpace>

Definition at line 44 of file aosoa_pack.hpp.

◆ FlagsViewType

using CellStructure::AoSoA_pack::FlagsViewType = Kokkos::View<uint8_t *, Kokkos::HostSpace>

Definition at line 53 of file aosoa_pack.hpp.

◆ IdViewType

using CellStructure::AoSoA_pack::IdViewType = Kokkos::View<int *, Kokkos::HostSpace>

Definition at line 50 of file aosoa_pack.hpp.

◆ ImageViewType

using CellStructure::AoSoA_pack::ImageViewType = Kokkos::View<int *[3], Kokkos::LayoutRight, Kokkos::HostSpace>

Definition at line 46 of file aosoa_pack.hpp.

◆ MassViewType

using CellStructure::AoSoA_pack::MassViewType = Kokkos::View<double *, Kokkos::HostSpace>

Definition at line 52 of file aosoa_pack.hpp.

◆ PositionViewType

using CellStructure::AoSoA_pack::PositionViewType = Kokkos::View<double *[3], Kokkos::LayoutRight, Kokkos::HostSpace>

Definition at line 40 of file aosoa_pack.hpp.

◆ TypeViewType

using CellStructure::AoSoA_pack::TypeViewType = Kokkos::View<int *, Kokkos::HostSpace>

Definition at line 51 of file aosoa_pack.hpp.

◆ VelocityViewType

using CellStructure::AoSoA_pack::VelocityViewType = Kokkos::View<double *[3], Kokkos::LayoutRight, Kokkos::HostSpace>

Definition at line 42 of file aosoa_pack.hpp.

Constructor & Destructor Documentation

◆ AoSoA_pack() [1/2]

CellStructure::AoSoA_pack::AoSoA_pack ( )
default

◆ AoSoA_pack() [2/2]

CellStructure::AoSoA_pack::AoSoA_pack ( std::size_t  num_particles)
inline

Definition at line 68 of file aosoa_pack.hpp.

References resize().

Member Function Documentation

◆ get_span_at()

template<typename array_layout , typename T , std::size_t N>
std::span< T, N > CellStructure::AoSoA_pack::get_span_at ( Kokkos::View< T *[N], array_layout, Kokkos::HostSpace > const &  view,
std::size_t  i 
) const
inline

Definition at line 116 of file aosoa_pack.hpp.

◆ get_vector_at()

template<typename array_layout , typename T , std::size_t N>
Utils::Vector< T, N > CellStructure::AoSoA_pack::get_vector_at ( Kokkos::View< T *[N], array_layout, Kokkos::HostSpace > const &  view,
std::size_t  i 
) const
inline

Definition at line 122 of file aosoa_pack.hpp.

References Utils::Vector< T, N >::data().

Referenced by EnergyKernel::operator()(), and ForcesKernel::operator()().

◆ has_exclusion()

bool CellStructure::AoSoA_pack::has_exclusion ( std::size_t  i) const
inline

Definition at line 156 of file aosoa_pack.hpp.

References flags.

Referenced by EnergyKernel::operator()(), and ForcesKernel::operator()().

◆ resize()

void CellStructure::AoSoA_pack::resize ( std::size_t  num_particles)
inline

Definition at line 70 of file aosoa_pack.hpp.

References charge, dipm, director, flags, image, mass, position, type, and velocity.

Referenced by AoSoA_pack().

◆ set_has_exclusion()

void CellStructure::AoSoA_pack::set_has_exclusion ( std::size_t  i,
bool  value 
)
inline

Definition at line 152 of file aosoa_pack.hpp.

References flags.

Referenced by commit_particle().

◆ set_vector_at()

template<typename array_layout , typename T , std::size_t N>
void CellStructure::AoSoA_pack::set_vector_at ( Kokkos::View< T *[N], array_layout, Kokkos::HostSpace > &  view,
std::size_t  i,
Utils::Vector< T, N > const &  value 
)
inline

Definition at line 140 of file aosoa_pack.hpp.

Referenced by commit_particle().

Member Data Documentation

◆ charge

ChargeViewType CellStructure::AoSoA_pack::charge

◆ dipm

DipmViewType CellStructure::AoSoA_pack::dipm

◆ director

DirectorViewType CellStructure::AoSoA_pack::director

◆ flags

FlagsViewType CellStructure::AoSoA_pack::flags

Definition at line 64 of file aosoa_pack.hpp.

Referenced by commit_particle(), has_exclusion(), resize(), and set_has_exclusion().

◆ id

IdViewType CellStructure::AoSoA_pack::id

Definition at line 61 of file aosoa_pack.hpp.

Referenced by commit_particle(), and ForcesKernel::operator()().

◆ image

ImageViewType CellStructure::AoSoA_pack::image

Definition at line 58 of file aosoa_pack.hpp.

Referenced by commit_particle(), and resize().

◆ mass

MassViewType CellStructure::AoSoA_pack::mass

Definition at line 63 of file aosoa_pack.hpp.

Referenced by commit_particle(), and resize().

◆ position

PositionViewType CellStructure::AoSoA_pack::position

◆ type

TypeViewType CellStructure::AoSoA_pack::type

◆ velocity

VelocityViewType CellStructure::AoSoA_pack::velocity

Definition at line 56 of file aosoa_pack.hpp.

Referenced by commit_particle(), ForcesKernel::operator()(), and resize().


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