Advanced Analysis Library Only
AnalysisLibErrType CxQREx (void *inputMatrix, int numberOfRows, int numberOfColumns, int pivot, int sizeOption, void *pivotInfo, void *qMatrix, void *rMatrix);
Performs the QR factorization for a complex matrix. CxQREx factorizes matrix A as AP = QR, where P is a permutation matrix, Q is a unitary matrix, and R is an upper triangular matrix. If numberOfRows > numberOfColumns, sizeOption is ECONOMY_SIZE and rMatrix is NULL or inputMatrix. On output, the leading numberOfColumns rows in inputMatrix are the upper triangular matrix R.
Input | ||
Name | Type | Description |
inputMatrix | numeric array | The matrix to be factorized. |
numberOfRows | integer | The number of rows of inputMatrix. |
numberOfColumns | integer | The number of columns of inputMatrix. |
pivot | integer | Specifies how to pivot inputMatrix. pivot must be one of the following values:
|
sizeOption | integer | The size of Q and rMatrix. sizeOption must one of the following values:
|
Output | ||
Name | Type | Description |
pivotInfo | numeric array | The pivoting information if pivot is PIVOT_VECTOR or PIVOT_MATRIX.
|
qMatrix | numeric array | The unitary matrix Q. If Q = NULL, qMatrix is not generated. |
rMatrix | numeric array | The upper triangular matrix R. rMatrix can be NULL. This function supports in place operation. That is, you can call the function with rMatrix = inputMatrix. |
Name | Type | Description |
status | AnalysisLibErrType | A value that specifies the type of error that occurred. Refer to analysis.h for definitions of these constants. |