OPALX (Object Oriented Parallel Accelerator Library for Exascale) MINIorX
OPALX
ippl::detail::meta_lower_laplace< E > Struct Template Reference

#include <LaplaceHelpers.h>

Inheritance diagram for ippl::detail::meta_lower_laplace< E >:
Inheritance graph
Collaboration diagram for ippl::detail::meta_lower_laplace< E >:
Collaboration graph

Public Types

using value_type = typename E::value_type
 

Public Member Functions

KOKKOS_FUNCTION meta_lower_laplace (const E &u, const typename E::Mesh_t::vector_type &hvector, unsigned nghosts, const typename E::Layout_t::NDIndex_t &ldom, const typename E::Layout_t::NDIndex_t &domain)
 
template<typename... Idx>
KOKKOS_INLINE_FUNCTION auto operator() (const Idx... args) const
 
KOKKOS_INLINE_FUNCTION auto operator[] (size_t i) const
 

Static Public Attributes

static constexpr unsigned dim = E::dim
 

Private Types

using Mesh_t = typename E::Mesh_t
 
using Layout_t = typename E::Layout_t
 
using vector_type = typename Mesh_t::vector_type
 
using domain_type = typename Layout_t::NDIndex_t
 

Private Attributes

const E u_m
 
const vector_type hvector_m
 
const unsigned nghosts_m
 
const domain_type ldom_m
 
const domain_type domain_m
 

Detailed Description

template<typename E>
struct ippl::detail::meta_lower_laplace< E >

Definition at line 43 of file LaplaceHelpers.h.

Member Typedef Documentation

◆ domain_type

template<typename E >
using ippl::detail::meta_lower_laplace< E >::domain_type = typename Layout_t::NDIndex_t
private

Definition at line 95 of file LaplaceHelpers.h.

◆ Layout_t

template<typename E >
using ippl::detail::meta_lower_laplace< E >::Layout_t = typename E::Layout_t
private

Definition at line 93 of file LaplaceHelpers.h.

◆ Mesh_t

template<typename E >
using ippl::detail::meta_lower_laplace< E >::Mesh_t = typename E::Mesh_t
private

Definition at line 92 of file LaplaceHelpers.h.

◆ value_type

template<typename E >
using ippl::detail::meta_lower_laplace< E >::value_type = typename E::value_type

Definition at line 49 of file LaplaceHelpers.h.

◆ vector_type

template<typename E >
using ippl::detail::meta_lower_laplace< E >::vector_type = typename Mesh_t::vector_type
private

Definition at line 94 of file LaplaceHelpers.h.

Constructor & Destructor Documentation

◆ meta_lower_laplace()

template<typename E >
KOKKOS_FUNCTION ippl::detail::meta_lower_laplace< E >::meta_lower_laplace ( const E &  u,
const typename E::Mesh_t::vector_type &  hvector,
unsigned  nghosts,
const typename E::Layout_t::NDIndex_t &  ldom,
const typename E::Layout_t::NDIndex_t &  domain 
)
inline

Definition at line 52 of file LaplaceHelpers.h.

Member Function Documentation

◆ operator()()

template<typename E >
template<typename... Idx>
KOKKOS_INLINE_FUNCTION auto ippl::detail::meta_lower_laplace< E >::operator() ( const Idx...  args) const
inline

◆ operator[]()

KOKKOS_INLINE_FUNCTION auto ippl::detail::Expression< meta_lower_laplace< E > , 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 E >
constexpr unsigned ippl::detail::meta_lower_laplace< E >::dim = E::dim
staticconstexpr

Definition at line 48 of file LaplaceHelpers.h.

Referenced by ippl::detail::meta_lower_laplace< E >::operator()().

◆ domain_m

template<typename E >
const domain_type ippl::detail::meta_lower_laplace< E >::domain_m
private

Definition at line 100 of file LaplaceHelpers.h.

Referenced by ippl::detail::meta_lower_laplace< E >::operator()().

◆ hvector_m

template<typename E >
const vector_type ippl::detail::meta_lower_laplace< E >::hvector_m
private

Definition at line 97 of file LaplaceHelpers.h.

Referenced by ippl::detail::meta_lower_laplace< E >::operator()().

◆ ldom_m

template<typename E >
const domain_type ippl::detail::meta_lower_laplace< E >::ldom_m
private

Definition at line 99 of file LaplaceHelpers.h.

Referenced by ippl::detail::meta_lower_laplace< E >::operator()().

◆ nghosts_m

template<typename E >
const unsigned ippl::detail::meta_lower_laplace< E >::nghosts_m
private

Definition at line 98 of file LaplaceHelpers.h.

Referenced by ippl::detail::meta_lower_laplace< E >::operator()().

◆ u_m

template<typename E >
const E ippl::detail::meta_lower_laplace< E >::u_m
private

Definition at line 96 of file LaplaceHelpers.h.

Referenced by ippl::detail::meta_lower_laplace< E >::operator()().


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