IBM Books

Engineering and Scientific Subroutine Library for AIX Version 3 Release 3: Guide and Reference

SPTS and DPTS--Positive Definite Symmetric Tridiagonal Matrix Solve

These subroutines solve a positive definite symmetric tridiagonal system of equations using the factorization of matrix A, stored in symmetric-tridiagonal storage mode, produced by SPTF and DPTF, respectively.

Table 115. Data Types

c, d, b, x Subroutine
Short-precision real SPTS
Long-precision real DPTS
Note:
The input to these solve subroutines must be the output from the factorization subroutines SPTF and DPTF, respectively.

Syntax

Fortran CALL SPTS | DPTS (n, c, d, bx)
C and C++ spts | dpts (n, c, d, bx);
PL/I CALL SPTS | DPTS (n, c, d, bx);

On Entry

n
is the order n of tridiagonal matrix A. Specified as: a fullword integer; n >= 0.

c
is the vector c, containing part of the factorization of matrix A from SPTF or DPTF, respectively, in an array, referred to as C. Specified as: a one-dimensional array of (at least) length n, containing numbers of the data type indicated in Table 115.

d
is the vector d, containing part of the factorization of matrix A from SPTF or DPTF, respectively, in an array, referred to as D. Specified as: a one-dimensional array of (at least) length n, containing numbers of the data type indicated in Table 115.

bx
is the vector b, containing the right-hand side of the system in the first n positions in an array, referred to as BX. Specified as: a one-dimensional array of (at least) length n, containing numbers of the data type indicated in Table 115.

On Return

bx
is the solution vector x of length n, containing the solution of the tridiagonal system in the first n positions in an array, referred to as BX. Returned as: a one-dimensional array of (at least) length n, containing numbers of the data type indicated in Table 115.

Note

For a description of how tridiagonal matrices are stored, see Positive Definite or Negative Definite Symmetric Matrix.

Function

The solution of positive definite symmetric tridiagonal system Ax = b is computed using the factorization produced by SPTF or DPTF, respectively. The factorization is based on Gaussian elimination. See reference [77].

Error Conditions

Computational Errors

None

Input-Argument Errors

n < 0

Example

This example finds the solution of tridiagonal system Ax = b, where matrix A is the same matrix factored in Example for SPTF and DPTF. b is:

                  (2.0, 4.0, 5.0, 2.0)

and x is:

                  (1.0, 1.0, 1.0, 1.0)

Call Statement and Input
           N   C   D   BX
           |   |   |   |
CALL DPTS( 4 , C , D , BX )
 
C        =  ( . , -1.0, -1.0, -1.0)
D        =  (-1.0, -1.0, -1.0, -1.0)
BX       =  (2.0, 4.0, 5.0, 2.0)

Output
BX       =  (1.0, 1.0, 1.0, 1.0)


[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]