rankqr — rank revealing QR factorization
[Q,R,JPVT,RANK,SVAL]=rankqr(A, [RCOND,JPVT])
real or complex matrix
real number used to determine the effective rank of
A
, which is defined as the order of the largest leading
triangular submatrix R11
in the QR factorization with
pivoting ofA
, whose estimated condition number <
1/RCOND
.
integer vector on entry, if JPVT(i)
is not 0, the
i
-th column of A
is permuted to the front
of AP
, otherwise column i
is a free
column. On exit, if JPVT(i) = k
, then the
i
-th column of A*P
was the
k
-th column of A
.
the effective rank of A
, i.e., the order of the
submatrix R11
. This is the same as the order of the
submatrix T1
in the complete orthogonal factorization
of A
.
real vector with 3 components; The estimates of some of the
singular values of the triangular factor R
.
SVAL(1)
is the largest singular value of
R(1:RANK,1:RANK)
;
SVAL(2)
is the
smallest singular value of R(1:RANK,1:RANK)
;
SVAL(3)
is the smallest singular value of
R(1:RANK+1,1:RANK+1)
, if RANK
< MIN(M,N)
,
or of R(1:RANK,1:RANK)
, otherwise.
To compute (optionally) a rank-revealing QR factorization of a real
general M-by-N real or complex matrix A
, which may be
rank-deficient, and estimate its effective rank using incremental
condition estimation.
The routine uses a QR factorization with column pivoting:
A * P = Q * R, where R = [ R11 R12 ], [ 0 R22 ]
with R11
defined as the largest leading submatrix whose
estimated condition number is less than 1/RCOND
. The
order of R11
, RANK
, is the effective rank of
A
.
If the triangular factorization is a rank-revealing one (which will be
the case if the leading columns were well- conditioned), then
SVAL(1)
will also be an estimate for the largest singular
value of A
, and SVAL(2)
and
SVAL(3)
will be estimates for the RANK
-th
and (RANK+1)
-st singular values of A
,
respectively.
By examining these values, one can confirm that the
rank is well defined with respect to the chosen value of
RCOND
. The ratio SVAL(1)/SVAL(2)
is an
estimate of the condition number of R(1:RANK,1:RANK)
.