ML_DGEBAL – Balancing of a general real matrix

Block SymbolLicensing group: MATRIX
Qt SVG Document Exported by REXYGEN Studio uA uSCALE job HLD yA ySCALE ilo ihi E info ML_DGEBAL

Function Description
The output references yA and ySCALE are always set to the corresponding input references uA and uSCALE. If HLD = on then nothing is computed otherwise the LAPACK function DGEBAL is called internally:

DGEBAL(sJOB, N, uA, LDA, ilo, ihi, uSCALE, info);

where parameters of DGEBAL are set in the following way:

  • Integer input job is mapped to the string sJOB: {0,1}"N", {2}"P", {3}"S" and {4}"B".
  • N is number of columns of the square matrix referenced by uA.
  • LDA is the leading dimension of the matrix referenced by uA.
  • ilo and ihi are returned low and high row and column indices of the balanced submatrix of the matrix referenced by uA.
  • info is return code from the function DGEBAL.

The error flag E is set to on if:

  • the reference uA or uSCALE is not defined (i.e. input uA or uSCALE is not connected),
  • matrix referenced by uA is not square,
  • number of elements of the vector referenced by uSCALE is less than N.
  • the call of the function DGEBAL returns error using the function XERBLA, see the return code info and system log.

Emphasize that the indices ilo and ihi start from zero unlike FORTRAN version where they start from one. 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

uSCALE

Input reference to vector SCALE

Reference

job

Specifies the operations to be performed on matrix A   0  4

Long (I32)

HLD

Hold

Bool

Output

yA

Output reference to matrix A

Reference

ySCALE

Output reference to vector SCALE

Reference

ilo

Zero based low row and column index of working submatrix

Long (I32)

ihi

Zero based high row and column index of working submatrix

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