dtrrfs (l)  Linux Man Pages
dtrrfs: provides error bounds and backward error estimates for the solution to a system of linear equations with a triangular coefficient matrix
Command to display dtrrfs
manual in Linux: $ man l dtrrfs
NAME
DTRRFS  provides error bounds and backward error estimates for the solution to a system of linear equations with a triangular coefficient matrix
SYNOPSIS
 SUBROUTINE DTRRFS(

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

CHARACTER
DIAG, TRANS, UPLO

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

INTEGER
IWORK( * )

DOUBLE
PRECISION A( LDA, * ), B( LDB, * ), BERR( * ), FERR( * ),
WORK( * ), X( LDX, * )
PURPOSE
DTRRFS 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 DTRTRS or some other
means before entering this routine. DTRRFS does not do iterative
refinement because doing so cannot improve the backward error.
ARGUMENTS
 UPLO (input) CHARACTER*1

= aqUaq: A is upper triangular;
= aqLaq: A is lower triangular.
 TRANS (input) CHARACTER*1

Specifies the form of the system of equations:
= aqNaq: A * X = B (No transpose)
= aqTaq: A**T * X = B (Transpose)
= aqCaq: A**H * X = B (Conjugate transpose = Transpose)
 DIAG (input) CHARACTER*1

= aqNaq: A is nonunit triangular;
= aqUaq: 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) DOUBLE PRECISION array, dimension (LDA,N)

The triangular matrix A. If UPLO = aqUaq, 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 = aqLaq, 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 = aqUaq, 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) DOUBLE PRECISION 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) DOUBLE PRECISION 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) DOUBLE PRECISION array, dimension (3*N)

 IWORK (workspace) INTEGER array, dimension (N)

 INFO (output) INTEGER

= 0: successful exit
< 0: if INFO = i, the ith argument had an illegal value
Pages related to dtrrfs
 dtrrfs (3)
 dtrcon (l)  estimates the reciprocal of the condition number of a triangular matrix A, in either the 1norm or the infinitynorm
 dtrevc (l)  computes some or all of the right and/or left eigenvectors of a real upper quasitriangular matrix T
 dtrexc (l)  reorders the real Schur factorization of a real matrix A = Q*T*Q**T, so that the diagonal block of T with row index IFST is moved to row ILST
 dtrmm (l)  performs one of the matrixmatrix operations B := alpha*op( A )*B, or B := alpha*B*op( A ),
 dtrmv (l)  performs one of the matrixvector operations x := A*x, or x := Aaq*x,
 dtrsen (l)  reorders the real Schur factorization of a real matrix A = Q*T*Q**T, so that a selected cluster of eigenvalues appears in the leading diagonal blocks of the upper quasitriangular matrix T,
 dtrsm (l)  solves one of the matrix equations op( A )*X = alpha*B, or X*op( A ) = alpha*B,