NAME

dgttrf - compute an LU factorization of a real tridiagonal matrix A using elimination with partial pivoting and row interchanges


SYNOPSIS

  SUBROUTINE DGTTRF( N, LOW, DIAG, UP1, UP2, IPIVOT, INFO)
  INTEGER N, INFO
  INTEGER IPIVOT(*)
  DOUBLE PRECISION LOW(*), DIAG(*), UP1(*), UP2(*)
  SUBROUTINE DGTTRF_64( N, LOW, DIAG, UP1, UP2, IPIVOT, INFO)
  INTEGER*8 N, INFO
  INTEGER*8 IPIVOT(*)
  DOUBLE PRECISION LOW(*), DIAG(*), UP1(*), UP2(*)

F95 INTERFACE

  SUBROUTINE GTTRF( [N], LOW, DIAG, UP1, UP2, IPIVOT, [INFO])
  INTEGER :: N, INFO
  INTEGER, DIMENSION(:) :: IPIVOT
  REAL(8), DIMENSION(:) :: LOW, DIAG, UP1, UP2
  SUBROUTINE GTTRF_64( [N], LOW, DIAG, UP1, UP2, IPIVOT, [INFO])
  INTEGER(8) :: N, INFO
  INTEGER(8), DIMENSION(:) :: IPIVOT
  REAL(8), DIMENSION(:) :: LOW, DIAG, UP1, UP2

C INTERFACE

#include <sunperf.h>

void dgttrf(int n, double *low, double *diag, double *up1, double *up2, int *ipivot, int *info);

void dgttrf_64(long n, double *low, double *diag, double *up1, double *up2, long *ipivot, long *info);


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.


ARGUMENTS