hbgst(3)
π hbgst(3) π
okay so this is from the Library Functions Manual and it's literally the banded generalized eigenproblem glow-up page β {hb,sb}gst: reduction to standard form, banded. bestie, this is the banded edition and it's kind of a lot, but we're gonna get through it together π«Ά
β¨ NAME β¨
hbgst β {hb,sb}gst: reduction to standard form, banded π
πΈ SYNOPSIS πΈ
π Functions π
subroutine chbgst (vect, uplo, n, ka, kb, ab, ldab, bb, ldbb, x, ldx,
work, rwork, info)
CHBGST
subroutine dsbgst (vect, uplo, n, ka, kb, ab, ldab, bb, ldbb, x, ldx,
work, info)
DSBGST
subroutine ssbgst (vect, uplo, n, ka, kb, ab, ldab, bb, ldbb, x, ldx,
work, info)
SSBGST
subroutine zhbgst (vect, uplo, n, ka, kb, ab, ldab, bb, ldbb, x, ldx,
work, rwork, info)
ZHBGST
like, four icons, one job β¨
π Detailed Description π
no cap, the details are all down in Function Documentation below β that's where the real main character energy lives π
π Function Documentation π
π subroutine chbgst π
subroutine chbgst (character vect, character uplo, integer n, integer ka,
integer kb, complex, dimension( ldab, * ) ab, integer ldab, complex,
dimension( ldbb, * ) bb, integer ldbb, complex, dimension( ldx, * ) x,
integer ldx, complex, dimension( * ) work, real, dimension( * ) rwork,
integer info)
CHBGST β the complex one, she's serving π¦
π Purpose π
okay so check it: CHBGST reduces a complex Hermitian-definite banded generalized eigenproblem A*x = lambda*B*x to standard form C*y = lambda*y, such that C has the same bandwidth as A. slay, bandwidth preserved, no notes π
B must have been previously factorized as S**H*S by CPBSTF, using a split Cholesky factorization. A is overwritten by C = X**H*A*X, where X = S**(-1)*Q and Q is a unitary matrix chosen to preserve the bandwidth of A. iconic behavior fr fr β¨
π Parameters π
VECTβVECTisCHARACTER*1.= 'N': do not form the transformation matrixX;= 'V': formX. pick your vibe πUPLOβUPLOisCHARACTER*1.= 'U': Upper triangle ofAis stored;= 'L': Lower triangle ofAis stored. bestie, you gotta tell her which triangle πNβNisINTEGER. The order of the matricesAandB.N >= 0. periodt.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'.KA >= KB >= 0. yes the constraint is real, respect it π«ΆABβABisCOMPLEXarray, dimension(LDAB,N). On entry, 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: ifUPLO = 'U',AB(ka+1+i-j,j) = A(i,j)formax(1,j-ka)<=i<=j; ifUPLO = 'L',AB(1+i-j,j) = A(i,j)forj<=i<=min(n,j+ka).
On exit, the transformed matrix X**H*A*X, stored in the same format as A. she got a whole makeover and kept the same fit π
LDABβLDABisINTEGER. The leading dimension of the arrayAB.LDAB >= KA+1.BBβBBisCOMPLEXarray, dimension(LDBB,N). The banded factorSfrom the split Cholesky factorization ofB, as returned byCPBSTF, stored in the firstkb+1rows of the array.LDBBβLDBBisINTEGER. The leading dimension of the arrayBB.LDBB >= KB+1.XβXisCOMPLEXarray, dimension(LDX,N). IfVECT = 'V', then-by-nmatrixX. IfVECT = 'N', the arrayXis not referenced. she's literally not invited to the function call πLDXβLDXisINTEGER. The leading dimension of the arrayX.LDX >= max(1,N)ifVECT = 'V';LDX >= 1otherwise.WORKβWORKisCOMPLEXarray, dimension(N).RWORKβRWORKisREALarray, dimension(N).INFOβINFOisINTEGER.= 0: successful exit.< 0: ifINFO = -i, thei-th argument had an illegal value. we love a clean exit, we do NOT love a negativeINFOπ«
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
the whole squad showed up for the credits π«Άβ¨
π Definition π
Definition at line 163 of file chbgst.f.
π¦ subroutine dsbgst π¦
subroutine dsbgst (character vect, 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( ldx, * ) x, integer ldx, double precision,
dimension( * ) work, integer info)
DSBGST β the double precision one, same energy, no RWORK needed π
π Purpose π
okay so here's the deal: DSBGST reduces a real symmetric-definite banded generalized eigenproblem A*x = lambda*B*x to standard form C*y = lambda*y, such that C has the same bandwidth as A. yes, bandwidth stays, that's the whole point π
B must have been previously factorized as S**T*S by DPBSTF, using a split Cholesky factorization. A is overwritten by C = X**T*A*X, where X = S**(-1)*Q and Q is an orthogonal matrix chosen to preserve the bandwidth of A. no cap, that's the transformation β¨
π Parameters π
VECTβVECTisCHARACTER*1.= 'N': do not form the transformation matrixX;= 'V': formX.UPLOβUPLOisCHARACTER*1.= 'U': Upper triangle ofAis stored;= 'L': Lower triangle ofAis 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'.KA >= KB >= 0.ABβABisDOUBLE PRECISIONarray, 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: ifUPLO = 'U',AB(ka+1+i-j,j) = A(i,j)formax(1,j-ka)<=i<=j; ifUPLO = 'L',AB(1+i-j,j) = A(i,j)forj<=i<=min(n,j+ka).
On exit, the transformed matrix X**T*A*X, stored in the same format as A. glow-up complete π
LDABβLDABisINTEGER. The leading dimension of the arrayAB.LDAB >= KA+1.BBβBBisDOUBLE PRECISIONarray, dimension(LDBB,N). The banded factorSfrom the split Cholesky factorization ofB, as returned byDPBSTF, stored in the firstKB+1rows of the array.LDBBβLDBBisINTEGER. The leading dimension of the arrayBB.LDBB >= KB+1.XβXisDOUBLE PRECISIONarray, dimension(LDX,N). IfVECT = 'V', then-by-nmatrixX. IfVECT = 'N', the arrayXis not referenced.LDXβLDXisINTEGER. The leading dimension of the arrayX.LDX >= max(1,N)ifVECT = 'V';LDX >= 1otherwise.WORKβWORKisDOUBLE PRECISIONarray, dimension(2*N). note the2*Nbestie, it's different from the complex one, don't get caught slipping πINFOβINFOisINTEGER.= 0: successful exit.< 0: ifINFO = -i, thei-th argument had an illegal value.
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
same legends, still iconic π
π Definition π
Definition at line 157 of file dsbgst.f.
π subroutine ssbgst π
subroutine ssbgst (character vect, character uplo, integer n, integer ka,
integer kb, real, dimension( ldab, * ) ab, integer ldab, real,
dimension( ldbb, * ) bb, integer ldbb, real, dimension( ldx, * ) x,
integer ldx, real, dimension( * ) work, integer info)
SSBGST β single precision sister, she's real and she's here π
π Purpose π
bestie it's the same plot: SSBGST reduces a real symmetric-definite banded generalized eigenproblem A*x = lambda*B*x to standard form C*y = lambda*y, such that C has the same bandwidth as A. bandwidth preservation is the moment π
B must have been previously factorized as S**T*S by SPBSTF, using a split Cholesky factorization. A is overwritten by C = X**T*A*X, where X = S**(-1)*Q and Q is an orthogonal matrix chosen to preserve the bandwidth of A. yes queen, keep that bandwidth β¨
π Parameters π
VECTβVECTisCHARACTER*1.= 'N': do not form the transformation matrixX;= 'V': formX.UPLOβUPLOisCHARACTER*1.= 'U': Upper triangle ofAis stored;= 'L': Lower triangle ofAis 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'.KA >= KB >= 0.ABβABisREALarray, 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: ifUPLO = 'U',AB(ka+1+i-j,j) = A(i,j)formax(1,j-ka)<=i<=j; ifUPLO = 'L',AB(1+i-j,j) = A(i,j)forj<=i<=min(n,j+ka).
On exit, the transformed matrix X**T*A*X, stored in the same format as A. same format, new matrix, we love continuity π«Ά
LDABβLDABisINTEGER. The leading dimension of the arrayAB.LDAB >= KA+1.BBβBBisREALarray, dimension(LDBB,N). The banded factorSfrom the split Cholesky factorization ofB, as returned bySPBSTF, stored in the firstKB+1rows of the array.
π§ okay that's where part 1 lives βLDBBand the rest ofssbgstare pulling up in part 2, don't go anywhere π§
LDBBβINTEGER. The leading dimension of the arrayBB, bestie. Rule:LDBB >= KB+1. No cap. πXβREAL array, dimension (LDX,N). IfVECT = 'V', it's then-by-nmatrixX. IfVECT = 'N', the arrayXis not referenced β she's off duty, don't touch her. π«ΆLDXβINTEGER. The leading dimension of the arrayX.LDX >= max(1,N)ifVECT = 'V';LDX >= 1otherwise. Periodt.WORKβREAL array, dimension (2*N). That's the realssbgstwork array, not the complex one. β¨INFOβINTEGER.= 0: successful exit.< 0: ifINFO = -i, thei-th argument had an illegal value. Snitch behavior, honestly. π
Author π«Ά
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 157 of file ssbgst.f.
π¦ subroutine zhbgst
subroutine zhbgst (character vect, character uplo, integer n, integer ka,
integer kb, complex*16, dimension( ldab, * ) ab, integer ldab,
complex*16, dimension( ldbb, * ) bb, integer ldbb, complex*16,
dimension( ldx, * ) x, integer ldx, complex*16, dimension( * ) work,
double precision, dimension( * ) rwork, integer info)
ZHBGST
π― Purpose
okay so ZHBGST reduces a complex Hermitian-definite banded generalized eigenproblem A*x = lambda*B*x to standard form C*y = lambda*y, such that C has the same bandwidth as A. π¦
B must have been previously factorized as S**H*S by ZPBSTF, using a split Cholesky factorization. A is overwritten by C = X**H*A*X, where X = S**(-1)*Q and Q is a unitary matrix chosen to preserve the bandwidth of A. That's the whole plot. β¨
π§Ύ Parameters
VECTβCHARACTER*1.= 'N': do not form the transformation matrixX;= 'V': formX.
Pick your fighter. π
UPLOβCHARACTER*1.= 'U': upper triangle ofAis stored;= 'L': lower triangle ofAis stored.
NβINTEGER. The order of the matricesAandB.N >= 0.KAβINTEGER. The number of superdiagonals of the matrixAifUPLO = 'U', or the number of subdiagonals ifUPLO = 'L'.KA >= 0.KBβINTEGER. The number of superdiagonals of the matrixBifUPLO = 'U', or the number of subdiagonals ifUPLO = 'L'.KA >= KB >= 0.ABβCOMPLEX*16 array, dimension (LDAB,N). On entry, 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 transformed matrix X**H*A*X, stored in the same format as A. Iconic glow-up. β¨
LDABβINTEGER. The leading dimension of the arrayAB.LDAB >= KA+1.BBβCOMPLEX*16 array, dimension (LDBB,N). The banded factorSfrom the split Cholesky factorization ofB, as returned byZPBSTF, stored in the firstkb+1rows of the array.LDBBβINTEGER. The leading dimension of the arrayBB.LDBB >= KB+1.XβCOMPLEX*16 array, dimension (LDX,N). IfVECT = 'V', then-by-nmatrixX. IfVECT = 'N', the arrayXis not referenced. She said "not referenced," not "don't look at her," but same vibe. πLDXβINTEGER. The leading dimension of the arrayX.LDX >= max(1,N)ifVECT = 'V';LDX >= 1otherwise.WORKβCOMPLEX*16 array, dimension (N).RWORKβDOUBLE PRECISION array, dimension (N).INFOβINTEGER.= 0: successful exit.< 0: ifINFO = -i, thei-th argument had an illegal value.
Author π«Ά
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 163 of file zhbgst.f.
Author
Generated automatically by Doxygen for LAPACK from the source code.
That's the rest of the page, bestie! Footer energy: source LAPACK, version 3.12.0, page hbgst(3), date stamped by the source β 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