TESTING/EIG/dget22.f(3)
π TESTING/EIG/dget22.f(3) β Library Functions Manual π
okay so bestie, this is TESTING/EIG/dget22.f(3) from the Library Functions Manual, and it's giving extremely specific LAPACK testing routine energy. We're gonna go through every single flag, every dimension, every formula β no skips, no cap. π
β¨
π NAME
TESTING/EIG/dget22.f
β¨ SYNOPSIS
π§ Functions/Subroutines
subroutine dget22 (transa, transe, transw, n, a, lda, e, lde, wr, wi,
work, result)
DGET22
π Function/Subroutine Documentation
subroutine dget22 (character transa, character transe, character transw,
integer n, double precision, dimension( lda, * ) a, integer lda, double
precision, dimension( lde, * ) e, integer lde, double precision,
dimension( * ) wr, double precision, dimension( * ) wi, double
precision, dimension( * ) work, double precision, dimension( 2 ) result)
π DGET22
DGET22 is the routine name, and yes, it's the star of this page. π
π₯ Purpose
okay so the purpose is literally this: DGET22 does an eigenvector check. No cap.
The basic test is:
RESULT(1) = | A E - E W | / ( |A| |E| ulp )
using the 1-norm. It also tests the normalization of E:
RESULT(2) = max | m-norm(E(j)) - 1 | / ( n ulp )
j
where E(j) is the j-th eigenvector, and m-norm is the max-norm of a vector. If an eigenvector is complex, as determined from WI(j) nonzero, then the max-norm of the vector ( er + i*ei ) is the maximum of
|er(1)| + |ei(1)|, ... , |er(n)| + |ei(n)|
W is a block diagonal matrix, with a 1 by 1 block for each real eigenvalue and a 2 by 2 block for each complex conjugate pair. If eigenvalues j and j+1 are a complex conjugate pair, so that WR(j) = WR(j+1) = wr and WI(j) = - WI(j+1) = wi, then the 2 by 2 block corresponding to the pair will be:
( wr wi )
( -wi wr )
Such a block multiplying an n by 2 matrix ( ur ui ) on the right will be the same as multiplying ur + i*ui by wr + i*wi. π§ β¨
To handle various schemes for storage of left eigenvectors, there are options to use A-transpose instead of A, E-transpose instead of E, and/or W-transpose instead of W. iykyk π¦
π§Έ Parameters
TRANSAβTRANSA is CHARACTER*1; specifies whether or not A is transposed.= 'N': No transpose= 'T': Transpose= 'C': Conjugate transpose (= Transpose)
TRANSEβTRANSE is CHARACTER*1; specifies whether or not E is transposed.= 'N': No transpose, eigenvectors are in columns of E= 'T': Transpose, eigenvectors are in rows of E= 'C': Conjugate transpose (= Transpose)
TRANSWβTRANSW is CHARACTER*1; specifies whether or not W is transposed.= 'N': No transpose= 'T': Transpose, use-WI(j)instead ofWI(j)= 'C': Conjugate transpose, use-WI(j)instead ofWI(j)
NβN is INTEGER; the order of the matrix A.N >= 0.AβA is DOUBLE PRECISION array, dimension (LDA,N); the matrix whose eigenvectors are in E.LDAβLDA is INTEGER; the leading dimension of the array A.LDA >= max(1,N).EβE is DOUBLE PRECISION array, dimension (LDE,N); the matrix of eigenvectors. IfTRANSE = 'N', the eigenvectors are stored in the columns of E, ifTRANSE = 'T'or'C', the eigenvectors are stored in the rows of E.LDEβLDE is INTEGER; the leading dimension of the array E.LDE >= max(1,N).WRβWR is DOUBLE PRECISION array, dimension (N)WIβWI is DOUBLE PRECISION array, dimension (N); the real and imaginary parts of the eigenvalues of A. Purely real eigenvalues are indicated byWI(j) = 0. Complex conjugate pairs are indicated byWR(j)=WR(j+1)andWI(j) = - WI(j+1)non-zero; the real part is assumed to be stored in the j-th row/column and the imaginary part in the (j+1)-th row/column.WORKβWORK is DOUBLE PRECISION array, dimension (N*(N+1))RESULTβRESULT is DOUBLE PRECISION array, dimension (2)
RESULT(1) = | A E - E W | / ( |A| |E| ulp )
RESULT(2) = max | m-norm(E(j)) - 1 | / ( n ulp )
j
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 166 of file dget22.f.
π Author
Generated automatically by Doxygen for LAPACK from the source code.
and that's the whole page, bestie. the footer says LAPACK Version 3.12.0 and TESTING/EIG/dget22.f(3) β no separate date is listed, so I'm not gonna invent one, periodt. 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