### ML_DGEHRD – Reduces a real general matrix A to upper Hessenberg form

Block SymbolLicensing group: MATRIX

Function Description
The output references yA, yTAU and yWORK are always set to the corresponding input references uA, uTAU and uWORK. If HLD = on then nothing is computed otherwise the LAPACK function DGEHRD is called internally:

DGEHRD(N, ilo, IHI, uA, LDA, uTAU, uWORK, LWORK, info);

where parameters of DGEHRD are set in the following way:

• N is number of columns of the square matrix referenced by uA.
• If the input $\mathtt{\text{ihi}}\ne 0$ then IHI is set to ihi else IHI is set to $\mathtt{\text{N}}-1$.
• LDA is the leading dimension of the matrix referenced by uA.
• LWORK is number of elements of the vector referenced by uWORK.
• info is return code from the function DGEHRD.

The error flag E is set to on if:

• the reference uA or uTAU or uWORK is not defined (i.e. input uA or uTAU or uWORK is not connected),
• matrix referenced by uA is not square,
• number of elements of the vector referenced by uTAU is less than $\mathtt{\text{N}}-1$.
• the call of the function DGEHRD 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 [7] for more details.

Inputs

 uA Input reference to matrix A Reference uTAU Input reference to vector of scalar factors of the elementary reflectors Reference uWORK Input reference to working vector WORK Reference ilo Zero based low row and column index of working submatrix  $\odot$0.00E+00 Long(I32) ihi Zero based high row and column index of working submatrix  $\odot$0.00E+00 Long(I32) HLD Hold Bool

Outputs

 yA Output reference to matrix A Reference yTAU Output reference to vector of scalar factors of the elementary reflectors Reference yWORK Output reference to 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)

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