IPPL API Reference
Independent Parallel Particle Layer C++ API
Loading...
Searching...
No Matches
ippl::Vector< T, Dim > Class Template Reference

#include <Vector.h>

+ Inheritance diagram for ippl::Vector< T, Dim >:
+ Collaboration diagram for ippl::Vector< T, Dim >:

Public Types

typedef T value_type
 
using iterator = T *
 
using const_iterator = const T *
 

Public Member Functions

template<typename... Args, typename std::enable_if< sizeof...(Args)==Dim, bool >::type = true>
KOKKOS_FUNCTION Vector (const Args &... args)
 
template<typename E , size_t N>
KOKKOS_FUNCTION Vector (const detail::Expression< E, N > &expr)
 
KOKKOS_DEFAULTED_FUNCTION Vector (const Vector< T, Dim > &v)=default
 
KOKKOS_FUNCTION Vector (const T &val)
 
 Vector (const std::array< T, Dim > &a)
 
 Vector (const std::array< std::vector< T >, Dim > &a)
 
KOKKOS_FUNCTION Vector (const std::initializer_list< T > &list)
 
KOKKOS_INLINE_FUNCTION value_type & operator[] (unsigned int i)
 
KOKKOS_INLINE_FUNCTION value_type operator[] (unsigned int i) const
 
KOKKOS_INLINE_FUNCTION value_type & operator() (unsigned int i)
 
KOKKOS_INLINE_FUNCTION value_type operator() (unsigned int i) const
 
template<typename E , size_t N>
KOKKOS_INLINE_FUNCTION Vector< T, Dim > & operator= (const detail::Expression< E, N > &expr)
 
template<typename E , size_t N>
KOKKOS_INLINE_FUNCTION Vector< T, Dim > & operator+= (const detail::Expression< E, N > &expr)
 
template<typename E , size_t N>
KOKKOS_INLINE_FUNCTION Vector< T, Dim > & operator-= (const detail::Expression< E, N > &expr)
 
template<typename E , size_t N>
KOKKOS_INLINE_FUNCTION Vector< T, Dim > & operator*= (const detail::Expression< E, N > &expr)
 
template<typename E , size_t N>
KOKKOS_INLINE_FUNCTION Vector< T, Dim > & operator/= (const detail::Expression< E, N > &expr)
 
KOKKOS_INLINE_FUNCTION Vector< T, Dim > & operator+= (const T &val)
 
KOKKOS_INLINE_FUNCTION Vector< T, Dim > & operator-= (const T &val)
 
KOKKOS_INLINE_FUNCTION Vector< T, Dim > & operator*= (const T &val)
 
KOKKOS_INLINE_FUNCTION Vector< T, Dim > & operator/= (const T &val)
 
KOKKOS_INLINE_FUNCTION constexpr iterator begin ()
 
KOKKOS_INLINE_FUNCTION constexpr iterator end ()
 
KOKKOS_INLINE_FUNCTION constexpr const_iterator begin () const
 
KOKKOS_INLINE_FUNCTION constexpr const_iterator end () const
 
KOKKOS_INLINE_FUNCTION T dot (const Vector< T, Dim > &rhs) const
 
KOKKOS_INLINE_FUNCTION T Pnorm (const int p=2) const
 
- Public Member Functions inherited from ippl::detail::Expression< Vector< T, Dim >, sizeof(T) *Dim >
KOKKOS_INLINE_FUNCTION auto operator[] (size_t i) const
 

Public Attributes

data_m [Dim]
 

Static Public Attributes

static constexpr unsigned dim = Dim
 
- Static Public Attributes inherited from ippl::detail::Expression< Vector< T, Dim >, sizeof(T) *Dim >
static constexpr unsigned dim
 

Detailed Description

template<typename T, unsigned Dim>
class ippl::Vector< T, Dim >
Template Parameters
Tintrinsic vector data type
Dimvector dimension

Constructor & Destructor Documentation

◆ Vector()

template<typename T , unsigned Dim>
KOKKOS_FUNCTION ippl::Vector< T, Dim >::Vector ( const std::initializer_list< T > &  list)
Parameters
listof values

The documentation for this class was generated from the following files: