Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
Classes | Functions
geometry_utils.hpp File Reference
#include "shambackends/sycl.hpp"
#include <tuple>
+ Include dependency graph for geometry_utils.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ALignedAxisBoundingBox< flt >
 

Functions

template<class VecType >
bool BBAA::is_coord_in_range (VecType part_pos, VecType pos_min_patch, VecType pos_max_patch)
 
template<>
bool BBAA::is_coord_in_range< f32_3 > (f32_3 part_pos, f32_3 pos_min_patch, f32_3 pos_max_patch)
 
template<>
bool BBAA::is_coord_in_range< f64_3 > (f64_3 part_pos, f64_3 pos_min_patch, f64_3 pos_max_patch)
 
template<class VecType >
bool BBAA::is_coord_in_range_incl_max (VecType part_pos, VecType pos_min_patch, VecType pos_max_patch)
 
template<>
bool BBAA::is_coord_in_range_incl_max< f32_3 > (f32_3 part_pos, f32_3 pos_min_patch, f32_3 pos_max_patch)
 
template<>
bool BBAA::is_coord_in_range_incl_max< f64_3 > (f64_3 part_pos, f64_3 pos_min_patch, f64_3 pos_max_patch)
 
template<class VecType >
bool BBAA::iscellb_inside_a (VecType pos_min_cella, VecType pos_max_cella, VecType pos_min_cellb, VecType pos_max_cellb)
 
template<>
bool BBAA::iscellb_inside_a< u32_3 > (u32_3 pos_min_cella, u32_3 pos_max_cella, u32_3 pos_min_cellb, u32_3 pos_max_cellb)
 
template<>
bool BBAA::iscellb_inside_a< f32_3 > (f32_3 pos_min_cella, f32_3 pos_max_cella, f32_3 pos_min_cellb, f32_3 pos_max_cellb)
 
template<class VecType >
bool BBAA::cella_neigh_b (VecType pos_min_cella, VecType pos_max_cella, VecType pos_min_cellb, VecType pos_max_cellb)
 
template<>
bool BBAA::cella_neigh_b< f32_3 > (f32_3 pos_min_cella, f32_3 pos_max_cella, f32_3 pos_min_cellb, f32_3 pos_max_cellb)
 
template<>
bool BBAA::cella_neigh_b< f64_3 > (f64_3 pos_min_cella, f64_3 pos_max_cella, f64_3 pos_min_cellb, f64_3 pos_max_cellb)
 
template<class VecType >
bool BBAA::intersect_not_null_cella_b (VecType pos_min_cella, VecType pos_max_cella, VecType pos_min_cellb, VecType pos_max_cellb)
 
template<>
bool BBAA::intersect_not_null_cella_b< f64_3 > (f64_3 pos_min_cella, f64_3 pos_max_cella, f64_3 pos_min_cellb, f64_3 pos_max_cellb)
 
template<>
bool BBAA::intersect_not_null_cella_b< f32_3 > (f32_3 pos_min_cella, f32_3 pos_max_cella, f32_3 pos_min_cellb, f32_3 pos_max_cellb)
 
template<>
bool BBAA::intersect_not_null_cella_b< u64_3 > (u64_3 pos_min_cella, u64_3 pos_max_cella, u64_3 pos_min_cellb, u64_3 pos_max_cellb)
 
template<>
bool BBAA::intersect_not_null_cella_b< u32_3 > (u32_3 pos_min_cella, u32_3 pos_max_cella, u32_3 pos_min_cellb, u32_3 pos_max_cellb)
 
template<class VecType >
std::tuple< VecType, VecType > BBAA::get_intersect_cella_b (VecType pos_min_cella, VecType pos_max_cella, VecType pos_min_cellb, VecType pos_max_cellb)
 
template<>
std::tuple< f64_3, f64_3 > BBAA::get_intersect_cella_b< f64_3 > (f64_3 pos_min_cella, f64_3 pos_max_cella, f64_3 pos_min_cellb, f64_3 pos_max_cellb)
 
template<>
std::tuple< f32_3, f32_3 > BBAA::get_intersect_cella_b< f32_3 > (f32_3 pos_min_cella, f32_3 pos_max_cella, f32_3 pos_min_cellb, f32_3 pos_max_cellb)
 
template<class VecType >
VecType::element_type BBAA::get_sq_distance_to_BBAAsurface (VecType pos, VecType pos_min_cell, VecType pos_max_cell)
 
template<>
f32 BBAA::get_sq_distance_to_BBAAsurface< f32_3 > (f32_3 pos, f32_3 pos_min_cell, f32_3 pos_max_cell)
 
template<>
f64 BBAA::get_sq_distance_to_BBAAsurface< f64_3 > (f64_3 pos, f64_3 pos_min_cell, f64_3 pos_max_cell)
 

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

Function Documentation

◆ cella_neigh_b< f32_3 >()

template<>
bool BBAA::cella_neigh_b< f32_3 > ( f32_3  pos_min_cella,
f32_3  pos_max_cella,
f32_3  pos_min_cellb,
f32_3  pos_max_cellb 
)
inline

Definition at line 114 of file geometry_utils.hpp.

◆ cella_neigh_b< f64_3 >()

template<>
bool BBAA::cella_neigh_b< f64_3 > ( f64_3  pos_min_cella,
f64_3  pos_max_cella,
f64_3  pos_min_cellb,
f64_3  pos_max_cellb 
)
inline

Definition at line 126 of file geometry_utils.hpp.

◆ get_intersect_cella_b< f32_3 >()

template<>
std::tuple< f32_3, f32_3 > BBAA::get_intersect_cella_b< f32_3 > ( f32_3  pos_min_cella,
f32_3  pos_max_cella,
f32_3  pos_min_cellb,
f32_3  pos_max_cellb 
)
inline

Definition at line 190 of file geometry_utils.hpp.

◆ get_intersect_cella_b< f64_3 >()

template<>
std::tuple< f64_3, f64_3 > BBAA::get_intersect_cella_b< f64_3 > ( f64_3  pos_min_cella,
f64_3  pos_max_cella,
f64_3  pos_min_cellb,
f64_3  pos_max_cellb 
)
inline

Definition at line 190 of file geometry_utils.hpp.

◆ get_sq_distance_to_BBAAsurface< f32_3 >()

template<>
f32 BBAA::get_sq_distance_to_BBAAsurface< f32_3 > ( f32_3  pos,
f32_3  pos_min_cell,
f32_3  pos_max_cell 
)
inline

Definition at line 211 of file geometry_utils.hpp.

◆ get_sq_distance_to_BBAAsurface< f64_3 >()

template<>
f64 BBAA::get_sq_distance_to_BBAAsurface< f64_3 > ( f64_3  pos,
f64_3  pos_min_cell,
f64_3  pos_max_cell 
)
inline

Definition at line 225 of file geometry_utils.hpp.

◆ intersect_not_null_cella_b< f32_3 >()

template<>
bool BBAA::intersect_not_null_cella_b< f32_3 > ( f32_3  pos_min_cella,
f32_3  pos_max_cella,
f32_3  pos_min_cellb,
f32_3  pos_max_cellb 
)
inline

Definition at line 154 of file geometry_utils.hpp.

◆ intersect_not_null_cella_b< f64_3 >()

template<>
bool BBAA::intersect_not_null_cella_b< f64_3 > ( f64_3  pos_min_cella,
f64_3  pos_max_cella,
f64_3  pos_min_cellb,
f64_3  pos_max_cellb 
)
inline

Definition at line 142 of file geometry_utils.hpp.

◆ intersect_not_null_cella_b< u32_3 >()

template<>
bool BBAA::intersect_not_null_cella_b< u32_3 > ( u32_3  pos_min_cella,
u32_3  pos_max_cella,
u32_3  pos_min_cellb,
u32_3  pos_max_cellb 
)
inline

Definition at line 178 of file geometry_utils.hpp.

◆ intersect_not_null_cella_b< u64_3 >()

template<>
bool BBAA::intersect_not_null_cella_b< u64_3 > ( u64_3  pos_min_cella,
u64_3  pos_max_cella,
u64_3  pos_min_cellb,
u64_3  pos_max_cellb 
)
inline

Definition at line 166 of file geometry_utils.hpp.

◆ is_coord_in_range< f32_3 >()

template<>
bool BBAA::is_coord_in_range< f32_3 > ( f32_3  part_pos,
f32_3  pos_min_patch,
f32_3  pos_max_patch 
)
inline

Definition at line 47 of file geometry_utils.hpp.

◆ is_coord_in_range< f64_3 >()

template<>
bool BBAA::is_coord_in_range< f64_3 > ( f64_3  part_pos,
f64_3  pos_min_patch,
f64_3  pos_max_patch 
)
inline

Definition at line 55 of file geometry_utils.hpp.

◆ is_coord_in_range_incl_max< f32_3 >()

template<>
bool BBAA::is_coord_in_range_incl_max< f32_3 > ( f32_3  part_pos,
f32_3  pos_min_patch,
f32_3  pos_max_patch 
)
inline

Definition at line 66 of file geometry_utils.hpp.

◆ is_coord_in_range_incl_max< f64_3 >()

template<>
bool BBAA::is_coord_in_range_incl_max< f64_3 > ( f64_3  part_pos,
f64_3  pos_min_patch,
f64_3  pos_max_patch 
)
inline

Definition at line 75 of file geometry_utils.hpp.

◆ iscellb_inside_a< f32_3 >()

template<>
bool BBAA::iscellb_inside_a< f32_3 > ( f32_3  pos_min_cella,
f32_3  pos_max_cella,
f32_3  pos_min_cellb,
f32_3  pos_max_cellb 
)
inline

Definition at line 99 of file geometry_utils.hpp.

◆ iscellb_inside_a< u32_3 >()

template<>
bool BBAA::iscellb_inside_a< u32_3 > ( u32_3  pos_min_cella,
u32_3  pos_max_cella,
u32_3  pos_min_cellb,
u32_3  pos_max_cellb 
)
inline

Definition at line 88 of file geometry_utils.hpp.