ML_DGESDD – Computes the singular value decomposition (SVD) of a real M-by-N matrix A

Block SymbolLicensing group: MATRIX
PIC

Function Description
The output references yA, yS, yU, yVT, yWORK and yIWORK are always set to the corresponding input references uA, uS, uU, uVT, uWORK and uIWORK. If HLD = on then nothing is computed otherwise the LAPACK function DGESDD is called internally:

DGESDD(sJOBZ, M, N, uA, LDA, uS, uU, LDU, uVT, LDVT, uWORK, LWORK,
uIWORK, info);

where parameters of DGESDD are set in the following way:

  • Integer input jobz is mapped to the string sJOBZ: {0,1}"A", {2}"S", {3}"O" and {4}"N".
  • M is number of rows of the matrix referenced by uA.
  • N is number of columns of the matrix referenced by uA.
  • LDA, LDU and LDVT are leading dimensions of the matrices referenced by uA, uU and uVT.
  • LWORK is number of elements of the vector referenced by uWORK.
  • info is return code from the function DGESDD.

The error flag E is set to on if:

  • the reference uA or uS or uU or uVT or uWORK or uIWORK is not defined (i.e. input uA or uS or uU or uVT or uWORK or uIWORK is not connected),
  • number of elements of the vector referenced by uS is less than MINMN, the minimum of number of rows and number of columns of the matrix referenced by uA,
  • number of elements of the integer vector referenced by uIWORK is less than 8 MINMN,
  • the call of the function DGESDD returns error using the function XERBLA, see the return code info and system log.

See LAPACK documentation [8] for more details.

Inputs

uA

Input reference to matrix A

Reference

uS

Input reference to vector of singular values

Reference

uU

Input reference to matrix containing left singular vectors of A

Reference

uVT

Input reference to matrix containing right singular vectors of A

Reference

uWORK

Input reference to working vector WORK

Reference

uIWORK

Input reference to integer working vector WORK

Reference

jobz

Specifies options for computing

Long (I32)

HLD

Hold

Bool

Outputs

yA

Output reference to matrix A

Reference

yS

Output reference to vector of singular values

Reference

yU

Output reference to matrix containing left singular vectors of A

Reference

yVT

Output reference to matrix containing right singular vectors of A

Reference

yWORK

Output reference to working vector WORK

Reference

yIWORK

Output reference to integer working vector WORK

Reference

E

Error indicator

Bool

info

LAPACK function result info. If info = -i, the i=th argument had an illegal value

Long (I32)

2024 © REX Controls s.r.o., www.rexygen.com