Purpose

The module MatrixArithmetic offers standard arithmetic operations on one or two given homogenous 4x4 matrices, scalars and vectors.

Usage

The module requires two matrices Matrix A and Matrix B.

Unary operations (inverse, pseudoinverse, transpose, negation) take only one Matrix A, whereas binary operations (add, subtract, multiply) require both matrices.

Scalar and vector operations require corresponding inputs.

Windows

Default Panel

../../../Modules/ML/MLCoordUtils1/mhelp/Images/Screenshots/MatrixArithmetic._default.png

Parameter Fields

Field Index

Determinant: Double Resulting Matrix C: Matrix
Inner Products.: Vector3 Scalar: Double
Is orthogonal: Bool Trace: Double
Is valid: Bool Vector D: Vector4
Matrix A: Matrix Vector R: Vector4
Matrix B: Matrix  
Matrix Sum: Double  
Operation: Enum  

Visible Fields

Matrix A

name: matrixA, type: Matrix, default: 1 0 0 0, 0 1 0 0, 0 0 1 0, 0 0 0 1

Sets the first input matrix. Is required for unary operations.

Matrix B

name: matrixB, type: Matrix, default: 1 0 0 0, 0 1 0 0, 0 0 1 0, 0 0 0 1

Sets the second input matrix. Is required for binary operations.

Operation

name: operation, type: Enum, default: Identity

Defines the operation.

Values:

Title Name Deprecated Name Description
Identity Identity   C = A
Inverse Inverse   C = A^-1
Moore Penrose Pseudoinverse MoorePenrosePseudoinverse   C = (A^T * A)^-1 * A^T
Transpose Transpose   C = A^T
Negation Negation   C = -A
Add Add   C = A + B
Multiply Multiply   C = A * B
Subtract Subtract   C = A - B
Multiply With Scalar MultiplyWithScalar   C = A * s
Add Scalar AddScalar   C = A + s
Multiply With Vector MultiplyWithVector   R = A * D
Equation System Solver EquationSystemSolver Equation System Solver A * R = D

Resulting Matrix C

name: outputMatrixC, type: Matrix, persistent: no

Shows the resulting matrix.

Determinant

name: outputDeterminant, type: Double, persistent: no

Shows the determinant of the resulting matrix.

Trace

name: outputTrace, type: Double, persistent: no

Shows the trace of the output matrix.

Vector R

name: outputVectorV, type: Vector4, persistent: no

Shows the output vector in case of using the operation Equation System Solver or Multiply With Vector.

Is valid

name: outputIsValid, type: Bool, persistent: no

Shows if the result is valid.

Scalar

name: scalarValue, type: Double, default: 0

Sets the input scalar value.

Vector D

name: inputVectorD, type: Vector4, default: 0 0 0 0

Sets the input vector.

Matrix Sum

name: outputSumAbs, type: Double, persistent: no

Shows the output absolute matrix sum.

Is orthogonal

name: outputIsOrthogonal, type: Bool, persistent: no

Shows if the inner 3x3 matrix of the output matrix is orthogonal.

Inner Products.

name: outputScalarProducts, type: Vector3, persistent: no

Shows the vector of inner products of the output matrix.