pytransform3d.transformations.check_screw_matrix

pytransform3d.transformations.check_screw_matrix(screw_matrix, tolerance=1e-06, strict_check=True)[source]

Input validation for screw matrix.

A screw matrix consists of the cross-product matrix of a rotation axis and a translation.

\left[\mathcal S\right]
=
\left( \begin{array}{cc}
    \left[\boldsymbol{\omega}\right] & \boldsymbol v\\
    \boldsymbol 0 & 0\\
\end{array} \right)
=
\left(
\begin{matrix}
0 & -\omega_3 & \omega_2 & v_1\\
\omega_3 & 0 & -\omega_1 & v_2\\
-\omega_2 & \omega_1 & 0 & v_3\\
0 & 0 & 0 & 0\\
\end{matrix}
\right)
\in se(3) \subset \mathbb{R}^{4 \times 4}

Parameters:
screw_matrixarray-like, shape (4, 4)

A screw matrix consists of a cross-product matrix that represents an axis of rotation, a translation, and a row of zeros.

tolerancefloat, optional (default: 1e-6)

Tolerance threshold for checks.

strict_checkbool, optional (default: True)

Raise a ValueError if [omega].T is not numerically close enough to -[omega]. Otherwise we print a warning.

Returns:
screw_matrixarray, shape (4, 4)

A screw matrix consists of a cross-product matrix that represents an axis of rotation, a translation, and a row of zeros.

Raises:
ValueError

If input is invalid