TESTING/EIG/zget52.f(3)
π NAME π
Hey bestie, welcome to the TESTING/EIG/zget52.f(3) page from the Library Functions Manual β¨. This one is all about the zget52 subroutine β aka ZGET52 β and it's doing an eigenvector check for the generalized eigenvalue problem. Obsessed π.
β¨ SYNOPSIS β¨
π Functions/Subroutines π
subroutine zget52 (left, n, a, lda, b, ldb, e, lde, alpha, beta, work,
rwork, result)
ZGET52
π§ Function/Subroutine Documentation π§
subroutine zget52 (logical left, integer n, complex*16, dimension( lda, * )
a, integer lda, complex*16, dimension( ldb, * ) b, integer ldb,
complex*16, dimension( lde, * ) e, integer lde, complex*16, dimension( *
) alpha, complex*16, dimension( * ) beta, complex*16, dimension( * )
work, double precision, dimension( * ) rwork, double precision,
dimension( 2 ) result)
ZGET52
π Purpose π
Okay so ZGET52 does an eigenvector check for the generalized eigenvalue problem. Periodt π
.
The basic test for right eigenvectors is:
| b(i) A E(i) - a(i) B E(i) |
RESULT(1) = max -------------------------------
i n ulp max( |b(i) A|, |a(i) B| )
It uses the 1-norm. Here, a(i)/b(i) = w is the i-th generalized eigenvalue of A - w B, or, equivalently, b(i)/a(i) = m is the i-th generalized eigenvalue of m A - B β¨.
For left eigenvectors, A, B, a, and b are used with the H/H/bar situation:
H H _ _
For left eigenvectors, A , B , a, and b are used.
ZGET52 also tests the normalization of E. Each eigenvector is supposed to be normalized so that the maximum of its elements is 1, where in this case, the norm of a complex value x is |Re(x)| + |Im(x)|; let us call this maximum norm of a vector v M(v). If a(i)=b(i)=0, then the eigenvector is set to be the jth coordinate vector. The normalization test is:
RESULT(2) = max | M(v(i)) - 1 | / ( n ulp )
eigenvectors v(i)
πΈ Parameters πΈ
LEFTβLEFTisLOGICAL.=.TRUE.: the eigenvectors in the columns ofEare assumed to be left eigenvectors.=.FALSE.: the eigenvectors in the columns ofEare assumed to be right eigenvectors π«Ά.NβNisINTEGER. The size of the matrices. If it is zero,ZGET52does nothing. It must be at least zero.AβAisCOMPLEX*16array, dimension(LDA, N). The matrixA.LDAβLDAisINTEGER. The leading dimension ofA. It must be at least 1 and at leastN.BβBisCOMPLEX*16array, dimension(LDB, N). The matrixB.LDBβLDBisINTEGER. The leading dimension ofB. It must be at least 1 and at leastN.EβEisCOMPLEX*16array, dimension(LDE, N). The matrix of eigenvectors. It must beO( 1 ).LDEβLDEisINTEGER. The leading dimension ofE. It must be at least 1 and at leastN.ALPHAβALPHAisCOMPLEX*16array, dimension(N). The valuesa(i)as described above, which, along withb(i), define the generalized eigenvalues.BETAβBETAisCOMPLEX*16array, dimension(N). The valuesb(i)as described above, which, along witha(i), define the generalized eigenvalues.WORKβWORKisCOMPLEX*16array, dimension(N**2).RWORKβRWORKisDOUBLE PRECISIONarray, dimension(N).RESULTβRESULTisDOUBLE PRECISIONarray, dimension(2). The values computed by the test described above. IfA EorB Eis likely to overflow, thenRESULT(1:2)is set to10 / ulp.
π Author π
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Definition at line 160 of file zget52.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
Bye bestie π β the footer/source/version/date tea is: LAPACK, Version 3.12.0, and TESTING/EIG/zget52.f(3). No separate date is listed in this footer, so that's the whole situation. Mwah π
β¨
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms