Convert box vectors into the lengths and angles defining the box.
Parameters: | a : np.ndarray
b : np.ndarray
c : np.ndarray
|
---|---|
Returns: | a_length : scalar or np.ndarray
b_length : scalar or np.ndarray
c_length : scalar or np.ndarray
alpha : scalar or np.ndarray
beta : scalar or np.ndarray
gamma : scalar or np.ndarray
|
Examples
>>> a = np.array([2,0,0], dtype=float)
>>> b = np.array([0,1,0], dtype=float)
>>> c = np.array([0,1,1], dtype=float)
>>> l1, l2, l3, alpha, beta, gamma = box_vectors_to_lengths_and_angles(a, b, c)
>>> (l1 == 2.0) and (l2 == 1.0) and (l3 == np.sqrt(2))
True
>>> np.abs(alpha - 45) < 1e-6
True
>>> np.abs(beta - 90.0) < 1e-6
True
>>> np.abs(gamma - 90.0) < 1e-6
True