SubCoordinates< Base > Class Template Reference#

DiFfRG: DiFfRG::SubCoordinates< Base > Class Template Reference
DiFfRG
DiFfRG::SubCoordinates< Base > Class Template Reference

#include <coordinates.hh>

Inheritance diagram for DiFfRG::SubCoordinates< Base >:

Public Types

using ctype = typename Base::ctype
 

Public Member Functions

 SubCoordinates (const Base &base, size_t offset, size_t size)
 
device::array< size_t, dim > KOKKOS_FORCEINLINE_FUNCTION sizes () const
 
size_t KOKKOS_FORCEINLINE_FUNCTION size () const
 
device::array< size_t, dim > KOKKOS_INLINE_FUNCTION from_linear_index (size_t s) const
 
template<typename... I>
requires (std::is_convertible_v<std::decay_t<I>, size_t> && ...)
KOKKOS_FORCEINLINE_FUNCTION device::array< ctype, dimforward (I &&...i) const
 
template<typename IT >
KOKKOS_INLINE_FUNCTION device::array< ctype, dimforward (device::array< IT, dim > i) const
 
template<typename... I>
KOKKOS_FORCEINLINE_FUNCTION device::array< ctype, dimbackward (I &&...i) const
 
KOKKOS_INLINE_FUNCTION device::array< ctype, dimbackward (device::array< size_t, dim > i) const
 
std::string to_string () const
 

Static Public Attributes

static constexpr size_t dim = Base::dim
 

Private Attributes

device::array< size_t, dimoffsets
 
device::array< size_t, dimm_sizes
 
const size_t m_size
 

Member Typedef Documentation

◆ ctype

template<typename Base >
using DiFfRG::SubCoordinates< Base >::ctype = typename Base::ctype

Constructor & Destructor Documentation

◆ SubCoordinates()

template<typename Base >
DiFfRG::SubCoordinates< Base >::SubCoordinates ( const Base & base,
size_t offset,
size_t size )
inline

Member Function Documentation

◆ backward() [1/2]

template<typename Base >
KOKKOS_INLINE_FUNCTION device::array< ctype, dim > DiFfRG::SubCoordinates< Base >::backward ( device::array< size_t, dim > i) const
inline

◆ backward() [2/2]

template<typename Base >
template<typename... I>
KOKKOS_FORCEINLINE_FUNCTION device::array< ctype, dim > DiFfRG::SubCoordinates< Base >::backward ( I &&... i) const
inline

◆ forward() [1/2]

template<typename Base >
template<typename IT >
KOKKOS_INLINE_FUNCTION device::array< ctype, dim > DiFfRG::SubCoordinates< Base >::forward ( device::array< IT, dim > i) const
inline

◆ forward() [2/2]

template<typename Base >
template<typename... I>
requires (std::is_convertible_v<std::decay_t<I>, size_t> && ...)
KOKKOS_FORCEINLINE_FUNCTION device::array< ctype, dim > DiFfRG::SubCoordinates< Base >::forward ( I &&... i) const
inline

◆ from_linear_index()

template<typename Base >
device::array< size_t, dim > KOKKOS_INLINE_FUNCTION DiFfRG::SubCoordinates< Base >::from_linear_index ( size_t s) const
inline

◆ size()

template<typename Base >
size_t KOKKOS_FORCEINLINE_FUNCTION DiFfRG::SubCoordinates< Base >::size ( ) const
inline

◆ sizes()

template<typename Base >
device::array< size_t, dim > KOKKOS_FORCEINLINE_FUNCTION DiFfRG::SubCoordinates< Base >::sizes ( ) const
inline

◆ to_string()

template<typename Base >
std::string DiFfRG::SubCoordinates< Base >::to_string ( ) const
inline

Member Data Documentation

◆ dim

template<typename Base >
size_t DiFfRG::SubCoordinates< Base >::dim = Base::dim
staticconstexpr

◆ m_size

template<typename Base >
const size_t DiFfRG::SubCoordinates< Base >::m_size
private

◆ m_sizes

template<typename Base >
device::array<size_t, dim> DiFfRG::SubCoordinates< Base >::m_sizes
private

◆ offsets

template<typename Base >
device::array<size_t, dim> DiFfRG::SubCoordinates< Base >::offsets
private

The documentation for this class was generated from the following file:
  • /home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/discretization/coordinates/coordinates.hh