# ?pttrf

Computes the factorization of a symmetric (Hermitian) positive-definite tridiagonal matrix.

## Syntax

FORTRAN 77:

call spttrf( n, d, e, info )

call dpttrf( n, d, e, info )

call cpttrf( n, d, e, info )

call zpttrf( n, d, e, info )

Fortran 95:

call pttrf( d, e [,info] )

## Description

This routine forms the factorization of a symmetric positive-definite or, for complex data, Hermitian positive-definite tridiagonal matrix A:

`A = L*D*L'`,

where D is diagonal and L is unit lower bidiagonal. The factorization may also be regarded as having the form `A = U'*D*U`, where D is unit upper bidiagonal.

## Input Parameters

n

  INTEGER. The order of the matrix A; n ≥ 0.

d

  REAL for spttrf, cpttrf

  DOUBLE PRECISION for dpttrf, zpttrf.

  Array, dimension (n). Contains the diagonal elements of A.

e

  REAL for spttrf

  DOUBLE PRECISION for dpttrf

  COMPLEX for cpttrf

  DOUBLE COMPLEX for zpttrf. Array, dimension (n -1). Contains the subdiagonal elements of A.

## Output Parameters

d

  Overwritten by the n diagonal elements of the diagonal matrix D from the `L*D*L'` factorization of A.

e

  Overwritten by the `(n - 1)` off-diagonal elements of the unit bidiagonal factor L or U from the factorization of A.

info

  INTEGER. If `info = 0`, the execution is successful.

  If `info = -i`, the i-th parameter had an illegal value.

  If `info = i`, the leading minor of order i (and therefore the matrix A itself) is not positive-definite; if `i < n`, the factorization could not be completed, while if `i = n`, the factorization was completed, but `d(n) ≤ 0`.

## Fortran 95 Interface Notes

Routines in Fortran 95 interface have fewer arguments in the calling sequence than their Fortran 77 counterparts. For general conventions applied to skip redundant or reconstructible arguments, see Fortran 95 Interface Conventions.

Specific details for the routine pttrf interface are as follows:

d

  Holds the vector of length (n).

e

  Holds the vector of length (n-1).

Parent topic: Routines for Matrix Factorization