LAPACK Archives

[Lapack] fast condition number of nonsquare matrix


the standard way to go is

(1) first, compute a QR factorization of your matrix A, if A is m-by-n, 
this will cost you 2m*n^2-2/3*n^3, this is done with DGEQRF

(2) the 2-norm condition number of A and the 2-norm condition number of R 
will then be the same, so you compute the condition number of R with 
DTRCON, this cost a few n^2. You can choose the norm in which you want the 
condition number. Can be 1-norm or inifinity-norm. And also keep in mind 
that DTRCON returns a condition number estimate. (Computing the exact 
condition number would require n^3 computation.)

If you do need the QR factorization of your initial matrix A, then this 
method is fine since step (1) (step in mn^2) is needed no matter what.

If you do not need the QR factorization of your initial matrix A and would 
hope some methods to approximate the condition number in O(mn), this is 
doble but there are no routines in LAPACK to do so. (These would be more 
iterative mehods like techniques).

If you absolutely want the 2-norm condition number of A and n is small, 
you might want to afford the full SVD of R. (DGESVD, this n^3.)


On Wed, 1 Aug 2007, Dima Sorkin wrote:

I want to get a fast approximation for a condition number
of a general non square matrix. Or at least it's smaller
singular value. SVD is too heavy for me.

1) Is there faster methods via lapack, than SVD ?
2) If I can provide a pretty good initial guess for cond or
  singular value - can I gain from it ?

Thank you,
Lapack mailing list

<Prev in Thread] Current Thread [Next in Thread>

For additional information you may use the LAPACK/ScaLAPACK Forum.
Or one of the mailing lists, or