Previous: zgtsvx Up: ../lapack-z.html Next: zgttrs

# zgttrf

```
NAME
ZGTTRF - compute an LU factorization of a complex tridiago-
nal matrix A using elimination with partial pivoting and row
interchanges

SYNOPSIS
SUBROUTINE ZGTTRF( N, DL, D, DU, DU2, IPIV, INFO )

INTEGER        INFO, N

INTEGER        IPIV( * )

COMPLEX*16     D( * ), DL( * ), DU( * ), DU2( * )

PURPOSE
ZGTTRF computes an LU factorization of a complex tridiagonal
matrix A using elimination with partial pivoting and row
interchanges.

The factorization has the form
A = L * U
where L is a product of permutation and unit lower bidiago-
nal matrices and U is upper triangular with nonzeros in only
the main diagonal and first two superdiagonals.

ARGUMENTS
N       (input) INTEGER
The order of the matrix A.

DL      (input/output) COMPLEX*16 array, dimension (N-1)
On entry, DL must contain the (n-1) subdiagonal ele-
ments of A.  On exit, DL is overwritten by the (n-1)
multipliers that define the matrix L from the LU
factorization of A.

D       (input/output) COMPLEX*16 array, dimension (N)
On entry, D must contain the diagonal elements of A.
On exit, D is overwritten by the n diagonal elements
of the upper triangular matrix U from the LU factor-
ization of A.

DU      (input/output) COMPLEX*16 array, dimension (N-1)
On entry, DU must contain the (n-1) superdiagonal
elements of A.  On exit, DU is overwritten by the
(n-1) elements of the first superdiagonal of U.

DU2     (output) COMPLEX*16 array, dimension (N-2)
On exit, DU2 is overwritten by the (n-2) elements of
the second superdiagonal of U.

IPIV    (output) INTEGER array, dimension (N)

The pivot indices; for 1 <= i <= n, row i of the
matrix was interchanged with row IPIV(i).  IPIV(i)
will always be either i or i+1; IPIV(i) = i indi-
cates a row interchange was not required.

INFO    (output) INTEGER
= 0:  successful exit
< 0:  if INFO = -i, the i-th argument had an illegal
value
> 0:  if INFO = i, U(i,i) is exactly zero. The fac-
torization has been completed, but the factor U is
exactly singular, and division by zero will occur if
it is used to solve a system of equations.
```