Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Functions | Variables
hilbert.hpp File Reference

hilbert curve implementation from killing J., 2004 More...

#include "bmi.hpp"
#include "shambackends/sycl.hpp"
#include "shambackends/typeAliasVec.hpp"
+ Include dependency graph for hilbert.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  shamrock::sfc::HilbertCurve< hilbert_repr, dim >
 
class  shamrock::sfc::HilbertCurve< u64, 3 >
 
class  shamrock::sfc::HilbertCurve< quad_hilbert_num, 3 >
 

Namespaces

namespace  shamrock
 namespace for the main framework
 

Typedefs

using shamrock::sfc::quad_hilbert_num = std::pair< u64, u64 >
 

Functions

template<int bits>
u64 shamrock::sfc::details::compute_hilbert_index_3d (u64 x, u64 y, u64 z)
 
template<int bits>
u64 compute_hilbert_index_3d (u64 x, u64 y, u64 z)
 

Variables

constexpr u64 hilbert_box21_sz = 2097152 - 1
 

Detailed Description

hilbert curve implementation from killing J., 2004

Author
Timothée David–Cléris (tim.s.nosp@m.hamr.nosp@m.ock@p.nosp@m.roto.nosp@m.n.me)

modified from : Programming the Hilbert curve killing J., 2004, AIPC, 707, 381. doi:10.1063/1.1751381

Definition in file hilbert.hpp.

Typedef Documentation

◆ quad_hilbert_num

using shamrock::sfc::quad_hilbert_num = typedef std::pair<u64, u64>

Definition at line 114 of file hilbert.hpp.

Function Documentation

◆ compute_hilbert_index_3d() [1/2]

template<int bits>
u64 shamrock::sfc::details::compute_hilbert_index_3d ( u64  x,
u64  y,
u64  z 
)
inline

Definition at line 37 of file hilbert.hpp.

◆ compute_hilbert_index_3d() [2/2]

template<int bits>
u64 compute_hilbert_index_3d ( u64  x,
u64  y,
u64  z 
)
inline

Definition at line 150 of file hilbert.hpp.

Variable Documentation

◆ hilbert_box21_sz

constexpr u64 hilbert_box21_sz = 2097152 - 1
constexpr

Definition at line 146 of file hilbert.hpp.