spttrs
spttrs - solve a tridiagonal system of the form A * X = B using the L*D*L' factorization of A computed by SPTTRF
SUBROUTINE SPTTRS( N, NRHS, DIAG, OFFD, B, LDB, INFO)
INTEGER N, NRHS, LDB, INFO
REAL DIAG(*), OFFD(*), B(LDB,*)
SUBROUTINE SPTTRS_64( N, NRHS, DIAG, OFFD, B, LDB, INFO)
INTEGER*8 N, NRHS, LDB, INFO
REAL DIAG(*), OFFD(*), B(LDB,*)
SUBROUTINE PTTRS( [N], [NRHS], DIAG, OFFD, B, [LDB], [INFO])
INTEGER :: N, NRHS, LDB, INFO
REAL, DIMENSION(:) :: DIAG, OFFD
REAL, DIMENSION(:,:) :: B
SUBROUTINE PTTRS_64( [N], [NRHS], DIAG, OFFD, B, [LDB], [INFO])
INTEGER(8) :: N, NRHS, LDB, INFO
REAL, DIMENSION(:) :: DIAG, OFFD
REAL, DIMENSION(:,:) :: B
#include <sunperf.h>
void spttrs(int n, int nrhs, float *diag, float *offd, float *b, int ldb, int *info);
void spttrs_64(long n, long nrhs, float *diag, float *offd, float *b, long ldb, long *info);
spttrs solves a tridiagonal system of the form
A * X = B
using the L*D*L' factorization of A computed by SPTTRF. D is a
diagonal matrix specified in the vector D, L is a unit bidiagonal
matrix whose subdiagonal is specified in the vector E, and X and B
are N by NRHS matrices.
-
* N (input)
-
The order of the tridiagonal matrix A. N >= 0.
-
* NRHS (input)
-
The number of right hand sides, i.e., the number of columns
of the matrix B. NRHS >= 0.
-
* DIAG (input)
-
The n diagonal elements of the diagonal matrix DIAG from the
L*DIAG*L' factorization of A.
-
* OFFD (input/output)
-
The (n-1) subdiagonal elements of the unit bidiagonal factor
L from the L*DIAG*L' factorization of A. OFFD can also be regarded
as the superdiagonal of the unit bidiagonal factor U from the
factorization A = U'*DIAG*U.
-
* B (input/output)
-
On entry, the right hand side vectors B for the system of
linear equations.
On exit, the solution vectors, X.
-
* LDB (input)
-
The leading dimension of the array B. LDB >= max(1,N).
-
* INFO (output)
-