![]() |
Shamrock 2025.10.0
Astrophysical Code
|
A structure for 3D paving functions with general boundary conditions (periodic or reflective per directions). More...
#include <shammath/include/shammath/paving_function.hpp>
Public Types | |
| using | Tscal = shambase::VecComponent< Tvec > |
Public Member Functions | |
| Tvec | f (Tvec x, int i, int j, int k) const |
| Applies the paving function with periodic or reflective boundary conditions. | |
| Tvec | f_inv (Tvec x, int i, int j, int k) const |
| Applies the inverse of the paving function. | |
| AABB< Tvec > | f_aabb (const AABB< Tvec > &aabb, int i, int j, int k) const |
| AABB< Tvec > | f_aabb_inv (const AABB< Tvec > &aabb, int i, int j, int k) const |
| std::vector< std::array< int, 3 > > | get_paving_index_intersecting (AABB< Tvec > aabb) const |
Public Attributes | |
| Tvec | box_size |
| The size of the box in each dimension. | |
| Tvec | box_center |
| The center of the box in each dimension. | |
| bool | is_x_periodic |
| The boundary condition in each dimension. | |
| bool | is_y_periodic |
| bool | is_z_periodic |
Static Public Attributes | |
| static constexpr bool | can_deform_aabb = false |
A structure for 3D paving functions with general boundary conditions (periodic or reflective per directions).
| Tvec | A vector type. |
Definition at line 142 of file paving_function.hpp.
| using shammath::paving_function_general_3d< Tvec >::Tscal = shambase::VecComponent<Tvec> |
Definition at line 147 of file paving_function.hpp.
|
inline |
Applies the paving function with periodic or reflective boundary conditions.
| x | The input vector. |
| i | The periodic index along the x-axis. |
| j | The periodic index along the y-axis. |
| k | The periodic index along the z-axis. |
Definition at line 178 of file paving_function.hpp.
|
inline |
Definition at line 204 of file paving_function.hpp.
|
inline |
Definition at line 208 of file paving_function.hpp.
|
inline |
Applies the inverse of the paving function.
| x | The input vector. |
| i | The periodic index along the x-axis. |
| j | The periodic index along the y-axis. |
| k | The periodic index along the z-axis. |
Definition at line 195 of file paving_function.hpp.
|
inline |
Definition at line 212 of file paving_function.hpp.
| Tvec shammath::paving_function_general_3d< Tvec >::box_center |
The center of the box in each dimension.
Definition at line 157 of file paving_function.hpp.
| Tvec shammath::paving_function_general_3d< Tvec >::box_size |
The size of the box in each dimension.
Definition at line 152 of file paving_function.hpp.
|
inlinestaticconstexpr |
Definition at line 145 of file paving_function.hpp.
| bool shammath::paving_function_general_3d< Tvec >::is_x_periodic |
The boundary condition in each dimension.
true means periodic boundary condition. false means reflective boundary condition.
Definition at line 165 of file paving_function.hpp.
| bool shammath::paving_function_general_3d< Tvec >::is_y_periodic |
Definition at line 166 of file paving_function.hpp.
| bool shammath::paving_function_general_3d< Tvec >::is_z_periodic |
Definition at line 167 of file paving_function.hpp.