clifford.tools.g3

Tools for 3DGA (g3)

3DGA Tools

Rotation Conversion Methods

quaternion_to_rotor(quaternion) Converts a quaternion into a pure rotation rotor
rotor_to_quaternion(R) Converts a pure rotation rotor into a quaternion
quaternion_to_matrix(q) Converts a quaternion into a rotation matrix
rotation_matrix_to_quaternion(a) Converts a rotation matrix into a quaternion

Generation Methods

random_unit_vector() Creates a random unit vector
random_euc_mv([l_max]) Creates a random vector normally distributed with length l_max
generate_rotation_rotor(theta, euc_vector_m, …) Generates a rotation of angle theta in the m, n plane
random_rotation_rotor([max_angle]) Creates a random rotation rotor

Misc

angle_between_vectors(v1, v2) Returns the angle between two conformal vectors
np_to_euc_mv(np_in) Converts a 3d numpy vector to a 3d GA point
euc_mv_to_np(euc_point) Converts a 3d GA point to a 3d numpy vector
euc_cross_prod(euc_a, euc_b) Implements the cross product in GA
rotor_vector_to_vector(v1, v2) Creates a rotor that takes one vector into another
correlation_matrix(u_list, v_list) Creates a correlation matrix between vector lists
GA_SVD(u_list, v_list) Does SVD on a pair of GA vectors
rotation_matrix_align_vecs(u_list, v_list) Returns the rotation matrix that aligns the set of vectors u and v
rotor_align_vecs(u_list, v_list) Returns the rotation rotor that aligns the set of vectors u and v

s

Functions

GA_SVD(u_list, v_list) Does SVD on a pair of GA vectors
angle_between_vectors(v1, v2) Returns the angle between two conformal vectors
correlation_matrix(u_list, v_list) Creates a correlation matrix between vector lists
euc_cross_prod(euc_a, euc_b) Implements the cross product in GA
euc_mv_to_np(euc_point) Converts a 3d GA point to a 3d numpy vector
generate_rotation_rotor(theta, euc_vector_m, …) Generates a rotation of angle theta in the m, n plane
np_to_euc_mv(np_in) Converts a 3d numpy vector to a 3d GA point
quaternion_to_matrix(q) Converts a quaternion into a rotation matrix
quaternion_to_rotor(quaternion) Converts a quaternion into a pure rotation rotor
random_euc_mv([l_max]) Creates a random vector normally distributed with length l_max
random_rotation_rotor([max_angle]) Creates a random rotation rotor
random_unit_vector() Creates a random unit vector
rotation_matrix_align_vecs(u_list, v_list) Returns the rotation matrix that aligns the set of vectors u and v
rotation_matrix_to_quaternion(a) Converts a rotation matrix into a quaternion
rotation_matrix_to_rotor(M) Converts a rotation matrix into a rotor
rotor_align_vecs(u_list, v_list) Returns the rotation rotor that aligns the set of vectors u and v
rotor_to_quaternion(R) Converts a pure rotation rotor into a quaternion
rotor_to_rotation_matrix(R) Converts a pure rotation rotor into a rotation matrix
rotor_vector_to_vector(v1, v2) Creates a rotor that takes one vector into another