pbtf2(3)
π NAME π
pbtf2 β pbtf2: triangular factor panel, level 2
okay so real talk, this is a whole little family of routines π
and this page lives in the Library Functions Manual (that's the manual name, folded in neatly for you π). It's the pbtf2 page, it's part 1, and we're gonna get through all of it together.
β¨ SYNOPSIS β¨
π¦ Functions π¦
Four icons, one job. Meet the squad:
subroutine cpbtf2 (uplo, n, kd, ab, ldab, info)
cpbtf2β computes the Cholesky factorization of a symmetric/Hermitian positive definite band matrix (unblocked algorithm). π
subroutine dpbtf2 (uplo, n, kd, ab, ldab, info)
dpbtf2β computes the Cholesky factorization of a symmetric/Hermitian positive definite band matrix (unblocked algorithm). π
subroutine spbtf2 (uplo, n, kd, ab, ldab, info)
spbtf2β computes the Cholesky factorization of a symmetric/Hermitian positive definite band matrix (unblocked algorithm). π
subroutine zpbtf2 (uplo, n, kd, ab, ldab, info)
zpbtf2β computes the Cholesky factorization of a symmetric/Hermitian positive definite band matrix (unblocked algorithm). π
same energy, different precision, no cap.
π₯ Detailed Description π₯
the details are all down in the individual function docs below bestie, so keep scrolling β¬οΈβ¨
π Function Documentation π
π cpbtf2 π
subroutine cpbtf2 (character uplo, integer n, integer kd, complex, dimension( ldab, * ) ab, integer ldab, integer info)
CPBTF2 computes the Cholesky factorization of a symmetric/Hermitian positive definite band matrix (unblocked algorithm).
πΈ Purpose πΈ
okay so CPBTF2 computes the Cholesky factorization of a complex Hermitian positive definite band matrix A. π«Ά
The factorization has the form:
A = U**H * U , if UPLO = 'U', or
A = L * L**H, if UPLO = 'L',
where U is an upper triangular matrix, U**H is the conjugate transpose of U, and L is lower triangular. π
This is the unblocked version of the algorithm, calling Level 2 BLAS. (unblocked = it's doing the work the honest way, no fancy blocking, and honestly? respect. π )
π Parameters π
UPLOβUPLO is CHARACTER*1. Specifies whether the upper or lower triangular part of the Hermitian matrixAis stored:= 'U': upper triangular= 'L': lower triangular
NβN is INTEGER. The order of the matrixA.N >= 0. β¨KDβKD is INTEGER. The number of super-diagonals of the matrixAifUPLO = 'U', or the number of sub-diagonals ifUPLO = 'L'.KD >= 0. β¨ABβAB is COMPLEX array, dimension (LDAB,N). On entry, the upper or lower triangle of the Hermitian band matrixA, stored in the firstKD+1rows of the array. The j-th column ofAis stored in the j-th column of the arrayABas follows:
if UPLO = 'U', AB(kd+1+i-j,j) = A(i,j) for max(1,j-kd)<=i<=j;
if UPLO = 'L', AB(1+i-j,j) = A(i,j) for j<=i<=min(n,j+kd).
On exit, if INFO = 0, the triangular factor U or L from the Cholesky factorization A = U**H*U or A = L*L**H of the band matrix A, in the same storage format as A. π (same seats, different passengers, iykyk)
LDABβLDAB is INTEGER. The leading dimension of the arrayAB.LDAB >= KD+1. π«ΆINFOβINFO is INTEGER:= 0: successful exit π< 0: ifINFO = -k, the k-th argument had an illegal value π> 0: ifINFO = k, the leading principal minor of orderkis not positive, and the factorization could not be completed π
π Author π
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
π§ Further Details π§
The band storage scheme is illustrated by the following example, when N = 6, KD = 2, and UPLO = 'U':
On entry: On exit:
* * a13 a24 a35 a46 * * u13 u24 u35 u46
* a12 a23 a34 a45 a56 * u12 u23 u34 u45 u56
a11 a22 a33 a44 a55 a66 u11 u22 u33 u44 u55 u66
Similarly, if UPLO = 'L' the format of A is as follows:
On entry: On exit:
a11 a22 a33 a44 a55 a66 l11 l22 l33 l44 l55 l66
a21 a32 a43 a54 a65 * l21 l32 l43 l54 l65 *
a31 a42 a53 a64 * * l31 l42 l53 l64 * *
Array elements marked * are not used by the routine. π
Definition at line 141 of file cpbtf2.f.
π dpbtf2 π
subroutine dpbtf2 (character uplo, integer n, integer kd, double precision, dimension( ldab, * ) ab, integer ldab, integer info)
DPBTF2 computes the Cholesky factorization of a symmetric/Hermitian positive definite band matrix (unblocked algorithm).
πΈ Purpose πΈ
DPBTF2 computes the Cholesky factorization of a real symmetric positive definite band matrix A. π«Ά
The factorization has the form:
A = U**T * U , if UPLO = 'U', or
A = L * L**T, if UPLO = 'L',
where U is an upper triangular matrix, U**T is the transpose of U, and L is lower triangular. π
This is the unblocked version of the algorithm, calling Level 2 BLAS. π¦
π Parameters π
UPLOβUPLO is CHARACTER*1. Specifies whether the upper or lower triangular part of the symmetric matrixAis stored:= 'U': upper triangular= 'L': lower triangular
NβN is INTEGER. The order of the matrixA.N >= 0. β¨KDβKD is INTEGER. The number of super-diagonals of the matrixAifUPLO = 'U', or the number of sub-diagonals ifUPLO = 'L'.KD >= 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 firstKD+1rows of the array. The j-th column ofAis stored in the j-th column of the arrayABas follows:
if UPLO = 'U', AB(kd+1+i-j,j) = A(i,j) for max(1,j-kd)<=i<=j;
if UPLO = 'L', AB(1+i-j,j) = A(i,j) for j<=i<=min(n,j+kd).
On exit, if INFO = 0, the triangular factor U or L from the Cholesky factorization A = U**T*U or A = L*L**T of the band matrix A, in the same storage format as A. π
LDABβLDAB is INTEGER. The leading dimension of the arrayAB.LDAB >= KD+1. π«ΆINFOβINFO is INTEGER:= 0: successful exit π< 0: ifINFO = -k, the k-th argument had an illegal value π> 0: ifINFO = k, the leading principal minor of orderkis not positive, and the factorization could not be completed π
π Author π
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
π§ Further Details π§
The band storage scheme is illustrated by the following example, when N = 6, KD = 2, and UPLO = 'U':
On entry: On exit:
* * a13 a24 a35 a46 * * u13 u24 u35 u46
* a12 a23 a34 a45 a56 * u12 u23 u34 u45 u56
a11 a22 a33 a44 a55 a66 u11 u22 u33 u44 u55 u66
Similarly, if UPLO = 'L' the format of A is as follows:
On entry: On exit:
a11 a22 a33 a44 a55 a66 l11 l22 l33 l44 l55 l66
a21 a32 a43 a54 a65 * l21 l32 l43 l54 l65 *
a31 a42 a53 a64 * * l31 l42 l53 l64 * *
Array elements marked * are not used by the routine. π
Definition at line 141 of file dpbtf2.f.
π spbtf2 π
subroutine spbtf2 (character uplo, integer n, integer kd, real, dimension( ldab, * ) ab, integer ldab, integer info)
SPBTF2 computes the Cholesky factorization of a symmetric/Hermitian positive definite band matrix (unblocked algorithm).
πΈ Purpose πΈ
SPBTF2 computes the Cholesky factorization of a real symmetric positive definite band matrix A. π«Ά
The factorization has the form:
A = U**T * U , if UPLO = 'U', or
A = L * L**T, if UPLO = 'L',
where U is an upper triangular matrix, U**T is the transpose of U, and L is lower triangular. π
This is the unblocked version of the algorithm, calling Level 2 BLAS. π¦ totally the same vibe as dpbtf2 but single precision, and she ate π
π Parameters π
UPLOβUPLO is CHARACTER*1. Specifies whether the upper or lower triangular part of the symmetric matrixAis stored:= 'U': upper triangular= 'L': lower triangular
NβN is INTEGER. The order of the matrixA.N >= 0. β¨KDβKD is INTEGER. The number of super-diagonals of the matrixAifUPLO = 'U', or the number of sub-diagonals ifUPLO = 'L'.KD >= 0. β¨ABβAB is REAL array, dimension (LDAB,N). On entry, the upper or lower triangle of the symmetric band matrixA, stored in the firstKD+1rows of the array. The j-th column ofAis stored in the j-th column of the arrayABas follows:
if UPLO = 'U', AB(kd+1+i-j,j) = A(i,j) for max(1,j-kd)<=i<=j;
if UPLO = 'L', AB(1+i-j,j) = A(i,j) for j<=i<=min(n,j+kd).
On exit, if INFO = 0, the triangular factor U or L from the Cholesky factorization A = U**T*U or A = L*L**T of the band matrix A, in the same storage format as A. π
LDABβLDAB is INTEGER. The leading dimension of the arrayAB.LDAB >= KD+1. π«ΆINFOβINFO is INTEGER:= 0: successful exit π< 0: ifINFO = -k, the k-th argument had an illegal value π> 0: ifINFO = k, the leading principal minor of orderkis not positive, and the factorization could not be completed π
π Author π
Univ. of Tennessee
Univ. of California Berkeley
(and the author list keeps going β part 2's got the rest of this one, bestie π«Ά)
Author squad, continued: Univ. of Colorado Denver, NAG Ltd. π
π¦ Further Details
okay bestie, here's the band storage scheme visual, exactly as the page lays it out β when N = 6, KD = 2, and UPLO = 'U':
!>
!> The band storage scheme is illustrated by the following example, when
!> N = 6, KD = 2, and UPLO = 'U':
!>
!> On entry: On exit:
!>
!> * * a13 a24 a35 a46 * * u13 u24 u35 u46
!> * a12 a23 a34 a45 a56 * u12 u23 u34 u45 u56
!> a11 a22 a33 a44 a55 a66 u11 u22 u33 u44 u55 u66
!>
!> Similarly, if UPLO = 'L' the format of A is as follows:
!>
!> On entry: On exit:
!>
!> a11 a22 a33 a44 a55 a66 l11 l22 l33 l44 l55 l66
!> a21 a32 a43 a54 a65 * l21 l32 l43 l54 l65 *
!> a31 a42 a53 a64 * * l31 l42 l53 l64 * *
!>
!> Array elements marked * are not used by the routine.
!>
Definition at line 141 of file spbtf2.f.
π
subroutine zpbtf2
subroutine zpbtf2 (character uplo, integer n, integer kd, complex*16,
dimension( ldab, * ) ab, integer ldab, integer info)
ZPBTF2 computes the Cholesky factorization of a symmetric/Hermitian positive definite band matrix (unblocked algorithm).
π― Purpose
okay so ZPBTF2 computes the Cholesky factorization of a complex Hermitian positive definite band matrix A.
The factorization has the form:
A = U**H * U , if UPLO = 'U', or
A = L * L**H, if UPLO = 'L',
where U is an upper triangular matrix, U**H is the conjugate transpose of U, and L is lower triangular.
This is the unblocked version of the algorithm, calling Level 2 BLAS.
π Parameters
UPLOβCHARACTER*1. Specifies whether the upper or lower triangular part of the Hermitian matrixAis stored:= 'U': Upper triangular= 'L': Lower triangular
NβINTEGER. The order of the matrixA.N >= 0.KDβINTEGER. The number of super-diagonals of the matrixAifUPLO = 'U', or the number of sub-diagonals ifUPLO = 'L'.KD >= 0.ABβCOMPLEX*16array, dimension(LDAB,N). On entry, the upper or lower triangle of the Hermitian band matrixA, stored in the firstKD+1rows of the array. The j-th column ofAis stored in the j-th column of the arrayABlike this:
if UPLO = 'U', AB(kd+1+i-j,j) = A(i,j) for max(1,j-kd)<=i<=j;
if UPLO = 'L', AB(1+i-j,j) = A(i,j) for j<=i<=min(n,j+kd).
On exit, if INFO = 0, it holds the triangular factor U or L from the Cholesky factorization A = U**H *U or A = L*L**H of the band matrix A, in the same storage format as A.
LDABβINTEGER. The leading dimension of the arrayAB.LDAB >= KD+1.INFOβINTEGER:= 0: successful exit< 0: ifINFO = -k, the k-th argument had an illegal value> 0: ifINFO = k, the leading principal minor of orderkis not positive, and the factorization could not be completed.
π Author
Univ. of Tennessee, Univ. of California Berkeley, Univ. of Colorado Denver, NAG Ltd. β iconic collab.
π¦ Further Details
Same energy, same exact band storage scheme. When N = 6, KD = 2, and UPLO = 'U':
!>
!> The band storage scheme is illustrated by the following example, when
!> N = 6, KD = 2, and UPLO = 'U':
!>
!> On entry: On exit:
!>
!> * * a13 a24 a35 a46 * * u13 u24 u35 u46
!> * a12 a23 a34 a45 a56 * u12 u23 u34 u45 u56
!> a11 a22 a33 a44 a55 a66 u11 u22 u33 u44 u55 u66
!>
!> Similarly, if UPLO = 'L' the format of A is as follows:
!>
!> On entry: On exit:
!>
!> a11 a22 a33 a44 a55 a66 l11 l22 l33 l44 l55 l66
!> a21 a32 a43 a54 a65 * l21 l32 l43 l54 l65 *
!> a31 a42 a53 a64 * * l31 l42 l53 l64 * *
!>
!> Array elements marked * are not used by the routine.
!>
Definition at line 141 of file zpbtf2.f.
π Author
Generated automatically by Doxygen for LAPACK from the source code.
π that's a wrap on pbtf2(3) β source LAPACK, version 3.12.0, and yeah the footer didn't print a date, so I'm not inventing one, bestie. 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