LAPACK 3.12.1
LAPACK: Linear Algebra PACKage
|
double precision function dla_gbrcond | ( | character | trans, |
integer | n, | ||
integer | kl, | ||
integer | ku, | ||
double precision, dimension( ldab, * ) | ab, | ||
integer | ldab, | ||
double precision, dimension( ldafb, * ) | afb, | ||
integer | ldafb, | ||
integer, dimension( * ) | ipiv, | ||
integer | cmode, | ||
double precision, dimension( * ) | c, | ||
integer | info, | ||
double precision, dimension( * ) | work, | ||
integer, dimension( * ) | iwork ) |
DLA_GBRCOND estimates the Skeel condition number for a general banded matrix.
Download DLA_GBRCOND + dependencies [TGZ] [ZIP] [TXT]
!> !> DLA_GBRCOND Estimates the Skeel condition number of op(A) * op2(C) !> where op2 is determined by CMODE as follows !> CMODE = 1 op2(C) = C !> CMODE = 0 op2(C) = I !> CMODE = -1 op2(C) = inv(C) !> The Skeel condition number cond(A) = norminf( |inv(A)||A| ) !> is computed by computing scaling factors R such that !> diag(R)*A*op2(C) is row equilibrated and computing the standard !> infinity-norm condition number. !>
[in] | 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) !> |
[in] | N | !> N is INTEGER !> The number of linear equations, i.e., the order of the !> matrix A. N >= 0. !> |
[in] | KL | !> KL is INTEGER !> The number of subdiagonals within the band of A. KL >= 0. !> |
[in] | KU | !> KU is INTEGER !> The number of superdiagonals within the band of A. KU >= 0. !> |
[in] | AB | !> AB is DOUBLE PRECISION array, dimension (LDAB,N) !> On entry, the matrix A in band storage, 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) !> |
[in] | LDAB | !> LDAB is INTEGER !> The leading dimension of the array AB. LDAB >= KL+KU+1. !> |
[in] | AFB | !> AFB 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. !> |
[in] | LDAFB | !> LDAFB is INTEGER !> The leading dimension of the array AFB. LDAFB >= 2*KL+KU+1. !> |
[in] | IPIV | !> IPIV is INTEGER array, dimension (N) !> The pivot indices from the factorization A = P*L*U !> as computed by DGBTRF; row i of the matrix was interchanged !> with row IPIV(i). !> |
[in] | CMODE | !> CMODE is INTEGER !> Determines op2(C) in the formula op(A) * op2(C) as follows: !> CMODE = 1 op2(C) = C !> CMODE = 0 op2(C) = I !> CMODE = -1 op2(C) = inv(C) !> |
[in] | C | !> C is DOUBLE PRECISION array, dimension (N) !> The vector C in the formula op(A) * op2(C). !> |
[out] | INFO | !> INFO is INTEGER !> = 0: Successful exit. !> i > 0: The ith argument is invalid. !> |
[out] | WORK | !> WORK is DOUBLE PRECISION array, dimension (5*N). !> Workspace. !> |
[out] | IWORK | !> IWORK is INTEGER array, dimension (N). !> Workspace. !> |
Definition at line 165 of file dla_gbrcond.f.