Visible to Intel only — GUID: GUID-03153463-5959-4922-A6EF-0585404906F8
Visible to Intel only — GUID: GUID-03153463-5959-4922-A6EF-0585404906F8
Pivoted QR Decomposition
Given the matrix X of size , the problem is to compute the QR decomposition with column pivoting , where
Q is an orthogonal matrix of size
R is a rectangular upper triangular matrix of size
P is a permutation matrix of size
The library requires . In this case:
where the matrix has the size and has the size .
Batch Processing
Algorithm Input
Pivoted QR decomposition accepts the input described below. Pass the Input ID as a parameter to the methods that provide input for your algorithm. For more details, see Algorithms.
Input ID |
Input |
---|---|
data |
Pointer to the numeric table that represents the matrix X to be factorized. The input can be an object of any class derived from NumericTable. |
Algorithm Parameters
Pivoted QR decomposition has the following parameters:
Parameter |
Default Value |
Description |
---|---|---|
algorithmFPType |
float |
The floating-point type that the algorithm uses for intermediate computations. Can be float or double. |
method |
defaultDense |
Performance-oriented computation method, the only method supported by the algorithm. |
permutedColumns |
Not applicable |
Pointer to the numeric table with the matrix with the information for the permutation:
NOTE:
By default, this parameter is an object of the HomogenNumericTable class, filled by zeros. However, you can define this parameter as an object of any class derived from NumericTable except the PackedSymmetricMatrix class, CSRNumericTable class, and PackedTriangularMatrix class with the lowerPackedTriangularMatrix layout.
|
Algorithm Output
Pivoted QR decomposition calculates the results described below. Pass the Result ID as a parameter to the methods that access the results of your algorithm. For more details, see Algorithms.
Result ID |
Result |
---|---|
matrixQ |
Pointer to the numeric table with the matrix .
NOTE:
By default, this result is an object of the HomogenNumericTable class, but you can define the result as an object of any class derived from NumericTable except PackedSymmetricMatrix, PackedTriangularMatrix, and CSRNumericTable.
|
matrixR |
Pointer to the numeric table with the upper triangular matrix .
NOTE:
By default, this result is an object of the HomogenNumericTable class, but you can define the result as an object of any class derived from NumericTable except the PackedSymmetricMatrix class, CSRNumericTable class, and PackedTriangularMatrix class with the lowerPackedTriangularMatrix layout.
|
permutationMatrix |
Pointer to the numeric table with the matrix such that if the column k of the full matrix X is permuted into the position i in XP.
NOTE:
By default, this result is an object of the HomogenNumericTable class, but you can define the result as an object of any class derived from NumericTable except the PackedSymmetricMatrix class, CSRNumericTable class, and PackedTriangularMatrix class with the lowerPackedTriangularMatrix layout.
|
Examples
C++ (CPU)
Batch Processing:
Python*
Batch Processing: