![]() |
Shamrock 2025.10.0
Astrophysical Code
|
A structure for 3D paving functions with shearing along the x-axis and general boundary conditions. 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 shearing and boundary conditions. | |
| Tvec | f_inv (Tvec x, int i, int j, int k) const |
| Applies the inverse of the paving function with shearing and boundary conditions. | |
| 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 |
| bool | is_y_periodic |
| bool | is_z_periodic |
| Tscal | shear_x |
| Shearing factor applied along the x-axis. | |
Static Public Attributes | |
| static constexpr bool | can_deform_aabb = false |
A structure for 3D paving functions with shearing along the x-axis and general boundary conditions.
This structure supports both periodic and reflective boundary conditions in each dimension, with additional shearing applied along the x-axis.
| Tvec | A vector type. |
Definition at line 249 of file paving_function.hpp.
| using shammath::paving_function_general_3d_shear_x< Tvec >::Tscal = shambase::VecComponent<Tvec> |
Definition at line 254 of file paving_function.hpp.
|
inline |
Applies the paving function with shearing and 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 277 of file paving_function.hpp.
|
inline |
Definition at line 303 of file paving_function.hpp.
|
inline |
Definition at line 307 of file paving_function.hpp.
|
inline |
Applies the inverse of the paving function with shearing and 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 294 of file paving_function.hpp.
|
inline |
Definition at line 311 of file paving_function.hpp.
| Tvec shammath::paving_function_general_3d_shear_x< Tvec >::box_center |
The center of the box in each dimension.
Definition at line 257 of file paving_function.hpp.
| Tvec shammath::paving_function_general_3d_shear_x< Tvec >::box_size |
The size of the box in each dimension.
Definition at line 256 of file paving_function.hpp.
|
inlinestaticconstexpr |
Definition at line 252 of file paving_function.hpp.
| bool shammath::paving_function_general_3d_shear_x< Tvec >::is_x_periodic |
Boundary condition for x dimension (true for periodic, false for reflective).
Definition at line 259 of file paving_function.hpp.
| bool shammath::paving_function_general_3d_shear_x< Tvec >::is_y_periodic |
Boundary condition for y dimension (true for periodic, false for reflective).
Definition at line 261 of file paving_function.hpp.
| bool shammath::paving_function_general_3d_shear_x< Tvec >::is_z_periodic |
Boundary condition for z dimension (true for periodic, false for reflective).
Definition at line 263 of file paving_function.hpp.
| Tscal shammath::paving_function_general_3d_shear_x< Tvec >::shear_x |
Shearing factor applied along the x-axis.
Definition at line 266 of file paving_function.hpp.