QR Decomposition of a matrix.

Namespace: Imsl.Math
Assembly: ImslCS (in ImslCS.dll) Version: 6.5.0.0

Syntax

C#
[SerializableAttribute]
public class QR
Visual Basic (Declaration)
<SerializableAttribute> _
Public Class QR
Visual C++
[SerializableAttribute]
public ref class QR

Remarks

Class QR computes the QR decomposition of a matrix using Householder transformations. It is based on the LINPACK routine SQRDC; see Dongarra et al. (1979).

QR determines an orthogonal matrix Q, a permutation matrix P, and an upper trapezoidal matrix R with diagonal elements of nonincreasing magnitude, such that AP = QR. The Householder transformation for column k is of the form

I - \frac{{u_k u_k^T }}{{P_k }}

for k = 1, 2, \ldots, min(number of rows of A, number of columns of A), where u has zeros in the first k - 1 positions. The matrix Q is not produced directly by QR. Instead the information needed to reconstruct the Householder transformations is saved. If the matrix Q is needed explicitly, use the Q property. This method accumulates Q from its factored form.

Before the decomposition is computed, initial columns are moved to the beginning of the array A and the final columns to the end. Both initial and final columns are frozen in place during the computation. Only free columns are pivoted. Pivoting is done on the free columns of largest reduced norm.

Inheritance Hierarchy

System..::.Object
Imsl.Math..::.QR

See Also