SRC/chbgv.f(3)
π NAME π
SRC/chbgv.f β that's the name, bestie. This is the Library Functions Manual page for it, and we're about to get into the whole subroutine vibe. π
πΈ SYNOPSIS πΈ
π§ Functions/Subroutines π§
subroutine chbgv (jobz, uplo, n, ka, kb, ab, ldab, bb, ldbb, w, z, ldz,
work, rwork, info)
CHBGV β iconic. Periodt. β¨
π¦ Function/Subroutine Documentation π¦
subroutine chbgv (character jobz, character uplo, integer n, integer ka,
integer kb, complex, dimension( ldab, * ) ab, integer ldab, complex,
dimension( ldbb, * ) bb, integer ldbb, real, dimension( * ) w, complex,
dimension( ldz, * ) z, integer ldz, complex, dimension( * ) work, real,
dimension( * ) rwork, integer info)
CHBGV π«Ά
π Purpose π
Okay so CHBGV computes all the eigenvalues, and optionally the eigenvectors, of a complex generalized Hermitian-definite banded eigenproblem, of the form A*x=(lambda)*B*x. Here A and B are assumed to be Hermitian and banded, and B is also positive definite. That's the whole main-character assignment, no cap. π
π Parameters π
JOBZβJOBZ is CHARACTER*1;= 'N': Compute eigenvalues only;= 'V': Compute eigenvalues and eigenvectors.Choose your fighter, bestie. πUPLOβUPLO is CHARACTER*1;= 'U': Upper triangles of A and B are stored;= 'L': Lower triangles of A and B are stored.Pick a triangle, literally. πΊNβN is INTEGER; the order of the matricesAandB.N >= 0. πKAβKA is INTEGER; the number of superdiagonals of the matrixAifUPLO = 'U', or the number of subdiagonals ifUPLO = 'L'.KA >= 0. β¨KBβKB is INTEGER; the number of superdiagonals of the matrixBifUPLO = 'U', or the number of subdiagonals ifUPLO = 'L'.KB >= 0. πΈABβAB is COMPLEX array, dimension (LDAB, N). On entry, it holds the upper or lower triangle of the Hermitian band matrixA, stored in the firstka+1rows of the array. Thej-th column ofAis stored in thej-th column of the arrayABas follows:
if UPLO = 'U', AB(ka+1+i-j,j) = A(i,j) for max(1,j-ka)<=i<=j;
if UPLO = 'L', AB(1+i-j,j) = A(i,j) for j<=i<=min(n,j+ka).
On exit, the contents of AB are destroyed. π Yeah, she's gone.
LDABβLDAB is INTEGER; the leading dimension of the arrayAB.LDAB >= KA+1. πBBβBB is COMPLEX array, dimension (LDBB, N). On entry, it holds the upper or lower triangle of the Hermitian band matrixB, stored in the firstkb+1rows of the array. Thej-th column ofBis stored in thej-th column of the arrayBBas follows:
if UPLO = 'U', BB(kb+1+i-j,j) = B(i,j) for max(1,j-kb)<=i<=j;
if UPLO = 'L', BB(1+i-j,j) = B(i,j) for j<=i<=min(n,j+kb).
On exit, BB holds the factor S from the split Cholesky factorization B = S**H*S, as returned by CPBSTF. π§
LDBBβLDBB is INTEGER; the leading dimension of the arrayBB.LDBB >= KB+1. πWβW is REAL array, dimension (N). IfINFO = 0, this holds the eigenvalues in ascending order. Slay, sorted. βZβZ is COMPLEX array, dimension (LDZ, N). IfJOBZ = 'V', then ifINFO = 0,Zcontains the matrixZof eigenvectors, with thei-th column ofZholding the eigenvector associated withW(i). The eigenvectors are normalized so thatZ**H*B*Z = I. IfJOBZ = 'N', thenZis not referenced. πLDZβLDZ is INTEGER; the leading dimension of the arrayZ.LDZ >= 1, and ifJOBZ = 'V',LDZ >= N. πWORKβWORK is COMPLEX array, dimension (N). π«ΆRWORKβRWORK is REAL array, dimension (3*N). πINFOβINFO is INTEGER; the vibe check:= 0: successful exit. π< 0: ifINFO = -i, thei-th argument had an illegal value. π> 0: ifINFO = i, andiis:<= N: the algorithm failed to converge:ioff-diagonal elements of an intermediate tridiagonal form did not converge to zero. π> N: ifINFO = N + i, for1 <= i <= N, thenCPBSTFreturnedINFO = i:Bis not positive definite. The factorization ofBcould not be completed and no eigenvalues or eigenvectors were computed. π¨
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 181 of file chbgv.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
π«Ά Okay that's the whole page, bestie. It's from the Library Functions Manual, and the footer signs off with LAPACK, Version 3.12.0, and SRC/chbgv.f(3). The footer doesn't list a date, so I'm not inventing one β periodt. πβ¨
π¦ 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