Pivoted QR Decomposition¶
Given the matrix \(X\) of size \(n \times p\), the problem is to compute the QR decomposition with column pivoting \(XP = QR\), where
\(Q\) is an orthogonal matrix of size \(n \times n\)
\(R\) is a rectangular upper triangular matrix of size \(n \times p\)
\(P\) is a permutation matrix of size \(n \times n\)
The library requires \(n > p\). In this case:
where the matrix \(Q_1\) has the size \(n \times p\) and \(R_1\) has the size \(p \times p\).
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 |
---|---|
|
Pointer to the numeric table that represents the \(n \times p\) matrix \(X\) to be factorized.
The input can be an object of any class derived from |
Algorithm Parameters¶
Pivoted QR decomposition has the following parameters:
Parameter |
Default Value |
Description |
---|---|---|
|
|
The floating-point type that the algorithm uses for intermediate computations. Can be |
|
|
Performance-oriented computation method, the only method supported by the algorithm. |
|
Not applicable |
Pointer to the numeric table with the \(1 \times p\) matrix with the information for the permutation:
Note By default, this parameter is an object of the |
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 |
---|---|
|
Pointer to the numeric table with the \(n \times p\) matrix \(Q_1\). Note By default, this result is an object of the |
|
Pointer to the numeric table with the \(p \times p\) upper triangular matrix \(R_1\). Note By default, this result is an object of the |
|
Pointer to the numeric table with the \(1 \times p\) matrix such that \(\text{permutationMatrix}(i) = k\) 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 |
Examples¶
Batch Processing:
Batch Processing: