Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
shamrock::patch::PatchCoord< dim > Class Template Reference
+ Collaboration diagram for shamrock::patch::PatchCoord< dim >:

Public Member Functions

 PatchCoord (std::array< u64, dim > coord_min, std::array< u64, dim > coord_max)
 
auto split () -> std::array< PatchCoord, splts_count >
 
shammath::CoordRange< u64_3 > get_patch_range () const
 

Static Public Member Functions

static auto get_split_coord (std::array< u64, dim > coord_min, std::array< u64, dim > coord_max) -> std::array< u64, dim >
 
static auto get_split (std::array< u64, dim > coord_min, std::array< u64, dim > coord_max) -> std::array< PatchCoord, splts_count >
 
static PatchCoord merge (PatchCoord c1, PatchCoord c2)
 
static PatchCoord merge (std::array< PatchCoord, splts_count > others)
 
template<class T >
static std::tuple< sycl::vec< T, 3 >, sycl::vec< T, 3 > > convert_coord (std::array< u64, dim > coord_min, std::array< u64, dim > coord_max, std::array< u64, dim > pcoord_offset, sycl::vec< T, 3 > divfact, sycl::vec< T, 3 > offset)
 

Public Attributes

std::array< u64, dim > coord_min
 
std::array< u64, dim > coord_max
 

Static Public Attributes

static constexpr u32 splts_count = 1U << dim
 

Detailed Description

template<u32 dim = 3U>
class shamrock::patch::PatchCoord< dim >

Definition at line 24 of file PatchCoord.hpp.

Constructor & Destructor Documentation

◆ PatchCoord()

template<u32 dim = 3U>
shamrock::patch::PatchCoord< dim >::PatchCoord ( std::array< u64, dim >  coord_min,
std::array< u64, dim >  coord_max 
)
inline

Definition at line 33 of file PatchCoord.hpp.

Member Function Documentation

◆ convert_coord()

template<u32 dim = 3U>
template<class T >
static std::tuple< sycl::vec< T, 3 >, sycl::vec< T, 3 > > shamrock::patch::PatchCoord< dim >::convert_coord ( std::array< u64, dim >  coord_min,
std::array< u64, dim >  coord_max,
std::array< u64, dim >  pcoord_offset,
sycl::vec< T, 3 >  divfact,
sycl::vec< T, 3 >  offset 
)
inlinestatic

Definition at line 142 of file PatchCoord.hpp.

◆ get_patch_range()

template<u32 dim = 3U>
shammath::CoordRange< u64_3 > shamrock::patch::PatchCoord< dim >::get_patch_range ( ) const
inline

Definition at line 135 of file PatchCoord.hpp.

◆ get_split()

template<u32 dim = 3U>
static auto shamrock::patch::PatchCoord< dim >::get_split ( std::array< u64, dim >  coord_min,
std::array< u64, dim >  coord_max 
) -> std::array<PatchCoord, splts_count>
inlinestatic

Definition at line 45 of file PatchCoord.hpp.

◆ get_split_coord()

template<u32 dim = 3U>
static auto shamrock::patch::PatchCoord< dim >::get_split_coord ( std::array< u64, dim >  coord_min,
std::array< u64, dim >  coord_max 
) -> std::array<u64, dim>
inlinestatic

Definition at line 36 of file PatchCoord.hpp.

◆ merge() [1/2]

template<u32 dim = 3U>
static PatchCoord shamrock::patch::PatchCoord< dim >::merge ( PatchCoord< dim >  c1,
PatchCoord< dim >  c2 
)
inlinestatic

Definition at line 119 of file PatchCoord.hpp.

◆ merge() [2/2]

template<u32 dim = 3U>
static PatchCoord shamrock::patch::PatchCoord< dim >::merge ( std::array< PatchCoord< dim >, splts_count >  others)
inlinestatic

Definition at line 129 of file PatchCoord.hpp.

◆ split()

template<u32 dim = 3U>
auto shamrock::patch::PatchCoord< dim >::split ( ) -> std::array<PatchCoord, splts_count>
inline

Definition at line 115 of file PatchCoord.hpp.

Member Data Documentation

◆ coord_max

template<u32 dim = 3U>
std::array<u64, dim> shamrock::patch::PatchCoord< dim >::coord_max

Definition at line 29 of file PatchCoord.hpp.

◆ coord_min

template<u32 dim = 3U>
std::array<u64, dim> shamrock::patch::PatchCoord< dim >::coord_min

Definition at line 28 of file PatchCoord.hpp.

◆ splts_count

template<u32 dim = 3U>
constexpr u32 shamrock::patch::PatchCoord< dim >::splts_count = 1U << dim
staticconstexpr

Definition at line 26 of file PatchCoord.hpp.


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