|
ACTS
Experiment-independent tracking
|
Build the curvilinear unit basis perpendicular to a three-dimensional direction. More...
#include <detray/utils/unit_vectors.hpp>
Public Member Functions | |
| vector3_t | make_curvilinear_unit_u (const vector3_t &dir) |
| Construct the first curvilinear unit vector U for the given direction. | |
| darray< vector3_t, 2 > | make_curvilinear_unit_vectors (const vector3_t &dir) |
| Construct the curvilinear unit vectors U and V for the given direction. | |
Build the curvilinear unit basis perpendicular to a three-dimensional direction.
| vector3_t | three-dimensional vector representation |
| vector3_t detray::unit_vectors< vector3_t >::make_curvilinear_unit_u | ( | const vector3_t & | dir | ) |
Construct the first curvilinear unit vector U for the given direction.
| dir | is the input direction vector |
The special case of the direction vector pointing along the z-axis is handled by forcing the unit vector to along the x-axis.
| darray< vector3_t, 2 > detray::unit_vectors< vector3_t >::make_curvilinear_unit_vectors | ( | const vector3_t & | dir | ) |
Construct the curvilinear unit vectors U and V for the given direction.
| dir | is the input direction vector |
With T the normalized input direction, the three vectors U, V, and T form an orthonormal basis set, i.e. they satisfy
U x V = T V x T = U T x U = V
with the additional condition that U is located in the global x-y plane.