numba_quaternion package¶
-
class
numba_quaternion.Quaternion(array_complex: np.ndarray[np.complex_])[source]¶ Bases:
object-
property
abs¶
-
property
array¶
-
array_complex: np.ndarray[np.complex_]¶
-
property
azimuthal_equidistant_projection_polar_with_orientation¶ Convert from detector pointing to Azimuthal equidistant projection in polar coordinate with orientation.
Returned array is in radian, has the last dimension with 3 elements, 1st as the angular distance to North pole, 2nd as the azimuth, 3rd as the orientation in angle.
-
property
azimuthal_equidistant_projection_with_orientation¶ Convert from detector pointing to Azimuthal equidistant projection in cartesian coordinate with orientation.
Returned array is in radian, has the last dimension with 3 elements, 1st as the horizontal angular position, 2nd as the vertical angular position, 3rd as the orientation in angle.
-
property
conjugate¶
-
classmethod
from_array(array: np.ndarray[np.float_]) → Quaternion[source]¶ Create Quaternion from real array with last axis as w, x, y, z.
-
classmethod
from_azimuthal_equidistant_projection_polar_with_orientation(array: np.ndarray[np.float_]) → Quaternion[source]¶
-
classmethod
from_lastcol_array(array: np.ndarray[np.float_]) → Quaternion[source]¶ Create Quaternion from real array with last axis as x, y, z, w.
Convention used in TOAST.
-
classmethod
from_rotation_matrix(array: np.ndarray[np.float_]) → Quaternion[source]¶
-
property
inverse¶
-
property
lastcol_array¶
-
property
norm¶
-
property
normalize¶
-
rotate(other: numba_quaternion.Quaternion) → numba_quaternion.Quaternion[source]¶
-
property
to_rotation_matrix¶
-
property
-
numba_quaternion.azimuthal_equidistant_projection_polar_with_orientation_to_rotation_matrix(array: np.ndarray[np.float_]) → np.ndarray[np.float_][source]¶ Convert Azimuthal equidistant projection in polar coordinate with orientation to detector pointing.
Input array is in radian, has the last dimension with 3 elements, 1st as the angular distance to North pole, 2nd as the azimuth, 3rd as the orientation in angle.
-
numba_quaternion.canonical_quat_to_lastcol(quat: np.ndarray[np.float_]) → np.ndarray[np.float_][source]¶ Convert from real-part-in-first-column to real-part-in-last-column
-
numba_quaternion.complex128_to_float64(array: np.ndarray[np.complex128]) → np.ndarray[np.float64][source]¶
-
numba_quaternion.complex64_to_float32(array: np.ndarray[np.complex64]) → np.ndarray[np.float32][source]¶
-
numba_quaternion.dist_spherical(p: np.ndarray[np.complex_], q: np.ndarray[np.complex_]) → float[source]¶ Great circle distance between 2 detector quaternions.
-
numba_quaternion.dist_spherical_pairwise(ps: np.ndarray[np.complex_]) → np.ndarray[np.float_][source]¶ Pair-wise great circle distances between detector quaternions.
Assume input is a 1-dim array of quarternions (2d-array) and return pairwise distance in 1d-array, ordered in “row-major” and “j>i” directions. E.g. for 3 detectors, [(0, 1), (0, 2), (1, 2)] ordering.
-
numba_quaternion.dist_spherical_pairwise_from_lastcol_array(ps: np.ndarray[np.float_]) → np.ndarray[np.float_][source]¶
-
numba_quaternion.float32_to_complex64(array: np.ndarray[np.float32]) → np.ndarray[np.complex64][source]¶
-
numba_quaternion.float64_to_complex128(array: np.ndarray[np.float64]) → np.ndarray[np.complex128][source]¶
-
numba_quaternion.lastcol_quat_to_canonical(quat: np.ndarray[np.float_]) → np.ndarray[np.float_][source]¶ Convert from real-part-in-last-column to real-part-in-first-column
-
numba_quaternion.matmul(p: np.ndarray[np.complex_], q: np.ndarray[np.complex_]) → np.ndarray[np.complex_][source]¶ Perform quarternion matrix multiplication using complex matrix multiplication
-
numba_quaternion.mul(p: np.ndarray[np.complex_], q: np.ndarray[np.complex_]) → np.ndarray[np.complex_][source]¶ Perform quarternion multiplication using complex multiplication
-
numba_quaternion.quat_to_azimuthal_equidistant_projection_polar_with_orientation(quats: np.ndarray[np.complex_]) → np.ndarray[np.float_][source]¶ Convert from detector pointing to Azimuthal equidistant projection in polar coordinate with orientation.
Returned array is in radian, has the last dimension with 3 elements, 1st as the angular distance to North pole, 2nd as the azimuth, 3rd as the orientation in angle.
-
numba_quaternion.quat_to_azimuthal_equidistant_projection_with_orientation(quats: np.ndarray[np.complex_]) → np.ndarray[np.float_][source]¶ Convert from detector pointing to Azimuthal equidistant projection in cartesian coordinate with orientation.
Returned array is in radian, has the last dimension with 3 elements, 1st as the horizontal angular position, 2nd as the vertical angular position, 3rd as the orientation in angle.
-
numba_quaternion.quat_to_rotation_matrix(quats: np.ndarray[np.complex_]) → np.ndarray[np.float_][source]¶ Convert quaternion to rotation matrix.
-
numba_quaternion.rotate(p: np.ndarray[np.complex_], v: np.ndarray[np.complex_]) → np.ndarray[np.complex_][source]¶ Rotate v by p respecting Numpy broadcasting rule.
-
numba_quaternion.rotate_2d(p: np.ndarray[np.complex_], v: np.ndarray[np.complex_]) → List[np.ndarray[np.complex_]][source]¶ Rotate each row of v by p and stack at an axis.
- Parameters
v – 2d-array
-
numba_quaternion.rotation_matrix_to_quat(m: np.ndarray[np.float_]) → np.ndarray[np.complex_][source]¶ Convert rotation matrix to quaternion.
See https://en.wikipedia.org/wiki/Rotation_matrix#Quaternion