|
IPPL (Independent Parallel Particle Layer)
IPPL
|
#include <Vector.h>
Public Types | |
| typedef T | value_type |
| using | iterator = T* |
| using | const_iterator = const T* |
Public Member Functions | |
| KOKKOS_FUNCTION | Vector () |
| 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_FUNCTION | ~Vector () |
| 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 |
| KOKKOS_INLINE_FUNCTION auto | operator[] (size_t i) const |
Public Attributes | |
| T | data_m [Dim] |
Static Public Attributes | |
| static constexpr unsigned | dim = Dim |
| T | intrinsic vector data type |
| Dim | vector dimension |
| using ippl::Vector< T, Dim >::const_iterator = const T* |
| using ippl::Vector< T, Dim >::iterator = T* |
| typedef T ippl::Vector< T, Dim >::value_type |
|
inline |
Definition at line 29 of file Vector.h.
Referenced by dot(), operator*=(), operator*=(), operator+=(), operator+=(), operator-=(), operator-=(), operator/=(), operator/=(), operator=(), and Vector().
|
explicit |
Definition at line 18 of file Vector.hpp.
References Vector().
| KOKKOS_FUNCTION ippl::Vector< T, Dim >::Vector | ( | const detail::Expression< E, N > & | expr | ) |
Definition at line 23 of file Vector.hpp.
|
default |
Definition at line 30 of file Vector.hpp.
| ippl::Vector< T, Dim >::Vector | ( | const std::array< std::vector< T >, Dim > & | a | ) |
|
inline |
|
constexpr |
Definition at line 160 of file Vector.hpp.
References data_m.
Referenced by main(), AlpineManager< T, Dim >::scatterCIC(), ChargedParticles< PLayout, T, Dim >::scatterCIC(), and ippl::random::InverseTransformSampling< T, Dim, DeviceType, Distribution >::updateBounds().
|
constexpr |
Definition at line 170 of file Vector.hpp.
References data_m.
| KOKKOS_INLINE_FUNCTION T ippl::Vector< T, Dim >::dot | ( | const Vector< T, Dim > & | rhs | ) | const |
Definition at line 182 of file Vector.hpp.
References data_m, Dim, and Vector().
Referenced by ippl::NedelecSpace< T, Dim, Order, ElementType, QuadratureType, FieldType >::computeError(), ippl::NedelecSpace< T, Dim, Order, ElementType, QuadratureType, FieldType >::evaluateLoadVector(), ippl::NedelecSpace< T, Dim, Order, ElementType, QuadratureType, FieldType >::evaluateLoadVectorFunctor(), ippl::LagrangeSpace< T, Dim, Order, ElementType, QuadratureType, FieldLHS, FieldRHS >::DeviceStruct::getGlobalDOFIndices(), and ippl::ParticleSpatialOverlapLayout< T, Dim, Mesh, PositionProperties >::toFlatCellIndex().
|
constexpr |
Definition at line 165 of file Vector.hpp.
Referenced by main(), AlpineManager< T, Dim >::scatterCIC(), ChargedParticles< PLayout, T, Dim >::scatterCIC(), and ippl::random::InverseTransformSampling< T, Dim, DeviceType, Distribution >::updateBounds().
|
constexpr |
Definition at line 176 of file Vector.hpp.
| KOKKOS_INLINE_FUNCTION Vector< T, Dim >::value_type & ippl::Vector< T, Dim >::operator() | ( | unsigned int | i | ) |
Definition at line 65 of file Vector.hpp.
References data_m.
| KOKKOS_INLINE_FUNCTION Vector< T, Dim >::value_type ippl::Vector< T, Dim >::operator() | ( | unsigned int | i | ) | const |
Definition at line 72 of file Vector.hpp.
| KOKKOS_INLINE_FUNCTION Vector< T, Dim > & ippl::Vector< T, Dim >::operator*= | ( | const detail::Expression< E, N > & | expr | ) |
Definition at line 115 of file Vector.hpp.
References data_m, Dim, and Vector().
Referenced by operator/=().
| KOKKOS_INLINE_FUNCTION Vector< T, Dim > & ippl::Vector< T, Dim >::operator*= | ( | const T & | val | ) |
Definition at line 147 of file Vector.hpp.
References data_m, Dim, and Vector().
| KOKKOS_INLINE_FUNCTION Vector< T, Dim > & ippl::Vector< T, Dim >::operator+= | ( | const detail::Expression< E, N > & | expr | ) |
Definition at line 95 of file Vector.hpp.
Referenced by operator-=().
| KOKKOS_INLINE_FUNCTION Vector< T, Dim > & ippl::Vector< T, Dim >::operator+= | ( | const T & | val | ) |
Definition at line 134 of file Vector.hpp.
References data_m, Dim, and Vector().
| KOKKOS_INLINE_FUNCTION Vector< T, Dim > & ippl::Vector< T, Dim >::operator-= | ( | const detail::Expression< E, N > & | expr | ) |
Definition at line 105 of file Vector.hpp.
References data_m, Dim, and Vector().
| KOKKOS_INLINE_FUNCTION Vector< T, Dim > & ippl::Vector< T, Dim >::operator-= | ( | const T & | val | ) |
Definition at line 142 of file Vector.hpp.
References operator+=(), and Vector().
| KOKKOS_INLINE_FUNCTION Vector< T, Dim > & ippl::Vector< T, Dim >::operator/= | ( | const detail::Expression< E, N > & | expr | ) |
Definition at line 125 of file Vector.hpp.
References data_m, Dim, and Vector().
| KOKKOS_INLINE_FUNCTION Vector< T, Dim > & ippl::Vector< T, Dim >::operator/= | ( | const T & | val | ) |
Definition at line 155 of file Vector.hpp.
References operator*=(), and Vector().
| KOKKOS_INLINE_FUNCTION Vector< T, Dim > & ippl::Vector< T, Dim >::operator= | ( | const detail::Expression< E, N > & | expr | ) |
Definition at line 85 of file Vector.hpp.
References data_m, Dim, and Vector().
|
inlineinherited |
Access single element of the expression
Definition at line 32 of file IpplExpressions.h.
| KOKKOS_INLINE_FUNCTION Vector< T, Dim >::value_type & ippl::Vector< T, Dim >::operator[] | ( | unsigned int | i | ) |
Definition at line 51 of file Vector.hpp.
References data_m.
| KOKKOS_INLINE_FUNCTION Vector< T, Dim >::value_type ippl::Vector< T, Dim >::operator[] | ( | unsigned int | i | ) | const |
Definition at line 58 of file Vector.hpp.
| KOKKOS_INLINE_FUNCTION T ippl::Vector< T, Dim >::Pnorm | ( | const int | p = 2 | ) | const |
Definition at line 191 of file Vector.hpp.
Definition at line 104 of file Vector.h.
Referenced by begin(), begin(), dot(), end(), end(), operator()(), operator*=(), operator*=(), operator+=(), operator-=(), operator/=(), operator=(), operator[](), Pnorm(), Vector(), Vector(), and Vector().
|
staticconstexpr |
Definition at line 26 of file Vector.h.
Referenced by ippl::FiniteElementSpace< T, Dim, NumElementDOFs, ElementType, QuadratureType, FieldLHS, FieldRHS >::getElementMeshVertexPoints(), ippl::LagrangeSpace< T, Dim, Order, ElementType, QuadratureType, FieldLHS, FieldRHS >::DeviceStruct::getLocalDOFIndex(), and ippl::NedelecSpace< T, Dim, Order, ElementType, QuadratureType, FieldType >::getLocalDOFIndex().