Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
Macros | Functions
karras_alg.cpp File Reference
#include "shambase/exception.hpp"
#include "shambackends/math.hpp"
#include "shamtree/kernels/karras_alg.hpp"
#include <stdexcept>
+ Include dependency graph for karras_alg.cpp:

Go to the source code of this file.

Macros

#define SGN(x)   (x == 0) ? 0 : ((x > 0) ? 1 : -1)
 

Functions

template<class u_morton , class kername >
void __sycl_karras_alg (sycl::queue &queue, u32 internal_cell_count, sycl::buffer< u_morton > &in_morton, sycl::buffer< u32 > &out_buf_lchild_id, sycl::buffer< u32 > &out_buf_rchild_id, sycl::buffer< u8 > &out_buf_lchild_flag, sycl::buffer< u8 > &out_buf_rchild_flag, sycl::buffer< u32 > &out_buf_endrange)
 
template<>
void sycl_karras_alg< u32 > (sycl::queue &queue, u32 internal_cell_count, sycl::buffer< u32 > &in_morton, sycl::buffer< u32 > &out_buf_lchild_id, sycl::buffer< u32 > &out_buf_rchild_id, sycl::buffer< u8 > &out_buf_lchild_flag, sycl::buffer< u8 > &out_buf_rchild_flag, sycl::buffer< u32 > &out_buf_endrange)
 
template<>
void sycl_karras_alg< u64 > (sycl::queue &queue, u32 internal_cell_count, sycl::buffer< u64 > &in_morton, sycl::buffer< u32 > &out_buf_lchild_id, sycl::buffer< u32 > &out_buf_rchild_id, sycl::buffer< u8 > &out_buf_lchild_flag, sycl::buffer< u8 > &out_buf_rchild_flag, sycl::buffer< u32 > &out_buf_endrange)
 

Detailed Description

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

Definition in file karras_alg.cpp.

Macro Definition Documentation

◆ SGN

#define SGN (   x)    (x == 0) ? 0 : ((x > 0) ? 1 : -1)

Definition at line 21 of file karras_alg.cpp.

Function Documentation

◆ __sycl_karras_alg()

template<class u_morton , class kername >
void __sycl_karras_alg ( sycl::queue &  queue,
u32  internal_cell_count,
sycl::buffer< u_morton > &  in_morton,
sycl::buffer< u32 > &  out_buf_lchild_id,
sycl::buffer< u32 > &  out_buf_rchild_id,
sycl::buffer< u8 > &  out_buf_lchild_flag,
sycl::buffer< u8 > &  out_buf_rchild_flag,
sycl::buffer< u32 > &  out_buf_endrange 
)

Definition at line 24 of file karras_alg.cpp.

◆ sycl_karras_alg< u32 >()

template<>
void sycl_karras_alg< u32 > ( sycl::queue &  queue,
u32  internal_cell_count,
sycl::buffer< u32 > &  in_morton,
sycl::buffer< u32 > &  out_buf_lchild_id,
sycl::buffer< u32 > &  out_buf_rchild_id,
sycl::buffer< u8 > &  out_buf_lchild_flag,
sycl::buffer< u8 > &  out_buf_rchild_flag,
sycl::buffer< u32 > &  out_buf_endrange 
)

Definition at line 123 of file karras_alg.cpp.

◆ sycl_karras_alg< u64 >()

template<>
void sycl_karras_alg< u64 > ( sycl::queue &  queue,
u32  internal_cell_count,
sycl::buffer< u64 > &  in_morton,
sycl::buffer< u32 > &  out_buf_lchild_id,
sycl::buffer< u32 > &  out_buf_rchild_id,
sycl::buffer< u8 > &  out_buf_lchild_flag,
sycl::buffer< u8 > &  out_buf_rchild_flag,
sycl::buffer< u32 > &  out_buf_endrange 
)

Definition at line 144 of file karras_alg.cpp.