DSBGVD(3)
π DSBGVD(3) π
Manual name, folded in: Library Functions Manual. Page header vibe: /home/abui...RC/dsbgvd.f(3). Bestie, this is the whole glow-up of the DSBGVD page from LAPACK, and yes we are reading all of it. π
πΈ NAME πΈ
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/dsbgvd.f
Thatβs the file, no cap. This is the Library Functions Manual page for /home/abui...RC/dsbgvd.f(3). β¨
π SYNOPSIS π
π Functions/Subroutines π
subroutine DSBGVD (jobz, uplo, n, ka, kb, ab, ldab, bb, ldbb, w, z, ldz,
work, lwork, iwork, liwork, info)
DSBGVDβ the icon, the moment, the subroutine. π
β¨ Function/Subroutine Documentation β¨
π«Ά subroutine DSBGVD π«Ά
subroutine DSBGVD (character jobz, character uplo, integer n, integer ka,
integer kb, double precision, dimension( ldab, * ) ab, integer ldab,
double precision, dimension( ldbb, * ) bb, integer ldbb, double
precision, dimension( * ) w, double precision, dimension( ldz, * ) z,
integer ldz, double precision, dimension( * ) work, integer lwork,
integer, dimension( * ) iwork, integer liwork, integer info)
DSBGVD again, because main character energy. π
π Purpose π
DSBGVD computes all the eigenvalues, and optionally, the 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. If eigenvectors are desired, it uses a divide and conquer algorithm.
π Parameters π
JOBZβJOBZ is CHARACTER*1= 'N': Compute eigenvalues only;= 'V': Compute eigenvalues and eigenvectors.
UPLOβUPLO is CHARACTER*1= 'U': Upper triangles of A and B are stored;= 'L': Lower triangles of A and B are stored.
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 DOUBLE PRECISION 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).
π heads up: on exit, the contents of AB are destroyed.
LDABβLDAB is INTEGER. The leading dimension of the arrayAB.LDAB >= KA+1.BBβBB is DOUBLE PRECISION 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 DPBSTF.
LDBBβLDBB is INTEGER. The leading dimension of the arrayBB.LDBB >= KB+1.WβW is DOUBLE PRECISION array, dimension (N). IfINFO = 0, the eigenvalues in ascending order.ZβZ is DOUBLE PRECISION 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βLDZ is INTEGER. The leading dimension of the arrayZ.LDZ >= 1, and ifJOBZ = 'V',LDZ >= max(1,N).WORKβWORK is DOUBLE PRECISION array, dimension (MAX(1,LWORK)). On exit, ifINFO = 0,WORK(1)returns the optimalLWORK.LWORKβLWORK is INTEGER. The dimension of the arrayWORK.
If N <= 1, LWORK >= 1.
If JOBZ = 'N' and N > 1, LWORK >= 2*N.
If JOBZ = 'V' and N > 1, LWORK >= 1 + 5*N + 2*N**2.
If LWORK = -1, then a workspace query is assumed; the routine only calculates the optimal sizes of the WORK and IWORK arrays, returns these values as the first entries of the WORK and IWORK arrays, and no error message related to LWORK or LIWORK is issued by XERBLA.
IWORKβIWORK is INTEGER array, dimension (MAX(1,LIWORK)). On exit, ifLIWORK > 0,IWORK(1)returns the optimalLIWORK.LIWORKβLIWORK is INTEGER. The dimension of the arrayIWORK.
If JOBZ = 'N' or N <= 1, LIWORK >= 1.
If JOBZ = 'V' and N > 1, LIWORK >= 3 + 5*N.
If LIWORK = -1, then a workspace query is assumed; the routine only calculates the optimal sizes of the WORK and IWORK arrays, returns these values as the first entries of the WORK and IWORK arrays, and no error message related to LWORK or LIWORK is issued by XERBLA.
INFOβINFO is INTEGER
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an illegal value
> 0: if INFO = i, and i is:
<= N: the algorithm failed to converge:
i off-diagonal elements of an intermediate
tridiagonal form did not converge to zero;
> N: if INFO = N + i, for 1 <= i <= N, then DPBSTF
returned INFO = i: B is not positive definite.
The factorization of B could 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 219 of file dsbgvd.f. β
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
Thatβs the whole page, bestie. Footer/source/version vibe check: LAPACK, Version 3.12.0, page /home/abui...RC/dsbgvd.f(3) β and the footer line doesnβt print a date, just so you know. Bye bestie πβ¨π
π¦ 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