Processing math: 100%

sknano.core.math.Rz

sknano.core.math.Rz(angle, degrees=False)[source][source]

Generate the 3×3 rotation matrix Rz(θ) for a rotation about the z axis by an angle θ.

Parameters:

angle : float

The rotation angle θ in radians. If the angle is given in degrees, then you must set degrees=True to correctly calculate the rotation matrix.

degrees : bool, optional

if True, then angle is converted from degrees to radians.

Returns:

ndarray

3×3 rotation matrix Rz(θ) for a rotation about the z axis by an angle θ.

Rz=(cosθsinθ0sinθcosθ0001)

Examples

>>> import numpy as np
>>> from sknano.core.math import Rz
>>> Rz(np.pi/4)
array([[ 0.70710678, -0.70710678,  0.        ],
       [ 0.70710678,  0.70710678,  0.        ],
       [ 0.        ,  0.        ,  1.        ]])
>>> np.alltrue(Rz(np.pi/4) == Rz(45, degrees=True))
True