mindscience.e3nn.o3.angles_to_matrix

mindscience.e3nn.o3.angles_to_matrix(alpha, beta, gamma)[source]

Convert Euler angles (\(\alpha\), \(\beta\), \(\gamma\)) into the corresponding \(3 \times 3\) rotation matrix. The resulting matrix represents the rotation

\[R = Ry(\alpha) * Rx(\beta) * Ry(\gamma).\]
Parameters
  • alpha (Union[Tensor[float32], list[float], tuple[float], ndarray[np.float32], float]) – The alpha Euler angles. The shape of Tensor is \((...)\).

  • beta (Union[Tensor[float32], list[float], tuple[float], ndarray[np.float32], float]) – The beta Euler angles. The shape of Tensor is \((...)\).

  • gamma (Union[Tensor[float32], list[float], tuple[float], ndarray[np.float32], float]) – The gamma Euler angles. The shape of Tensor is \((...)\).

Returns

Tensor, the rotation matrices. Matrices of shape \((..., 3, 3)\).

Examples

>>> from mindscience.e3nn.o3 import angles_to_matrix
>>> m = angles_to_matrix(0.4, 0.5, 0.6)
>>> print(m)
[[ 0.5672197   0.1866971   0.8021259 ]
[ 0.27070403  0.87758255 -0.395687  ]
[-0.77780527  0.44158012  0.4472424 ]]