# gttrf - Man Page

gttrf: triangular factor

## Synopsis

### Functions

subroutine **cgttrf** (n, dl, d, du, du2, ipiv, info)**CGTTRF**

subroutine **dgttrf** (n, dl, d, du, du2, ipiv, info)**DGTTRF**

subroutine **sgttrf** (n, dl, d, du, du2, ipiv, info)**SGTTRF**

subroutine **zgttrf** (n, dl, d, du, du2, ipiv, info)**ZGTTRF**

## Detailed Description

## Function Documentation

### subroutine cgttrf (integer n, complex, dimension( * ) dl, complex, dimension( * ) d, complex, dimension( * ) du, complex, dimension( * ) du2, integer, dimension( * ) ipiv, integer info)

**CGTTRF**

**Purpose:**

CGTTRF 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 bidiagonal matrices and U is upper triangular with nonzeros in only the main diagonal and first two superdiagonals.

**Parameters***N*N is INTEGER The order of the matrix A.

*DL*DL is COMPLEX array, dimension (N-1) On entry, DL must contain the (n-1) sub-diagonal elements of A. On exit, DL is overwritten by the (n-1) multipliers that define the matrix L from the LU factorization of A.

*D*D is COMPLEX 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 factorization of A.

*DU*DU is COMPLEX array, dimension (N-1) On entry, DU must contain the (n-1) super-diagonal elements of A. On exit, DU is overwritten by the (n-1) elements of the first super-diagonal of U.

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

*IPIV*IPIV is 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 indicates a row interchange was not required.

*INFO*INFO is INTEGER = 0: successful exit < 0: if INFO = -k, the k-th argument had an illegal value > 0: if INFO = k, U(k,k) is exactly zero. The factorization 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.

**Author**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **123** of file **cgttrf.f**.

### subroutine dgttrf (integer n, double precision, dimension( * ) dl, double precision, dimension( * ) d, double precision, dimension( * ) du, double precision, dimension( * ) du2, integer, dimension( * ) ipiv, integer info)

**DGTTRF**

**Purpose:**

DGTTRF computes an LU factorization of a real 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 bidiagonal matrices and U is upper triangular with nonzeros in only the main diagonal and first two superdiagonals.

**Parameters***N*N is INTEGER The order of the matrix A.

*DL*DL is DOUBLE PRECISION array, dimension (N-1) On entry, DL must contain the (n-1) sub-diagonal elements of A. On exit, DL is overwritten by the (n-1) multipliers that define the matrix L from the LU factorization of A.

*D*D is DOUBLE PRECISION 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 factorization of A.

*DU*DU is DOUBLE PRECISION array, dimension (N-1) On entry, DU must contain the (n-1) super-diagonal elements of A. On exit, DU is overwritten by the (n-1) elements of the first super-diagonal of U.

*DU2*DU2 is DOUBLE PRECISION array, dimension (N-2) On exit, DU2 is overwritten by the (n-2) elements of the second super-diagonal of U.

*IPIV*IPIV is 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 indicates a row interchange was not required.

*INFO*INFO is INTEGER = 0: successful exit < 0: if INFO = -k, the k-th argument had an illegal value > 0: if INFO = k, U(k,k) is exactly zero. The factorization 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.

**Author**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **123** of file **dgttrf.f**.

### subroutine sgttrf (integer n, real, dimension( * ) dl, real, dimension( * ) d, real, dimension( * ) du, real, dimension( * ) du2, integer, dimension( * ) ipiv, integer info)

**SGTTRF**

**Purpose:**

SGTTRF computes an LU factorization of a real 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 bidiagonal matrices and U is upper triangular with nonzeros in only the main diagonal and first two superdiagonals.

**Parameters***N*N is INTEGER The order of the matrix A.

*DL*DL is REAL array, dimension (N-1) On entry, DL must contain the (n-1) sub-diagonal elements of A. On exit, DL is overwritten by the (n-1) multipliers that define the matrix L from the LU factorization of A.

*D*D is REAL 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 factorization of A.

*DU*DU is REAL array, dimension (N-1) On entry, DU must contain the (n-1) super-diagonal elements of A. On exit, DU is overwritten by the (n-1) elements of the first super-diagonal of U.

*DU2*DU2 is REAL array, dimension (N-2) On exit, DU2 is overwritten by the (n-2) elements of the second super-diagonal of U.

*IPIV*IPIV is 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 indicates a row interchange was not required.

*INFO*INFO is INTEGER = 0: successful exit < 0: if INFO = -k, the k-th argument had an illegal value > 0: if INFO = k, U(k,k) is exactly zero. The factorization 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.

**Author**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **123** of file **sgttrf.f**.

### subroutine zgttrf (integer n, complex*16, dimension( * ) dl, complex*16, dimension( * ) d, complex*16, dimension( * ) du, complex*16, dimension( * ) du2, integer, dimension( * ) ipiv, integer info)

**ZGTTRF**

**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 bidiagonal matrices and U is upper triangular with nonzeros in only the main diagonal and first two superdiagonals.

**Parameters***N*N is INTEGER The order of the matrix A.

*DL*DL is COMPLEX*16 array, dimension (N-1) On entry, DL must contain the (n-1) sub-diagonal elements of A. On exit, DL is overwritten by the (n-1) multipliers that define the matrix L from the LU factorization of A.

*D*D is 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 factorization of A.

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

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

*IPIV**INFO***Author**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **123** of file **zgttrf.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.