Name
mult_matrix_modmult_matrix_modMultMatrixModmult_matrix_modMultMatrixModMultMatrixMod — Multiply two matrices.
The operator mult_matrixmult_matrixMultMatrixmult_matrixMultMatrixMultMatrix computes the product of the input
matrices MatrixAMatrixAMatrixAMatrixAMatrixAmatrixA and MatrixBMatrixBMatrixBMatrixBMatrixBmatrixB defined by the
matrix handles MatrixAIDMatrixAIDMatrixAIDMatrixAIDMatrixAIDmatrixAID and MatrixBIDMatrixBIDMatrixBIDMatrixBIDMatrixBIDmatrixBID. The
input matrix MatrixAMatrixAMatrixAMatrixAMatrixAmatrixA is overwritten with the result.
Access to the elements of the matrix is possible e.g. with the
operator get_full_matrixget_full_matrixGetFullMatrixget_full_matrixGetFullMatrixGetFullMatrix. If desired, one or both input
matrices will be transposed for the multiplication.
The type of multiplication can be selected via MultTypeMultTypeMultTypeMultTypeMultTypemultType:
- 'AB'"AB""AB""AB""AB""AB":
-
The matrices MatrixAMatrixAMatrixAMatrixAMatrixAmatrixA
and MatrixBMatrixBMatrixBMatrixBMatrixBmatrixB will not be transposed. Therefore, the formula
for the calculation of the result is:
MatrixAMatrixAMatrixAMatrixAMatrixAmatrixA = MatrixAMatrixAMatrixAMatrixAMatrixAmatrixA * MatrixBMatrixBMatrixBMatrixBMatrixBmatrixB.
The number of columns of the matrix MatrixAMatrixAMatrixAMatrixAMatrixAmatrixA must be
identical to the number of rows of the matrix MatrixBMatrixBMatrixBMatrixBMatrixBmatrixB.
Example:
- 'ATB'"ATB""ATB""ATB""ATB""ATB":
-
The matrix MatrixAMatrixAMatrixAMatrixAMatrixAmatrixA
will be transposed. The matrix MatrixBMatrixBMatrixBMatrixBMatrixBmatrixB will not be
transposed. Therefore, the formula for the calculation of the
result is:
The number of rows of the matrix MatrixAMatrixAMatrixAMatrixAMatrixAmatrixA must be
identical to the number of rows of the matrix MatrixBMatrixBMatrixBMatrixBMatrixBmatrixB.
Example:
- 'ABT'"ABT""ABT""ABT""ABT""ABT":
-
The matrix MatrixAMatrixAMatrixAMatrixAMatrixAmatrixA
will not be transposed. The matrix MatrixBMatrixBMatrixBMatrixBMatrixBmatrixB will be
transposed. Therefore, the formula for the calculation of the
result is:
The number of columns of the matrix MatrixAMatrixAMatrixAMatrixAMatrixAmatrixA must be
identical to the number of columns of the matrix
MatrixBMatrixBMatrixBMatrixBMatrixBmatrixB.
Example:
- 'ATBT'"ATBT""ATBT""ATBT""ATBT""ATBT":
-
The matrix MatrixAMatrixAMatrixAMatrixAMatrixAmatrixA
and the matrix MatrixBMatrixBMatrixBMatrixBMatrixBmatrixB will be transposed. Therefore,
the formula for the calculation of the result is:
The number of rows of the matrix MatrixAMatrixAMatrixAMatrixAMatrixAmatrixA must be
identical to the number of columns of the matrix
MatrixBMatrixBMatrixBMatrixBMatrixBmatrixB.
Example:
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
This operator modifies the state of the following input parameter:
The value of this parameter may not be shared across multiple threads without external synchronization.
Matrix handle of the input matrix A.
Matrix handle of the input matrix B.
Type of the input matrices.
Default value:
'AB'
"AB"
"AB"
"AB"
"AB"
"AB"
List of values: 'AB'"AB""AB""AB""AB""AB", 'ABT'"ABT""ABT""ABT""ABT""ABT", 'ATB'"ATB""ATB""ATB""ATB""ATB", 'ATBT'"ATBT""ATBT""ATBT""ATBT""ATBT"
If the parameters are valid, the operator mult_matrix_modmult_matrix_modMultMatrixModmult_matrix_modMultMatrixModMultMatrixMod
returns the value 2 (H_MSG_TRUE). If necessary, an exception is raised.
create_matrixcreate_matrixCreateMatrixcreate_matrixCreateMatrixCreateMatrix
get_full_matrixget_full_matrixGetFullMatrixget_full_matrixGetFullMatrixGetFullMatrix,
get_value_matrixget_value_matrixGetValueMatrixget_value_matrixGetValueMatrixGetValueMatrix
mult_matrixmult_matrixMultMatrixmult_matrixMultMatrixMultMatrix
mult_element_matrixmult_element_matrixMultElementMatrixmult_element_matrixMultElementMatrixMultElementMatrix,
mult_element_matrix_modmult_element_matrix_modMultElementMatrixModmult_element_matrix_modMultElementMatrixModMultElementMatrixMod,
div_element_matrixdiv_element_matrixDivElementMatrixdiv_element_matrixDivElementMatrixDivElementMatrix,
div_element_matrix_moddiv_element_matrix_modDivElementMatrixModdiv_element_matrix_modDivElementMatrixModDivElementMatrixMod,
transpose_matrixtranspose_matrixTransposeMatrixtranspose_matrixTransposeMatrixTransposeMatrix,
transpose_matrix_modtranspose_matrix_modTransposeMatrixModtranspose_matrix_modTransposeMatrixModTransposeMatrixMod
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