pbstf#

Functions

void spbstf(
    const char*          uplo,
    const INT            n,
    const INT            kd,
          f32*  restrict AB,
    const INT            ldab,
          INT*           info
);
void spbstf(const char *uplo, const INT n, const INT kd, f32 *restrict AB, const INT ldab, INT *info)#

SPBSTF computes a split Cholesky factorization of a real symmetric positive definite band matrix A.

This routine is designed to be used in conjunction with SSBGST.

The factorization has the form A = S**T*S where S is a band matrix of the same bandwidth as A.

Parameters

in
uplo

= ‘U’: Upper triangle of A is stored = ‘L’: Lower triangle of A is stored

in
n

The order of the matrix A. n >= 0.

in
kd

The number of super-diagonals (if uplo=’U’) or sub-diagonals (if uplo=’L’). kd >= 0.

inout
AB

On entry, the banded matrix A. On exit, the factor S from A = S**T*S. Array of dimension (ldab, n).

in
ldab

The leading dimension of AB. ldab >= kd+1.

out
info

  • = 0: successful exit

  • < 0: if info = -i, the i-th argument had an illegal value

  • > 0: if info = i, the matrix is not positive definite.

Functions

void dpbstf(
    const char*          uplo,
    const INT            n,
    const INT            kd,
          f64*  restrict AB,
    const INT            ldab,
          INT*           info
);
void dpbstf(const char *uplo, const INT n, const INT kd, f64 *restrict AB, const INT ldab, INT *info)#

DPBSTF computes a split Cholesky factorization of a real symmetric positive definite band matrix A.

This routine is designed to be used in conjunction with DSBGST.

The factorization has the form A = S**T*S where S is a band matrix of the same bandwidth as A.

Parameters

in
uplo

= ‘U’: Upper triangle of A is stored = ‘L’: Lower triangle of A is stored

in
n

The order of the matrix A. n >= 0.

in
kd

The number of super-diagonals (if uplo=’U’) or sub-diagonals (if uplo=’L’). kd >= 0.

inout
AB

On entry, the banded matrix A. On exit, the factor S from A = S**T*S. Array of dimension (ldab, n).

in
ldab

The leading dimension of AB. ldab >= kd+1.

out
info

  • = 0: successful exit

  • < 0: if info = -i, the i-th argument had an illegal value

  • > 0: if info = i, the matrix is not positive definite.

Functions

void cpbstf(
    const char*          uplo,
    const INT            n,
    const INT            kd,
          c64*  restrict AB,
    const INT            ldab,
          INT*           info
);
void cpbstf(const char *uplo, const INT n, const INT kd, c64 *restrict AB, const INT ldab, INT *info)#

CPBSTF computes a split Cholesky factorization of a complex Hermitian positive definite band matrix A.

This routine is designed to be used in conjunction with CHBGST.

The factorization has the form A = S**H*S where S is a band matrix of the same bandwidth as A.

Parameters

in
uplo

= ‘U’: Upper triangle of A is stored = ‘L’: Lower triangle of A is stored

in
n

The order of the matrix A. n >= 0.

in
kd

The number of super-diagonals (if uplo=’U’) or sub-diagonals (if uplo=’L’). kd >= 0.

inout
AB

On entry, the banded matrix A. On exit, the factor S from A = S**H*S. Array of dimension (ldab, n).

in
ldab

The leading dimension of AB. ldab >= kd+1.

out
info

  • = 0: successful exit

  • < 0: if info = -i, the i-th argument had an illegal value

  • > 0: if info = i, the factorization could not be completed, because the updated element a(i,i) was negative; the matrix A is not positive definite.

Functions

void zpbstf(
    const char*          uplo,
    const INT            n,
    const INT            kd,
          c128* restrict AB,
    const INT            ldab,
          INT*           info
);
void zpbstf(const char *uplo, const INT n, const INT kd, c128 *restrict AB, const INT ldab, INT *info)#

ZPBSTF computes a split Cholesky factorization of a complex Hermitian positive definite band matrix A.

This routine is designed to be used in conjunction with ZHBGST.

The factorization has the form A = S**H*S where S is a band matrix of the same bandwidth as A.

Parameters

in
uplo

= ‘U’: Upper triangle of A is stored = ‘L’: Lower triangle of A is stored

in
n

The order of the matrix A. n >= 0.

in
kd

The number of super-diagonals (if uplo=’U’) or sub-diagonals (if uplo=’L’). kd >= 0.

inout
AB

On entry, the banded matrix A. On exit, the factor S from A = S**H*S. Array of dimension (ldab, n).

in
ldab

The leading dimension of AB. ldab >= kd+1.

out
info

  • = 0: successful exit

  • < 0: if info = -i, the i-th argument had an illegal value

  • > 0: if info = i, the factorization could not be completed, because the updated element a(i,i) was negative; the matrix A is not positive definite.