XLPack 6.1
Excel VBA Numerical Library Reference Manual
Loading...
Searching...
No Matches

◆ Zgbcon()

Sub Zgbcon ( Norm As  String,
N As  Long,
Kl As  Long,
Ku As  Long,
Ab() As  Complex,
IPiv() As  Long,
ANorm As  Double,
RCond As  Double,
Info As  Long 
)

Condition number of a complex band matrix

Purpose
This routine estimates the reciprocal of the condition number of a complex band matrix A, in either the 1-norm or the infinity-norm, using the LU factorization computed by Zgbtrf.

An estimate is obtained for norm(inv(A)), and the reciprocal of the condition number is computed as
RCond = 1 / (norm(A) * norm(inv(A))).
Parameters
[in]NormSpecifies whether the 1-norm condition number or the infinity-norm condition number is required.
= "1" or "O": 1-norm
= "I": Infinity-norm
[in]NOrder of the matrix A. (N >= 0) (If N = 0, returns RCond = 1)
[in]KlNumber of subdiagonals within the band of A (Kl >= 0)
[in]KuNumber of superdiagonals within the band of A (Ku >= 0)
[in]Ab()Array Ab(LAb1 - 1, LAb2 - 1) (LAb1 >= 2*Kl+Ku+1, LAb2 >= N)
Details of the LU factorization of the band matrix A, as computed by Zgbtrf. 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]IPiv()Array IPiv(LIPiv - 1) (LIPiv >= N)
Pivot indices from Dgbtrf; for 1 <= i <= n, row i of the matrix was interchanged with row IPiv(i-1).
[in]ANormNorm = "1" or "O": The 1-norm of the original matrix A (ANorm >= 0)
Norm = "I": The infinity-norm of the original matrix A (ANorm >= 0)
[out]RCondThe reciprocal of the condition number of the matrix A, computed as RCond = 1/(norm(A) * norm(inv(A))).
[out]Info= 0: Successful exit.
= -1: The argument Norm had an illegal value. (Norm <> "1", "O" nor "I")
= -2: The argument N had an illegal value. (N < 0)
= -3: The argument Kl had an illegal value. (Kl < 0)
= -4: The argument Ku had an illegal value. (Ku < 0)
= -5: The argument Ab() is invalid.
= -6: The argument IPiv() is invalid.
= -7: The argument ANorm had an illegal value. (ANorm < 0)
Reference
LAPACK
Example Program
See example of Zgbsv.