cpttrf(3P) Sun Performance Library cpttrf(3P)NAMEcpttrf - compute the L*D*L' factorization of a complex Hermitian posi‐
tive definite tridiagonal matrix A
SYNOPSIS
SUBROUTINE CPTTRF(N, D, E, INFO)
COMPLEX E(*)
INTEGER N, INFO
REAL D(*)
SUBROUTINE CPTTRF_64(N, D, E, INFO)
COMPLEX E(*)
INTEGER*8 N, INFO
REAL D(*)
F95 INTERFACE
SUBROUTINE PTTRF([N], D, E, [INFO])
COMPLEX, DIMENSION(:) :: E
INTEGER :: N, INFO
REAL, DIMENSION(:) :: D
SUBROUTINE PTTRF_64([N], D, E, [INFO])
COMPLEX, DIMENSION(:) :: E
INTEGER(8) :: N, INFO
REAL, DIMENSION(:) :: D
C INTERFACE
#include <sunperf.h>
void cpttrf(int n, float *d, complex *e, int *info);
void cpttrf_64(long n, float *d, complex *e, long *info);
PURPOSEcpttrf computes the L*D*L' factorization of a complex Hermitian posi‐
tive definite tridiagonal matrix A. The factorization may also be
regarded as having the form A = U'*D*U.
ARGUMENTS
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) subdiagonal 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 bidi‐
agonal 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 illegal value
> 0: if INFO = k, the leading minor of order k is not posi‐
tive definite; if k < N, the factorization could not be com‐
pleted, while if k = N, the factorization was completed, but
D(N) = 0.
6 Mar 2009 cpttrf(3P)