Posted by Steve Schreppler on November 05, 1997 at 19:51:56:

There may be a typo in the header comments of the

LAPACK subroutine ZGESVD. This is the comment describing

the argument LWORK:

*

* LWORK (input) INTEGER

* The dimension of the array WORK. LWORK >= 1.

* LWORK >= 2*MIN(M,N)+MAX(M,N).

* For good performance, LWORK should generally be larger.

*

The same exact comment is also in CGESVD, and, DGESVD and SGESVD may

have similar incorrect statements

For the subroutine to use the "fast algorithm" it seems that

LWORK should be at least:

LWORK >= 2*MIN(M,N)**2+MAX(M,N)

There are numerous conditionals in the subroutine that

check LWORK for its size so the fast algorithms can

be used.

BTW, if this is an error it is also in GNU Octave.

Octave sets LWORK to 2*MIN(M,N)+MAX(M,N) and therefore

runs svd() very slowly.

Can someone confirm or deny this for me ?

Thanks, Steve Schreppler

- Re: possible typo in ZGESVD comments
**Scott Betts***11:21:42 11/07/97*(0)