SSBGVX(3)
π NAME π
okay so bestie, this is ssbgvx.f(3) from LAPACK, and the source path is literally this whole iconic little string:
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/ssbgvx.f
β¨ SYNOPSIS β¨
π§ Functions/Subroutines π§
subroutine SSBGVX (jobz, range, uplo, n, ka, kb, ab, ldab, bb, ldbb, q,
ldq, vl, vu, il, iu, abstol, m, w, z, ldz, work, iwork, ifail, info)
SSBGVX
π Function/Subroutine Documentation π
subroutine SSBGVX (character jobz, character range, character uplo, integer
n, integer ka, integer kb, real, dimension( ldab, * ) ab, integer ldab,
real, dimension( ldbb, * ) bb, integer ldbb, real, dimension( ldq, * )
q, integer ldq, real vl, real vu, integer il, integer iu, real abstol,
integer m, real, dimension( * ) w, real, dimension( ldz, * ) z, integer
ldz, real, dimension( * ) work, integer, dimension( * ) iwork, integer,
dimension( * ) ifail, integer info)
SSBGVX
π¦ Purpose π¦
okay so what does this queen actually do? SSBGVX computes selected eigenvalues, and optionally, eigenvectors of a real generalized symmetric-definite banded eigenproblem, of the form A*x=(lambda)*B*x. Here A and B are assumed to be symmetric and banded, and B is also positive definite. Eigenvalues and eigenvectors can be selected by specifying either all eigenvalues, a range of values or a range of indices for the desired eigenvalues. π
π Parameters π
JOBZβJOBZisCHARACTER*1;= 'N': Compute eigenvalues only;= 'V': Compute eigenvalues and eigenvectors. β¨RANGEβRANGEisCHARACTER*1;= 'A': all eigenvalues will be found.= 'V': all eigenvalues in the half-open interval(VL,VU]will be found.= 'I': theIL-th throughIU-th eigenvalues will be found. πUPLOβUPLOisCHARACTER*1;= 'U': Upper triangles ofAandBare stored;= 'L': Lower triangles ofAandBare stored. π¦NβNisINTEGER. The order of the matricesAandB.N >= 0. πΈKAβKAisINTEGER. The number of superdiagonals of the matrixAifUPLO = 'U', or the number of subdiagonals ifUPLO = 'L'.KA >= 0. πKBβKBisINTEGER. The number of superdiagonals of the matrixBifUPLO = 'U', or the number of subdiagonals ifUPLO = 'L'.KB >= 0. πABβABisREAL array, dimension (LDAB, N). On entry, the upper or lower triangle of the symmetric 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. π₯
LDABβLDABisINTEGER. The leading dimension of the arrayAB.LDAB >= KA+1. β¨BBβBBisREAL array, dimension (LDBB, N). On entry, the upper or lower triangle of the symmetric 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(ka+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, the factor S from the split Cholesky factorization B = S**T*S, as returned by SPBSTF. π«Ά
LDBBβLDBBisINTEGER. The leading dimension of the arrayBB.LDBB >= KB+1. πQβQisREAL array, dimension (LDQ, N). IfJOBZ = 'V', then-by-nmatrix used in the reduction ofA*x = (lambda)*B*xto standard form, i.e.C*x = (lambda)*x, and consequentlyCto tridiagonal form. IfJOBZ = 'N', the arrayQis not referenced. π«LDQβLDQisINTEGER. The leading dimension of the arrayQ. IfJOBZ = 'N',LDQ >= 1. IfJOBZ = 'V',LDQ >= max(1,N). πVLβVLisREAL. IfRANGE='V', the lower bound of the interval to be searched for eigenvalues.VL < VU. Not referenced ifRANGE = 'A'or'I'. πVUβVUisREAL. IfRANGE='V', the upper bound of the interval to be searched for eigenvalues.VL < VU. Not referenced ifRANGE = 'A'or'I'. πILβILisINTEGER. IfRANGE='I', the index of the smallest eigenvalue to be returned.1 <= IL <= IU <= N, ifN > 0;IL = 1andIU = 0ifN = 0. Not referenced ifRANGE = 'A'or'V'. πIUβIUisINTEGER. IfRANGE='I', the index of the largest eigenvalue to be returned.1 <= IL <= IU <= N, ifN > 0;IL = 1andIU = 0ifN = 0. Not referenced ifRANGE = 'A'or'V'. πABSTOLβABSTOLisREAL. The absolute error tolerance for the eigenvalues. An approximate eigenvalue is accepted as converged when it is determined to lie in an interval[a,b]of width less than or equal to
ABSTOL + EPS * max( |a|,|b| ) ,
where EPS is the machine precision. If ABSTOL is less than or equal to zero, then EPS*|T| will be used in its place, where |T| is the 1-norm of the tridiagonal matrix obtained by reducing A to tridiagonal form.
Eigenvalues will be computed most accurately when ABSTOL is set to twice the underflow threshold 2*SLAMCH('S'), not zero. If this routine returns with INFO>0, indicating that some eigenvectors did not converge, try setting ABSTOL to 2*SLAMCH('S'). π
MβMisINTEGER. The total number of eigenvalues found.0 <= M <= N. IfRANGE = 'A',M = N, and ifRANGE = 'I',M = IU-IL+1. πWβWisREAL array, dimension (N). IfINFO = 0, the eigenvalues in ascending order. πΈZβZisREAL 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 soZ**T*B*Z = I. IfJOBZ = 'N', thenZis not referenced. π¦LDZβLDZisINTEGER. The leading dimension of the arrayZ.LDZ >= 1, and ifJOBZ = 'V',LDZ >= max(1,N). β¨WORKβWORKisREAL array, dimension (7*N). πIWORKβIWORKisINTEGER array, dimension (5*N). πIFAILβIFAILisINTEGER array, dimension (M). IfJOBZ = 'V', then ifINFO = 0, the firstMelements ofIFAILare zero. IfINFO > 0, thenIFAILcontains the indices of the eigenvalues that failed to converge. IfJOBZ = 'N', thenIFAILis not referenced. πINFOβINFOisINTEGER.= 0: successful exit< 0: ifINFO = -i, thei-th argument had an illegal value<= N: ifINFO = i, thenieigenvectors failed to converge. Their indices are stored inIFAIL.> N:SPBSTFreturned an error code; i.e., ifINFO = N + i, for1 <= i <= N, then the leading principal minor of orderiofBis not positive. 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.
π Contributors π
Mark Fahey, Department of Mathematics, Univ. of Kentucky, USA. π«Ά
β Definition at line 291 β
Definition at line 291 of file ssbgvx.f. π
π Author π
Generated automatically by Doxygen for LAPACK from the source code. π€β¨
mwah π thatβs the whole page, bestie β footer vibe is LAPACK, Version 3.12.0, and /home/abui...RC/ssbgvx.f(3). No date is shown in the footer, so Iβm not inventing one β periodt. ππ
π¦ 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