Advanced Analysis Library Only
AnalysisLibErrType CxMatrixMul (void *matrixX, void *matrixY, int numberRowsX, int colRowsXY, int numberColsY, void *outputMatrix);
Multiplies two matrices. CxMatrixMul uses the following formula to obtain the output matrix.
i = matrix row index
j = matrix column index
k = number of columns/rows in X/Y
Ensure that the matrix sizes are valid for matrix multiplication. You must meet the following size constraints:
| Input | ||
| Name | Type | Description |
| matrixX | numeric array | First matrix to multiply. The number of columns in matrixX must match the number of rows in matrixY. This matrix must be an array of ComplexNum. The following C typedef statement defines the ComplexNum structure: typedef struct { double real; double imaginary; } ComplexNum; |
| matrixY | numeric array | Second matrix to multiply. The number of columns in matrixX must match the number of rows in matrixY. This matrix must be an array of ComplexNum. The following C typedef statement defines the ComplexNum structure: typedef struct { double real; double imaginary; } ComplexNum; |
| numberRowsX | integer | Number of rows in matrixX. |
| colRowsXY | integer | Number of columns in matrixX, which must equal the number of rows in matrixY. |
| numberColsY | integer | Number of columns in matrixY. |
| Output | ||
| Name | Type | Description |
| outputMatrix | numeric array | Result of the matrix multiplication, as an array of ComplexNum. The following C typedef statement defines the ComplexNum structure: typedef struct { double real; double imaginary; } ComplexNum; |
| Name | Type | Description |
| status | AnalysisLibErrType | A value that specifies the type of error that occurred. Refer to analysis.h for definitions of these constants. |