cratepy.tensor.tensoroperations.rotation_tensor_from_euler_angles

rotation_tensor_from_euler_angles(euler_deg)[source]

Set rotation tensor from Euler angles (Bunge convention).

The rotation tensor is defined as

\[\begin{split}\mathbf{R} = \begin{bmatrix} c_1 c_3 - c_2 s_1 s_3 & -c_1 s_3 - c_2 c_3 s_1 & s_1 s_2 \\ c_3 s_1 + c_1 c_2 s_3 & c_1 c_2 c_3 - s_1 s_3 & - c_1 s_2 \\ s_2 s_3 & c_3 s_2 & c_2 \end{bmatrix}\end{split}\]

where

\[\begin{split}\begin{align} c_1 = \cos(\alpha) \qquad s_1 = \sin(\alpha) \\ c_2 = \cos(\beta) \qquad s_2 = \sin(\beta) \\ c_3 = \cos(\gamma) \qquad s_3 = \sin(\gamma) \end{align}\end{split}\]

and \((\alpha, \beta, \gamma)\) are the Euler angles corresponding to the Bunge convention (Z1-X2-Z3).


Parameters:

euler_deg (tuple) – Euler angles (degrees) sorted according to Bunge convention (Z1-X2-Z3).

Returns:

r – Rotation tensor (for given rotation angle theta, active transformation (+ theta) and passive transformation (- theta)).

Return type:

numpy.ndarray (2d)