ZTRRFS(3)
provides error bounds and backward error estimates for the solution to a system of linear equations with a triangular coefficient matrix
SYNOPSIS
 SUBROUTINE ZTRRFS(

UPLO, TRANS, DIAG, N, NRHS, A, LDA, B, LDB, X,
LDX, FERR, BERR, WORK, RWORK, INFO )

CHARACTER
DIAG, TRANS, UPLO

INTEGER
INFO, LDA, LDB, LDX, N, NRHS

DOUBLE
PRECISION BERR( * ), FERR( * ), RWORK( * )

COMPLEX*16
A( LDA, * ), B( LDB, * ), WORK( * ),
X( LDX, * )
PURPOSE
ZTRRFS provides error bounds and backward error estimates for the
solution to a system of linear equations with a triangular
coefficient matrix.
The solution matrix X must be computed by ZTRTRS or some other
means before entering this routine. ZTRRFS 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 nonunit 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.
 A (input) COMPLEX*16 array, dimension (LDA,N)

The triangular matrix A. If UPLO = 'U', the leading NbyN
upper triangular part of the array A contains the upper
triangular matrix, and the strictly lower triangular part of
A is not referenced. If UPLO = 'L', the leading NbyN lower
triangular part of the array A contains the lower triangular
matrix, and the strictly upper triangular part of A is not
referenced. If DIAG = 'U', the diagonal elements of A are
also not referenced and are assumed to be 1.
 LDA (input) INTEGER

The leading dimension of the array A. LDA >= max(1,N).
 B (input) COMPLEX*16 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*16 array, dimension (LDX,NRHS)

The solution matrix X.
 LDX (input) INTEGER

The leading dimension of the array X. LDX >= max(1,N).
 FERR (output) DOUBLE PRECISION array, dimension (NRHS)

The estimated forward error bound for each solution vector
X(j) (the jth 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) DOUBLE PRECISION 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*16 array, dimension (2*N)

 RWORK (workspace) DOUBLE PRECISION array, dimension (N)

 INFO (output) INTEGER

= 0: successful exit
< 0: if INFO = i, the ith argument had an illegal value