![]() |
Shamrock 2025.10.0
Astrophysical Code
|
#include "shambase/type_traits.hpp"#include "shambackends/math.hpp"#include "shambackends/type_traits.hpp"
Include dependency graph for intervals.hpp:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Namespaces | |
| namespace | shammath |
| namespace for math utility | |
Functions | |
| template<class T , std::enable_if_t< sham::is_valid_sycl_base_type< T >, int > = 0> | |
| bool | shammath::is_in_half_open (T val, T min, T max) |
| return true if val is in [min,max[ | |
| template<class T > | |
| bool | shammath::is_in_half_open (sycl::vec< T, 2 > val, sycl::vec< T, 2 > min, sycl::vec< T, 2 > max) |
| Check if value is in [min,max) for 2D vectors. | |
| template<class T > | |
| bool | shammath::is_in_half_open (sycl::vec< T, 3 > val, sycl::vec< T, 3 > min, sycl::vec< T, 3 > max) |
| Check if value is in [min,max) for 3D vectors. | |
| template<class T > | |
| bool | shammath::is_in_half_open (sycl::vec< T, 4 > val, sycl::vec< T, 4 > min, sycl::vec< T, 4 > max) |
| Check if value is in [min,max) for 4D vectors. | |
| template<class T > | |
| bool | shammath::is_in_half_open (sycl::vec< T, 8 > val, sycl::vec< T, 8 > min, sycl::vec< T, 8 > max) |
| Check if value is in [min,max) for 8D vectors. | |
| template<class T > | |
| bool | shammath::is_in_half_open (sycl::vec< T, 16 > val, sycl::vec< T, 16 > min, sycl::vec< T, 16 > max) |
| Check if value is in [min,max) for 16D vectors. | |
| template<class T , std::enable_if_t< sham::is_valid_sycl_base_type< T >, int > = 0> | |
| bool | shammath::domain_are_connected (T bmin1, T bmax1, T bmin2, T bmax2) |
| Check if two 1D intervals share boundary or overlap. | |
| template<class T > | |
| bool | shammath::domain_are_connected (sycl::vec< T, 2 > bmin1, sycl::vec< T, 2 > bmax1, sycl::vec< T, 2 > bmin2, sycl::vec< T, 2 > bmax2) |
| Check if two 2D boxes share boundary or overlap. | |
| template<class T > | |
| bool | shammath::domain_are_connected (sycl::vec< T, 3 > bmin1, sycl::vec< T, 3 > bmax1, sycl::vec< T, 3 > bmin2, sycl::vec< T, 3 > bmax2) |
| Check if two 3D boxes share boundary or overlap. | |
| template<class T , std::enable_if_t< sham::is_valid_sycl_base_type< T >, int > = 0> | |
| bool | shammath::domain_have_intersect (T bmin1, T bmax1, T bmin2, T bmax2) |
| Check if two 1D intervals have non-empty intersection. | |
| template<class T > | |
| bool | shammath::domain_have_intersect (sycl::vec< T, 2 > bmin1, sycl::vec< T, 2 > bmax1, sycl::vec< T, 2 > bmin2, sycl::vec< T, 2 > bmax2) |
| Check if two 2D boxes have non-empty intersection. | |
| template<class T > | |
| bool | shammath::domain_have_intersect (sycl::vec< T, 3 > bmin1, sycl::vec< T, 3 > bmax1, sycl::vec< T, 3 > bmin2, sycl::vec< T, 3 > bmax2) |
| Check if two 3D boxes have non-empty intersection. | |
| template<class T > | |
| bool | shammath::domain_have_common_face (sycl::vec< T, 3 > bmin1, sycl::vec< T, 3 > bmax1, sycl::vec< T, 3 > bmin2, sycl::vec< T, 3 > bmax2) |
| Check if two 3D boxes share a common face. | |
Definition in file intervals.hpp.