OPALX (Object Oriented Parallel Accelerator Library for Exascale) MINIorX
OPALX
ippl::detail::meta_dot< E1, E2 > Struct Template Reference

#include <IpplOperations.h>

Inheritance diagram for ippl::detail::meta_dot< E1, E2 >:
Inheritance graph
Collaboration diagram for ippl::detail::meta_dot< E1, E2 >:
Collaboration graph

Public Member Functions

KOKKOS_FUNCTION meta_dot (const E1 &u, const E2 &v)
 
KOKKOS_INLINE_FUNCTION auto apply () const
 
template<typename... Args>
KOKKOS_INLINE_FUNCTION auto operator() (Args... args) const
 
KOKKOS_INLINE_FUNCTION auto operator[] (size_t i) const
 

Static Public Attributes

static constexpr unsigned dim = E1::dim
 

Private Attributes

const E1 u_m
 
const E2 v_m
 

Detailed Description

template<typename E1, typename E2>
struct ippl::detail::meta_dot< E1, E2 >

Meta function of dot product.

Definition at line 256 of file IpplOperations.h.

Constructor & Destructor Documentation

◆ meta_dot()

template<typename E1 , typename E2 >
KOKKOS_FUNCTION ippl::detail::meta_dot< E1, E2 >::meta_dot ( const E1 &  u,
const E2 &  v 
)
inline

Definition at line 261 of file IpplOperations.h.

Member Function Documentation

◆ apply()

template<typename E1 , typename E2 >
KOKKOS_INLINE_FUNCTION auto ippl::detail::meta_dot< E1, E2 >::apply ( ) const
inline

◆ operator()()

template<typename E1 , typename E2 >
template<typename... Args>
KOKKOS_INLINE_FUNCTION auto ippl::detail::meta_dot< E1, E2 >::operator() ( Args...  args) const
inline

Definition at line 282 of file IpplOperations.h.

References ippl::dot(), ippl::detail::meta_dot< E1, E2 >::u_m, and ippl::detail::meta_dot< E1, E2 >::v_m.

Here is the call graph for this function:

◆ operator[]()

KOKKOS_INLINE_FUNCTION auto ippl::detail::Expression< meta_dot< E1, E2 > , N >::operator[] ( size_t  i) const
inlineinherited

Access single element of the expression

Definition at line 32 of file IpplExpressions.h.

Member Data Documentation

◆ dim

template<typename E1 , typename E2 >
constexpr unsigned ippl::detail::meta_dot< E1, E2 >::dim = E1::dim
staticconstexpr

Definition at line 257 of file IpplOperations.h.

◆ u_m

template<typename E1 , typename E2 >
const E1 ippl::detail::meta_dot< E1, E2 >::u_m
private

◆ v_m

template<typename E1 , typename E2 >
const E2 ippl::detail::meta_dot< E1, E2 >::v_m
private

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