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

#include <aosoa_pack.hpp>

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)
 
HOST_ONLY_QUALIFIER void resize (std::size_t num_particles)
 
template<typename array_layout , typename T , std::size_t N>
DEVICE_QUALIFIER std::span< T, Nget_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>
DEVICE_QUALIFIER Utils::Vector< T, Nget_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>
DEVICE_QUALIFIER void set_vector_at (Kokkos::View< T *[N], array_layout, Kokkos::HostSpace > &view, std::size_t i, Utils::Vector< T, N > const &value)
 
DEVICE_QUALIFIER void set_has_exclusion (std::size_t i, bool value)
 
DEVICE_QUALIFIER 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 41 of file aosoa_pack.hpp.

Member Typedef Documentation

◆ ChargeViewType

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

Definition at line 50 of file aosoa_pack.hpp.

◆ DipmViewType

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

Definition at line 51 of file aosoa_pack.hpp.

◆ DirectorViewType

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

Definition at line 46 of file aosoa_pack.hpp.

◆ FlagsViewType

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

Definition at line 55 of file aosoa_pack.hpp.

◆ IdViewType

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

Definition at line 52 of file aosoa_pack.hpp.

◆ ImageViewType

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

Definition at line 48 of file aosoa_pack.hpp.

◆ MassViewType

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

Definition at line 54 of file aosoa_pack.hpp.

◆ PositionViewType

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

Definition at line 42 of file aosoa_pack.hpp.

◆ TypeViewType

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

Definition at line 53 of file aosoa_pack.hpp.

◆ VelocityViewType

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

Definition at line 44 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 70 of file aosoa_pack.hpp.

References resize(), and stream.

Member Function Documentation

◆ get_span_at()

template<typename array_layout , typename T , std::size_t N>
DEVICE_QUALIFIER 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 119 of file aosoa_pack.hpp.

References stream.

◆ get_vector_at()

template<typename array_layout , typename T , std::size_t N>
DEVICE_QUALIFIER 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

◆ has_exclusion()

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

Definition at line 163 of file aosoa_pack.hpp.

References flags, and stream.

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

◆ resize()

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

Definition at line 73 of file aosoa_pack.hpp.

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

Referenced by AoSoA_pack().

◆ set_has_exclusion()

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

Definition at line 159 of file aosoa_pack.hpp.

References flags, and stream.

Referenced by commit_particle().

◆ set_vector_at()

template<typename array_layout , typename T , std::size_t N>
DEVICE_QUALIFIER 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 145 of file aosoa_pack.hpp.

References stream.

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 66 of file aosoa_pack.hpp.

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

◆ id

IdViewType CellStructure::AoSoA_pack::id

◆ image

ImageViewType CellStructure::AoSoA_pack::image

Definition at line 60 of file aosoa_pack.hpp.

Referenced by commit_particle(), and resize().

◆ mass

MassViewType CellStructure::AoSoA_pack::mass

Definition at line 65 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

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