template_synthesis.numpy.utilities.geometry module

template_synthesis.numpy.utilities.geometry.angle_between(v1, v2)

Returns the angle in radians between vectors ‘v1’ and ‘v2’

Parameters:
v1 : array_like

First vector

v2 : array_like

Second vector

Returns:

angle – The angle (in radians) between the vectors

Return type:

float

Examples

>>> angle_between((1, 0, 0), (0, 1, 0))
1.5707963267948966
>>> angle_between((1, 0, 0), (1, 0, 0))
0.0
>>> angle_between((1, 0, 0), (-1, 0, 0))
3.141592653589793
template_synthesis.numpy.utilities.geometry.unit_vector(vector)

Normalize a vector to unit length

Parameters:
vector : array_like

The vector to normalize

Returns:

unit – The unit vector of the input vector.

Return type:

np.ndarray

Examples

>>> unit_vector(np.array([1, 0, 0]))
array([1., 0., 0.])
>>> unit_vector(np.array([0, 4, 0]))
array([0., 1., 0.])
>>> unit_vector(np.array([3, 6, -2]))
array([ 0.42857143,  0.85714286, -0.28571429])