CGEHD2(3)
β¨ Okay bestie, welcome to the cgehd2.f(3) page from the Library Functions Manual β yes, the LAPACK one. The header path is /home/abui...RC/cgehd2.f(3), and we are about to get into it. π
π NAME
The source file is:
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/cgehd2.f
That is exactly the NAME path; in the original it wraps after lapack-. π
β¨ SYNOPSIS
πΈ Functions/Subroutines
subroutine CGEHD2 (n, ilo, ihi, a, lda, tau, work, info)
CGEHD2 takes a general square matrix and reduces it to upper Hessenberg form using an unblocked algorithm. Slay. β¨
π¦ Function/Subroutine Documentation
subroutine CGEHD2 (integer n, integer ilo, integer ihi, complex, dimension(
lda, * ) a, integer lda, complex, dimension( * ) tau, complex,
dimension( * ) work, integer info)
CGEHD2 takes a general square matrix and reduces it to upper Hessenberg form using an unblocked algorithm. Same queen, full signature. π
π Purpose
CGEHD2 reduces a complex general matrix A to upper Hessenberg form H by a unitary similarity transformation:
Q**H * A * Q = H .
π Parameters
NβNisINTEGER. It's the order of the matrixA.N >= 0. βILOβILOisINTEGER. That's the whole note for this one, bestie.IHIβIHIisINTEGER. It is assumed thatAis already upper triangular in rows and columns1:ILO-1andIHI+1:N.ILOandIHIare normally set by a previous call toCGEBAL; otherwise they should be set to1andNrespectively. See Further Details. And the range is1 <= ILO <= IHI <= max(1,N). π«ΆAβAisCOMPLEX array, dimension (LDA,N). On entry, it's thenbyngeneral matrix to be reduced. On exit, the upper triangle and the first subdiagonal ofAare overwritten with the upper Hessenberg matrixH, and the elements below the first subdiagonal, with the arrayTAU, represent the unitary matrixQas a product of elementary reflectors. See Further Details. πLDAβLDAisINTEGER. It's the leading dimension of the arrayA.LDA >= max(1,N).TAUβTAUisCOMPLEX array, dimension (N-1). It holds the scalar factors of the elementary reflectors (see Further Details). β¨WORKβWORKisCOMPLEX array, dimension (N).INFOβINFOisINTEGER.= 0: successful exit.< 0: ifINFO = -i, the i-th argument had an illegal value. π
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π₯ Further Details
The matrix Q is represented as a product of (ihi-ilo) elementary reflectors:
Q = H(ilo) H(ilo+1) . . . H(ihi-1).
Each H(i) has the form:
H(i) = I - tau * v * v**H
where tau is a complex scalar, and v is a complex vector with v(1:i) = 0, v(i+1) = 1 and v(ihi+1:n) = 0; v(i+2:ihi) is stored on exit in A(i+2:ihi,i), and tau in TAU(i).
The contents of A are illustrated by the following example, with n = 7, ilo = 2 and ihi = 6:
on entry, on exit,
( a a a a a a a ) ( a a h h h h a )
( a a a a a a ) ( a h h h h a )
( a a a a a a ) ( h h h h h h )
( a a a a a a ) ( v2 h h h h h )
( a a a a a a ) ( v2 v3 h h h h )
( a a a a a a ) ( v2 v3 v4 h h h )
( a ) ( a )
where a denotes an element of the original matrix A, h denotes a modified element of the upper Hessenberg matrix H, and vi denotes an element of the vector defining H(i).
π Definition at line 148 of file cgehd2.f.
Yes, literally: Definition at line 148 of file cgehd2.f.
π«Ά Author
Generated automatically by Doxygen for LAPACK from the source code.
Okay bestie, that's the whole page. Footer vibe: LAPACK Version 3.12.0, path /home/abui...RC/cgehd2.f(3), and no separate date is listed there. Byeee ππ
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms