ML_DGELSD – Computes the minimum-norm solution to a real linear least squares problem

Block SymbolLicensing group: MATRIX
Qt SVG Document Exported by REXYGEN Studio uA uB uS uWORK uIWORK rcond HLD yA yB yS yWORK yIWORK irank E info ML_DGELSD

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

DGELSD(M, N, NRHS, uA, LDA, uB, LDB, uS, rcond, irank,uWORK,
LWORK, uIWORK, info);

where parameters of DGELSD are set in the following way:

  • M is number of rows of the matrix referenced by uA.
  • N is number of columns of the matrix referenced by uA.
  • NRHS is number of columns of the matrix referenced by uB.
  • LDA and LDB are leading dimensions of the matrices referenced by uA and uB.
  • irank is returned effective rank of the matrix referenced by uA.
  • LWORK is number of elements in the vector referenced by uWORK.
  • info is return code from the function DGELSD.

The error flag E is set to on if:

  • the reference uA or uB or uS or uWORK or uIWORK is not defined (i.e. input uA or uB or uS or uWORK or uIWORK is not connected),
  • the number of rows of the matrix referenced by uB is not equal to M,
  • number of elements of any vector referenced by uS is less than the minimum of M and N,
  • number of elements of the integer vector referenced by uIWORK is not sufficient (see details in the LAPACK documentation of the function DGELSD),
  • the call of the function DGELSD returns error using the function XERBLA, see the return code info and system log.

See LAPACK documentation [10] for more details.

This block does not propagate the signal quality. More information can be found in the 1.4 section.

Input

uA

Input reference to matrix A

Reference

uB

Input reference to matrix B

Reference

uS

Input reference to vector of singular values

Reference

uWORK

Input reference to working vector WORK

Reference

uIWORK

Input reference to integer working vector WORK

Reference

rcond

Used to determine the effective rank of A

Double (F64)

HLD

Hold

Bool

Output

yA

Output reference to matrix A

Reference

yB

Output reference to matrix B

Reference

yS

Output reference to vector of singular values

Reference

yWORK

Output reference to working vector WORK

Reference

yIWORK

Output reference to integer working vector WORK

Reference

irank

Effective rank of A

Long (I32)

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