Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2025.0.0 - English


rankqr

rank revealing QR factorization

Syntax

[Q,R,JPVT,RANK,SVAL]=rankqr(A, [RCOND,JPVT])

Arguments

A

real or complex matrix

RCOND

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.

JPVT

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.

RANK

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.

SVAL

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.

Description

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).

Examples

A=rand(5,3)*rand(3,7);
[Q,R,JPVT,RANK,SVAL]=rankqr(A,%eps)

See also

  • qr — QR decomposition
  • rank — rank

Used Functions

Slicot library routines MB03OD, ZB03OD.

Report an issue
<< qr Factorization schur >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Oct 24 11:13:08 CEST 2024