Contents
spttrf - compute the L*D*L' factorization of a real sym-
metric positive definite tridiagonal matrix A
SUBROUTINE SPTTRF(N, D, E, INFO)
INTEGER N, INFO
REAL D(*), E(*)
SUBROUTINE SPTTRF_64(N, D, E, INFO)
INTEGER*8 N, INFO
REAL D(*), E(*)
F95 INTERFACE
SUBROUTINE PTTRF([N], D, E, [INFO])
INTEGER :: N, INFO
REAL, DIMENSION(:) :: D, E
SUBROUTINE PTTRF_64([N], D, E, [INFO])
INTEGER(8) :: N, INFO
REAL, DIMENSION(:) :: D, E
C INTERFACE
#include <sunperf.h>
void spttrf(int n, float *d, float *e, int *info);
void spttrf_64(long n, float *d, float *e, long *info);
spttrf computes the L*D*L' factorization of a real symmetric
positive definite tridiagonal matrix A. The factorization
may also be regarded as having the form A = U'*D*U.
N (input) The order of the matrix A. N >= 0.
D (input/output)
On entry, the n diagonal elements of the
tridiagonal matrix A. On exit, the n diagonal
elements of the diagonal matrix D from the L*D*L'
factorization of A.
E (input/output)
On entry, the (n-1) subdiagonal elements of the
tridiagonal matrix A. On exit, the (n-1) subdiag-
onal elements of the unit bidiagonal factor L from
the L*D*L' factorization of A. E can also be
regarded as the superdiagonal of the unit bidiago-
nal factor U from the U'*D*U factorization of A.
INFO (output)
= 0: successful exit
< 0: if INFO = -k, the k-th argument had an ille-
gal value
> 0: if INFO = k, the leading minor of order k is
not positive definite; if k < N, the factorization
could not be completed, while if k = N, the fac-
torization was completed, but D(N) = 0.