Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
RadixTree.hpp File Reference
Include dependency graph for RadixTree.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  RadixTree< Umorton, Tvec >
 The radix tree. More...
struct  RadixTree< Umorton, Tvec >::CuttedTree
class  RadixTree< Umorton, Tvec >::LeafIterator
class  tree_comm::RadixTreeMPIRequest< u_morton, vec3 >
class  walker::Radix_tree_accessor< u_morton, vec3 >

Functions

template<class u_morton, class vec3>
void tree_comm::wait_all (std::vector< RadixTreeMPIRequest< u_morton, vec3 > > &rqs)
template<class u_morton, class vec3>
u64 tree_comm::comm_isend (RadixTree< u_morton, vec3 > &rtree, std::vector< RadixTreeMPIRequest< u_morton, vec3 > > &rqs, i32 rank_dest, i32 tag, MPI_Comm comm)
template<class u_morton, class vec3>
u64 tree_comm::comm_irecv_probe (RadixTree< u_morton, vec3 > &rtree, std::vector< RadixTreeMPIRequest< u_morton, vec3 > > &rqs, i32 rank_source, i32 tag, MPI_Comm comm)
template<class vec3, class flt>
bool walker::interaction_crit::sph_radix_cell_crit (vec3 xyz_a, vec3 part_a_box_min, vec3 part_a_box_max, vec3 cur_cell_box_min, vec3 cur_cell_box_max, flt box_int_sz)
template<class vec3, class flt>
bool walker::interaction_crit::sph_cell_cell_crit (vec3 cella_min, vec3 cella_max, vec3 cellb_min, vec3 cellb_max, flt rint_a, flt rint_b)
template<class Rta, class Functor_iter>
void walker::iter_object_in_cell (const Rta &acc, const u32 &cell_id, Functor_iter &&func_it)
template<class Rta, class Functor_int_cd, class Functor_iter, class Functor_iter_excl>
void walker::rtree_for_cell (const Rta &acc, Functor_int_cd &&func_int_cd, Functor_iter &&func_it, Functor_iter_excl &&func_excl)
template<class Rta, class Functor_int_cd, class Functor_iter, class Functor_iter_excl>
void walker::rtree_for (const Rta &acc, Functor_int_cd &&func_int_cd, Functor_iter &&func_it, Functor_iter_excl &&func_excl)
template<class Rta, class Functor_int_cd, class Functor_iter, class Functor_iter_excl, class arr_type>
void walker::rtree_for_fill_cache (Rta &acc, arr_type &cell_cache, Functor_int_cd &&func_int_cd)
template<class Rta, class Functor_int_cd, class Functor_iter, class Functor_iter_excl, class arr_type>
void walker::rtree_for (Rta &acc, arr_type &cell_cache, Functor_int_cd &&func_int_cd, Functor_iter &&func_it)

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 RadixTree.hpp.

Function Documentation

◆ comm_irecv_probe()

template<class u_morton, class vec3>
u64 tree_comm::comm_irecv_probe ( RadixTree< u_morton, vec3 > & rtree,
std::vector< RadixTreeMPIRequest< u_morton, vec3 > > & rqs,
i32 rank_source,
i32 tag,
MPI_Comm comm )
inline

Definition at line 738 of file RadixTree.hpp.

◆ comm_isend()

template<class u_morton, class vec3>
u64 tree_comm::comm_isend ( RadixTree< u_morton, vec3 > & rtree,
std::vector< RadixTreeMPIRequest< u_morton, vec3 > > & rqs,
i32 rank_dest,
i32 tag,
MPI_Comm comm )
inline

Definition at line 621 of file RadixTree.hpp.

◆ iter_object_in_cell()

template<class Rta, class Functor_iter>
void walker::iter_object_in_cell ( const Rta & acc,
const u32 & cell_id,
Functor_iter && func_it )
inline

Definition at line 880 of file RadixTree.hpp.

◆ rtree_for() [1/2]

template<class Rta, class Functor_int_cd, class Functor_iter, class Functor_iter_excl>
void walker::rtree_for ( const Rta & acc,
Functor_int_cd && func_int_cd,
Functor_iter && func_it,
Functor_iter_excl && func_excl )
inline

Definition at line 986 of file RadixTree.hpp.

◆ rtree_for() [2/2]

template<class Rta, class Functor_int_cd, class Functor_iter, class Functor_iter_excl, class arr_type>
void walker::rtree_for ( Rta & acc,
arr_type & cell_cache,
Functor_int_cd && func_int_cd,
Functor_iter && func_it )
inline

Definition at line 1122 of file RadixTree.hpp.

◆ rtree_for_cell()

template<class Rta, class Functor_int_cd, class Functor_iter, class Functor_iter_excl>
void walker::rtree_for_cell ( const Rta & acc,
Functor_int_cd && func_int_cd,
Functor_iter && func_it,
Functor_iter_excl && func_excl )
inline

Definition at line 940 of file RadixTree.hpp.

◆ rtree_for_fill_cache()

template<class Rta, class Functor_int_cd, class Functor_iter, class Functor_iter_excl, class arr_type>
void walker::rtree_for_fill_cache ( Rta & acc,
arr_type & cell_cache,
Functor_int_cd && func_int_cd )
inline

Definition at line 1050 of file RadixTree.hpp.

◆ sph_cell_cell_crit()

template<class vec3, class flt>
bool walker::interaction_crit::sph_cell_cell_crit ( vec3 cella_min,
vec3 cella_max,
vec3 cellb_min,
vec3 cellb_max,
flt rint_a,
flt rint_b )
inline

Definition at line 819 of file RadixTree.hpp.

◆ sph_radix_cell_crit()

template<class vec3, class flt>
bool walker::interaction_crit::sph_radix_cell_crit ( vec3 xyz_a,
vec3 part_a_box_min,
vec3 part_a_box_max,
vec3 cur_cell_box_min,
vec3 cur_cell_box_max,
flt box_int_sz )
inline

Definition at line 802 of file RadixTree.hpp.

◆ wait_all()

template<class u_morton, class vec3>
void tree_comm::wait_all ( std::vector< RadixTreeMPIRequest< u_morton, vec3 > > & rqs)
inline

Definition at line 614 of file RadixTree.hpp.