PDF version (NAG web site
, 64-bit version, 64-bit version)
NAG Toolbox: nag_lapack_ztbcon (f07vu)
Purpose
nag_lapack_ztbcon (f07vu) estimates the condition number of a complex triangular band matrix.
Syntax
Description
nag_lapack_ztbcon (f07vu) estimates the condition number of a complex triangular band matrix
, in either the
-norm or the
-norm:
Note that .
Because the condition number is infinite if is singular, the function actually returns an estimate of the reciprocal of the condition number.
The function computes
or
exactly, and uses Higham's implementation of Hager's method (see
Higham (1988)) to estimate
or
.
References
Higham N J (1988) FORTRAN codes for estimating the one-norm of a real or complex matrix, with applications to condition estimation ACM Trans. Math. Software 14 381–396
Parameters
Compulsory Input Parameters
- 1:
– string (length ≥ 1)
-
Indicates whether
or
is estimated.
- or
- is estimated.
- is estimated.
Constraint:
, or .
- 2:
– string (length ≥ 1)
-
Specifies whether
is upper or lower triangular.
- is upper triangular.
- is lower triangular.
Constraint:
or .
- 3:
– string (length ≥ 1)
-
Indicates whether
is a nonunit or unit triangular matrix.
- is a nonunit triangular matrix.
- is a unit triangular matrix; the diagonal elements are not referenced and are assumed to be .
Constraint:
or .
- 4:
– int64int32nag_int scalar
-
, the number of superdiagonals of the matrix if , or the number of subdiagonals if .
Constraint:
.
- 5:
– complex array
-
The first dimension of the array
ab must be at least
.
The second dimension of the array
ab must be at least
.
The
by
triangular band matrix
.
The matrix is stored in rows
to
, more precisely,
- if , the elements of the upper triangle of within the band must be stored with element in ;
- if , the elements of the lower triangle of within the band must be stored with element in
If , the diagonal elements of are assumed to be , and are not referenced.
Optional Input Parameters
- 1:
– int64int32nag_int scalar
-
Default:
the second dimension of the array
ab.
, the order of the matrix .
Constraint:
.
Output Parameters
- 1:
– double scalar
-
An estimate of the reciprocal of the condition number of
.
rcond is set to zero if exact singularity is detected or the estimate underflows. If
rcond is less than
machine precision,
is singular to working precision.
- 2:
– int64int32nag_int scalar
unless the function detects an error (see
Error Indicators and Warnings).
Error Indicators and Warnings
-
If , argument had an illegal value. An explanatory message is output, and execution of the program is terminated.
Accuracy
The computed estimate
rcond is never less than the true value
, and in practice is nearly always less than
, although examples can be constructed where
rcond is much larger.
Further Comments
A call to
nag_lapack_ztbcon (f07vu) involves solving a number of systems of linear equations of the form
or
; the number is usually
and never more than
. Each solution involves approximately
real floating-point operations (assuming
) but takes considerably longer than a call to
nag_lapack_ztbtrs (f07vs) with one right-hand side, because extra care is taken to avoid overflow when
is approximately singular.
The real analogue of this function is
nag_lapack_dtbcon (f07vg).
Example
This example estimates the condition number in the
-norm of the matrix
, where
Here
is treated as a lower triangular band matrix with two subdiagonals. The true condition number in the
-norm is
.
Open in the MATLAB editor:
f07vu_example
function f07vu_example
fprintf('f07vu example results\n\n');
kd = int64(2);
ab = [-1.94 + 4.43i, 4.12 - 4.27i, 0.43 - 2.66i, 0.44 + 0.10i;
-3.39 + 3.44i, -1.84 + 5.53i, 1.74 - 0.04i, 0 + 0i;
1.62 + 3.68i, -2.77 - 1.93i, 0 + 0i, 0 + 0i];
b = [ -8.86 - 3.88i, -24.09 - 5.27i;
-15.57 - 23.41i, -57.97 + 8.14i;
-7.63 + 22.78i, 19.09 - 29.51i;
-14.74 - 2.40i, 19.17 + 21.33i];
norm_p = '1';
uplo = 'L';
diag = 'N';
[rcond, info] = f07vu( ...
norm_p, uplo, diag, kd, ab);
fprintf('Estimate of condition number = %9.2e\n', 1/rcond);
f07vu example results
Estimate of condition number = 3.35e+01
PDF version (NAG web site
, 64-bit version, 64-bit version)
© The Numerical Algorithms Group Ltd, Oxford, UK. 2009–2015