Operators |
mult_matrix — Multiply two matrices.
mult_matrix( : : MatrixAID, MatrixBID, MultType : MatrixMultID)
The operator mult_matrix computes the product of the input matrices MatrixA and MatrixB defined by the matrix handles MatrixAID and MatrixBID. A new matrix MatrixMult is generated with the result. The operator returns the matrix handle MatrixMultID of the matrix MatrixMult . Access to the elements of the matrix is possible e.g. with the operator get_full_matrix. If desired, one or both input matrices will be transposed for the multiplication.
The type of multiplication can be selected via MultType:
The matrices MatrixA and MatrixB will not be transposed. Therefore, the formula for the calculation of the result is:
MatrixMult = MatrixA * MatrixB .
The number of columns of the matrix MatrixA must be identical to the number of rows of the matrix MatrixB .
Example:
/ 3.0 -3.0 \ / 3.0 -3.0 1.0 1.0 \ MatrixA = | 2.0 -5.0 | MatrixB = \ 2.0 -1.0 -2.0 -1.0 / \ -3.0 2.0 / / 3.0 -6.0 9.0 6.0 \ -> MatrixMult = | -4.0 -1.0 12.0 7.0 | \ -5.0 7.0 -7.0 -5.0 /
The matrix MatrixA will be transposed. The matrix MatrixB will not be transposed. Therefore, the formula for the calculation of the result is:
MatrixMult = MatrixA ^T * MatrixB .
The number of rows of the matrix MatrixA must be identical to the number of rows of the matrix MatrixB .
Example:
/ 3.0 2.0 -3.0 \ / 3.0 -3.0 1.0 1.0 \ MatrixA = \ -3.0 -5.0 2.0 / MatrixB = \ 2.0 -1.0 -2.0 -1.0 / / 3.0 -6.0 9.0 6.0 \ -> MatrixMult = | -4.0 -1.0 12.0 7.0 | \ -5.0 7.0 -7.0 -5.0 /
The matrix MatrixA will not be transposed. The matrix MatrixB will be transposed. Therefore, the formula for the calculation of the result is:
MatrixMult = MatrixA * MatrixB ^T.
The number of columns of the matrix MatrixA must be identical to the number of columns of the matrix MatrixB .
Example:
/ 3.0 2.0 \ / 3.0 -3.0 \ | -3.0 -1.0 | MatrixA = | 2.0 -5.0 | MatrixB = | 1.0 -2.0 | \ -3.0 2.0 / \ 1.0 -1.0 / / 3.0 -6.0 9.0 6.0 \ -> MatrixMult = | -4.0 -1.0 12.0 7.0 | \ -5.0 7.0 -7.0 -5.0 /
The matrix MatrixA and the matrix MatrixB will be transposed. Therefore, the formula for the calculation of the result is:
MatrixMult = MatrixA ^T * MatrixB ^T.
The number of rows of the matrix MatrixA must be identical to the number of columns of the matrix MatrixB .
Example:
/ 3.0 2.0 \ / 3.0 2.0 -3.0 \ | -3.0 -1.0 | MatrixA = \ -3.0 -5.0 2.0 / MatrixB = | 1.0 -2.0 | \ 1.0 -1.0 / / 3.0 -6.0 9.0 6.0 \ -> MatrixMult = | -4.0 -1.0 12.0 7.0 | \ -5.0 7.0 -7.0 -5.0 /
Matrix handle of the input matrix A.
Matrix handle of the input matrix B.
Type of the input matrices.
Default value: 'AB'
List of values: 'AB' , 'ABT' , 'ATB' , 'ATBT'
Matrix handle of the multiplied matrices.
If the parameters are valid, the operator mult_matrix returns the value 2 (H_MSG_TRUE). If necessary, an exception is raised.
get_full_matrix, get_value_matrix
mult_element_matrix, mult_element_matrix_mod, div_element_matrix, div_element_matrix_mod, transpose_matrix, transpose_matrix_mod
David Poole: “Linear Algebra: A Modern Introduction”; Thomson;
Belmont; 2006.
Gene H. Golub, Charles F. van Loan: “Matrix Computations”; The
Johns Hopkins University Press; Baltimore and London; 1996.
Foundation
Operators |