matrix33¶
-
class
samson.DataModel.Type.
matrix33
(*args, **kwargs)¶ Bases:
pybind11_builtins.pybind11_object
This class represents 3x3 physical matrices.
SAMSON API: SBDTypePhysicalMatrix33
Overloaded function.
- __init__(self: samson.DataModel.Type.matrix33) -> None
Constructs a physical matrix with all components set to zero
- __init__(self: samson.DataModel.Type.matrix33, d: samson.DataModel.Type.vector3) -> None
Constructs the diagonal physical matrix with diagonal [ d.v[0] d.v[1] d.v[2] ]
- __init__(self: samson.DataModel.Type.matrix33, c0: samson.DataModel.Type.vector3, c1: samson.DataModel.Type.vector3, c2: samson.DataModel.Type.vector3) -> None
Constructs the physical matrix with columns c0, c1 and c2
- __init__(self: samson.DataModel.Type.matrix33, mat: List[List[samson.DataModel.Quantity.unitsSI]]) -> None
Constructs the physical matrix from the quantity 2D array mat
- __init__(self: samson.DataModel.Type.matrix33, v: samson.DataModel.Quantity.unitsSI) -> None
Constructs the physical matrix with all components set to v
- __init__(self: samson.DataModel.Type.matrix33, m00: samson.DataModel.Quantity.unitsSI, m01: samson.DataModel.Quantity.unitsSI, m02: samson.DataModel.Quantity.unitsSI, m10: samson.DataModel.Quantity.unitsSI, m11: samson.DataModel.Quantity.unitsSI, m12: samson.DataModel.Quantity.unitsSI, m20: samson.DataModel.Quantity.unitsSI, m21: samson.DataModel.Quantity.unitsSI, m22: samson.DataModel.Quantity.unitsSI) -> None
Constructs the physical matrix from components m00, m01, m02, m10, m11, m12, m20, m21 and m22
- __init__(self: samson.DataModel.Type.matrix33, d: float) -> None
Constructs the dimensionless physical matrix with all components set to d
- __init__(self: samson.DataModel.Type.matrix33, mat: List[List[float]]) -> None
Constructs the dimensionless physical matrix from double 2D array mat
- __init__(self: samson.DataModel.Type.matrix33, m00: float, m01: float, m02: float, m10: float, m11: float, m12: float, m20: float, m21: float, m22: float) -> None
Constructs the dimensionless physical matrix from components m00, m01, m02, m10, m11, m12, m20, m21 and m22
-
__add__
(self: samson.DataModel.Type.matrix33, arg0: samson.DataModel.Type.matrix33) → samson.DataModel.Type.matrix33¶
-
__eq__
(self: samson.DataModel.Type.matrix33, arg0: samson.DataModel.Type.matrix33) → bool¶
-
__iadd__
(self: samson.DataModel.Type.matrix33, arg0: samson.DataModel.Type.matrix33) → samson.DataModel.Type.matrix33¶
-
__imul__
(*args, **kwargs)¶ Overloaded function.
- __imul__(self: samson.DataModel.Type.matrix33, arg0: float) -> samson.DataModel.Type.matrix33
- __imul__(self: samson.DataModel.Type.matrix33, arg0: samson.DataModel.Quantity.unitsSI) -> samson.DataModel.Type.matrix33
-
__isub__
(self: samson.DataModel.Type.matrix33, arg0: samson.DataModel.Type.matrix33) → samson.DataModel.Type.matrix33¶
-
__itruediv__
(*args, **kwargs)¶ Overloaded function.
- __itruediv__(self: samson.DataModel.Type.matrix33, arg0: float) -> samson.DataModel.Type.matrix33
- __itruediv__(self: samson.DataModel.Type.matrix33, arg0: samson.DataModel.Quantity.unitsSI) -> samson.DataModel.Type.matrix33
-
__mul__
(*args, **kwargs)¶ Overloaded function.
- __mul__(self: samson.DataModel.Type.matrix33, arg0: samson.DataModel.Type.matrix33) -> samson.DataModel.Type.matrix33
- __mul__(self: samson.DataModel.Type.matrix33, arg0: float) -> samson.DataModel.Type.matrix33
- __mul__(self: samson.DataModel.Type.matrix33, arg0: samson.DataModel.Type.vector3) -> samson.DataModel.Type.vector3
-
__ne__
(self: samson.DataModel.Type.matrix33, arg0: samson.DataModel.Type.matrix33) → bool¶
-
__neg__
(self: samson.DataModel.Type.matrix33) → samson.DataModel.Type.matrix33¶
-
__rmul__
(self: samson.DataModel.Type.matrix33, arg0: float) → samson.DataModel.Type.matrix33¶
-
__sub__
(self: samson.DataModel.Type.matrix33, arg0: samson.DataModel.Type.matrix33) → samson.DataModel.Type.matrix33¶
-
__truediv__
(self: samson.DataModel.Type.matrix33, arg0: float) → samson.DataModel.Type.matrix33¶
-
computeEulerDecompositionZYZ
(self: samson.DataModel.Type.matrix33) → List[samson.DataModel.Quantity.unitsSI]¶ Computes a ZYZ Euler decomposition of this physical matrix.
- Return:
- phi (Quantity): The first Z rotation angle. theta (Quantity): The Y rotation angle. psi (Quantity): The second Z rotation angle.
-
cosphi
(self: samson.DataModel.Type.matrix33) → samson.DataModel.Quantity.unitsSI¶ Returns the cosine of the rotation angle of this rotation matrix. This function assumes this physical matrix is a rotation matrix, and returns the cosine of the corresponding rotation angle
-
det
(self: samson.DataModel.Type.matrix33) → samson.DataModel.Quantity.unitsSI¶ Returns the determinant of this physical matrix
-
diagonalize
(self: samson.DataModel.Type.matrix33) → object¶ Computes the eigenvalues ev and the eigenvectors p of this physical matrix.
- Args:
- ev (vector3): Stores the eigenvalues when this function returns p (matrix33): Stores the eigenvectors when this function returns
-
static
fromAlignment
(vectorFrom: samson.DataModel.Type.vector3, vectorTo: samson.DataModel.Type.vector3) → samson.DataModel.Type.matrix33¶ Returns the dimensionless physical matrix that transforms vector vectorFrom into vector vectorTo. Precisely, left-multiplying vector vectorFrom by the resulting matrix produces vector vectorTo.
-
static
fromAxisAngle
(axis: samson.DataModel.Type.vector3, angle: samson.DataModel.Quantity.unitsSI) → samson.DataModel.Type.matrix33¶ Returns the dimensionless physical matrix corresponding to rotation axis and rotation angle (in radians)
-
static
fromAxisAnglePi
(axis: samson.DataModel.Type.vector3) → samson.DataModel.Type.matrix33¶ Returns the dimensionless physical matrix corresponding to rotation axis axis and a rotation angle equal to Pi
-
static
fromQuaternion
(w: samson.DataModel.Quantity.unitsSI, x: samson.DataModel.Quantity.unitsSI, y: samson.DataModel.Quantity.unitsSI, z: samson.DataModel.Quantity.unitsSI) → samson.DataModel.Type.matrix33¶ Returns the dimensionless physical matrix corresponding to quaternion [ w x y z ]
-
getColumn
(self: samson.DataModel.Type.matrix33, i: int) → samson.DataModel.Type.vector3¶ Returns the i-th column of this physical matrix
-
getE1
(self: samson.DataModel.Type.matrix33) → samson.DataModel.Type.vector3¶ Returns the first column of this physical matrix
-
getE2
(self: samson.DataModel.Type.matrix33) → samson.DataModel.Type.vector3¶ Returns the second column of this physical matrix
-
getE3
(self: samson.DataModel.Type.matrix33) → samson.DataModel.Type.vector3¶ Returns the third column of this physical matrix
-
getRow
(self: samson.DataModel.Type.matrix33, i: int) → samson.DataModel.Type.vector3¶ Returns the i-th row of this physical matrix
-
inverse
(self: samson.DataModel.Type.matrix33) → samson.DataModel.Type.matrix33¶ Returns the inverse of this physical matrix. This function assumes the physical matrix is invertible and returns its inverse
-
makeEulerRotationZYZ
(self: samson.DataModel.Type.matrix33, phi: samson.DataModel.Quantity.unitsSI, theta: samson.DataModel.Quantity.unitsSI, psi: samson.DataModel.Quantity.unitsSI) → None¶ This function sets this physical matrix from ZYZ Euler angles phi, theta and psi.
- Args:
- phi (Quantity): The first Z rotation angle. theta (Quantity): The Y rotation angle. psi (Quantity): The second Z rotation angle.
-
norm
(self: samson.DataModel.Type.matrix33) → samson.DataModel.Quantity.unitsSI¶ Returns the 2-norm of this physical matrix
-
orthonormalize
(self: samson.DataModel.Type.matrix33) → None¶ Orthonormalizes this dimensionless physical matrix
-
quasiStaticUpdate
(self: samson.DataModel.Type.matrix33, wx: samson.DataModel.Quantity.unitsSI, wy: samson.DataModel.Quantity.unitsSI, wz: samson.DataModel.Quantity.unitsSI) → object¶ Performs a quasi-static update of this dimensionless physical matrix using the rotation vector [ wx wy wz ].
- Args:
- wx (Quantity): The first component of the rotation vector. wy (Quantity): The second component of the rotation vector. wz (Quantity): The third component of the rotation vector.
- Return:
- rotAngle (Quantity): The rotation angle rotAxis (vector3): The rotation axis rotA (matrix33): The rotation axis. rotB (matrix33): The rotation axis. rotC (matrix33): The rotation axis.
-
revoluteJointZAxisMatrix
(self: samson.DataModel.Type.matrix33, axis: samson.DataModel.Type.vector3) → None¶ Sets this physical matrix to an orthonormal matrix whose third column is axis
-
setE1
(self: samson.DataModel.Type.matrix33, v: samson.DataModel.Type.vector3) → None¶ Sets the first column of this physical matrix
-
setE2
(self: samson.DataModel.Type.matrix33, v: samson.DataModel.Type.vector3) → None¶ Sets the second column of this physical matrix
-
setE3
(self: samson.DataModel.Type.matrix33, v: samson.DataModel.Type.vector3) → None¶ Sets the third column of this physical matrix
-
setIdentity
(self: samson.DataModel.Type.matrix33) → None¶ Sets this physical matrix to the identity matrix
-
setZero
(self: samson.DataModel.Type.matrix33) → None¶ Sets this physical matrix to zero
-
str
(self: samson.DataModel.Type.matrix33, fullName: bool = False) → str¶ Converts the matrix to a string (with a full unit name when fullName is true)
-
swapColumns
(self: samson.DataModel.Type.matrix33, i: int, j: int) → None¶ Swaps columns i and j
-
swapRows
(self: samson.DataModel.Type.matrix33, i: int, j: int) → None¶ Swaps rows i and j
-
toQuaternion
(self: samson.DataModel.Type.matrix33) → List[samson.DataModel.Quantity.unitsSI]¶ Computes the quaternion [ w x y z ] corresponding to this physical matrix
-
toRotationVector
(self: samson.DataModel.Type.matrix33) → samson.DataModel.Type.vector3¶ Computes the rotation vector corresponding to this dimensionless physical matrix
-
trace
(self: samson.DataModel.Type.matrix33) → samson.DataModel.Quantity.unitsSI¶ Returns the trace m[0][0] + m[1][1] + m[2][2] of this physical matrix
-
transpose
(self: samson.DataModel.Type.matrix33) → samson.DataModel.Type.matrix33¶ Returns the transpose of this physical matrix
-
__ge__
¶ Return self>=value.
-
__gt__
¶ Return self>value.
-
__le__
¶ Return self<=value.
-
__lt__
¶ Return self<value.
-
value
¶