Provided by: liblapack-doc_3.3.1-1_all

#### NAME

```       LAPACK-3 - provides error bounds and backward error estimates for the solution to a system
of linear equations with a triangular packed coefficient matrix

```

#### SYNOPSIS

```       SUBROUTINE CTPRFS( UPLO, TRANS, DIAG, N, NRHS, AP, B,  LDB,  X,  LDX,  FERR,  BERR,  WORK,
RWORK, INFO )

CHARACTER      DIAG, TRANS, UPLO

INTEGER        INFO, LDB, LDX, N, NRHS

REAL           BERR( * ), FERR( * ), RWORK( * )

COMPLEX        AP( * ), B( LDB, * ), WORK( * ), X( LDX, * )

```

#### PURPOSE

```       CTPRFS  provides error bounds and backward error estimates for the solution to a system of
linear equations with a triangular packed coefficient matrix.
The solution matrix X must be computed by CTPTRS or some other
means before entering this routine.  CTPRFS does not do iterative
refinement because doing so cannot improve the backward error.

```

#### ARGUMENTS

```        UPLO    (input) CHARACTER*1
= 'U':  A is upper triangular;
= 'L':  A is lower triangular.

TRANS   (input) CHARACTER*1
Specifies the form of the system of equations:
= 'N':  A * X = B     (No transpose)
= 'T':  A**T * X = B  (Transpose)
= 'C':  A**H * X = B  (Conjugate transpose)

DIAG    (input) CHARACTER*1
= 'N':  A is non-unit triangular;
= 'U':  A is unit triangular.

N       (input) INTEGER
The order of the matrix A.  N >= 0.

NRHS    (input) INTEGER
The number of right hand sides, i.e., the number of columns
of the matrices B and X.  NRHS >= 0.

AP      (input) COMPLEX array, dimension (N*(N+1)/2)
The upper or lower triangular matrix A, packed columnwise in
a linear array.  The j-th column of A is stored in the array
AP as follows:
if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
if UPLO = 'L', AP(i + (j-1)*(2n-j)/2) = A(i,j) for j<=i<=n.
If DIAG = 'U', the diagonal elements of A are not referenced
and are assumed to be 1.

B       (input) COMPLEX array, dimension (LDB,NRHS)
The right hand side matrix B.

LDB     (input) INTEGER
The leading dimension of the array B.  LDB >= max(1,N).

X       (input) COMPLEX array, dimension (LDX,NRHS)
The solution matrix X.

LDX     (input) INTEGER
The leading dimension of the array X.  LDX >= max(1,N).

FERR    (output) REAL array, dimension (NRHS)
The estimated forward error bound for each solution vector
X(j) (the j-th column of the solution matrix X).
If XTRUE is the true solution corresponding to X(j), FERR(j)
is an estimated upper bound for the magnitude of the largest
element in (X(j) - XTRUE) divided by the magnitude of the
largest element in X(j).  The estimate is as reliable as
the estimate for RCOND, and is almost always a slight
overestimate of the true error.

BERR    (output) REAL array, dimension (NRHS)
The componentwise relative backward error of each solution
vector X(j) (i.e., the smallest relative change in
any element of A or B that makes X(j) an exact solution).

WORK    (workspace) COMPLEX array, dimension (2*N)

RWORK   (workspace) REAL array, dimension (N)

INFO    (output) INTEGER
= 0:  successful exit
< 0:  if INFO = -i, the i-th argument had an illegal value

LAPACK routine (version 3.2)               April 2011                            CTPRFS(3lapack)
```