dgbrfs.f (3) - Linux Manuals
NAME
dgbrfs.f -
SYNOPSIS
Functions/Subroutines
subroutine dgbrfs (TRANS, N, KL, KU, NRHS, AB, LDAB, AFB, LDAFB, IPIV, B, LDB, X, LDX, FERR, BERR, WORK, IWORK, INFO)
DGBRFS
Function/Subroutine Documentation
subroutine dgbrfs (characterTRANS, integerN, integerKL, integerKU, integerNRHS, double precision, dimension( ldab, * )AB, integerLDAB, double precision, dimension( ldafb, * )AFB, integerLDAFB, integer, dimension( * )IPIV, double precision, dimension( ldb, * )B, integerLDB, double precision, dimension( ldx, * )X, integerLDX, double precision, dimension( * )FERR, double precision, dimension( * )BERR, double precision, dimension( * )WORK, integer, dimension( * )IWORK, integerINFO)
DGBRFS
Purpose:
-
DGBRFS improves the computed solution to a system of linear equations when the coefficient matrix is banded, and provides error bounds and backward error estimates for the solution.
Parameters:
-
TRANS
TRANS is 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 = Transpose)
NN is INTEGER The order of the matrix A. N >= 0.
KLKL is INTEGER The number of subdiagonals within the band of A. KL >= 0.
KUKU is INTEGER The number of superdiagonals within the band of A. KU >= 0.
NRHSNRHS is INTEGER The number of right hand sides, i.e., the number of columns of the matrices B and X. NRHS >= 0.
ABAB is DOUBLE PRECISION array, dimension (LDAB,N) The original band matrix A, stored in rows 1 to KL+KU+1. The j-th column of A is stored in the j-th column of the array AB as follows: AB(ku+1+i-j,j) = A(i,j) for max(1,j-ku)<=i<=min(n,j+kl).
LDABLDAB is INTEGER The leading dimension of the array AB. LDAB >= KL+KU+1.
AFBAFB is DOUBLE PRECISION array, dimension (LDAFB,N) Details of the LU factorization of the band matrix A, as computed by DGBTRF. U is stored as an upper triangular band matrix with KL+KU superdiagonals in rows 1 to KL+KU+1, and the multipliers used during the factorization are stored in rows KL+KU+2 to 2*KL+KU+1.
LDAFBLDAFB is INTEGER The leading dimension of the array AFB. LDAFB >= 2*KL*KU+1.
IPIVIPIV is INTEGER array, dimension (N) The pivot indices from DGBTRF; for 1<=i<=N, row i of the matrix was interchanged with row IPIV(i).
BB is DOUBLE PRECISION array, dimension (LDB,NRHS) The right hand side matrix B.
LDBLDB is INTEGER The leading dimension of the array B. LDB >= max(1,N).
XX is DOUBLE PRECISION array, dimension (LDX,NRHS) On entry, the solution matrix X, as computed by DGBTRS. On exit, the improved solution matrix X.
LDXLDX is INTEGER The leading dimension of the array X. LDX >= max(1,N).
FERRFERR is DOUBLE PRECISION 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.
BERRBERR is 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).
WORKWORK is DOUBLE PRECISION array, dimension (3*N)
IWORKIWORK is INTEGER array, dimension (N)
INFOINFO is INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value
Internal Parameters:
-
ITMAX is the maximum number of steps of iterative refinement.
Author:
-
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Date:
- November 2011
Definition at line 204 of file dgbrfs.f.
Author
Generated automatically by Doxygen for LAPACK from the source code.