PDF version (NAG web site
, 64-bit version, 64-bit version)
NAG Toolbox: nag_lapack_dtrcon (f07tg)
Purpose
nag_lapack_dtrcon (f07tg) estimates the condition number of a real triangular matrix.
Syntax
Description
nag_lapack_dtrcon (f07tg) estimates the condition number of a real triangular 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:
– double array
-
The first dimension of the array
a must be at least
.
The second dimension of the array
a must be at least
.
The
by
triangular matrix
.
- If , is upper triangular and the elements of the array below the diagonal are not referenced.
- If , is lower triangular and the elements of the array above the diagonal are not referenced.
- If , the diagonal elements of are assumed to be , and are not referenced.
Optional Input Parameters
- 1:
– int64int32nag_int scalar
-
Default:
the first dimension of the array
a and the second dimension of the array
a.
, 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 if the estimate underflows. If
rcond is less than
machine precision, then
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_dtrcon (f07tg) involves solving a number of systems of linear equations of the form
or
; the number is usually
or
and never more than
. Each solution involves approximately
floating-point operations but takes considerably longer than a call to
nag_lapack_dtrtrs (f07te) with one right-hand side, because extra care is taken to avoid overflow when
is approximately singular.
The complex analogue of this function is
nag_lapack_ztrcon (f07tu).
Example
This example estimates the condition number in the
-norm of the matrix
, where
The true condition number in the
-norm is
.
Open in the MATLAB editor:
f07tg_example
function f07tg_example
fprintf('f07tg example results\n\n');
a = [ 4.30, 0, 0, 0;
-3.96, -4.87, 0, 0;
0.40, 0.31, -8.02, 0;
-0.27, 0.07, -5.95, 0.12];
norm_p = '1';
uplo = 'L';
diag = 'N';
[rcond, info] = f07tg( ...
norm_p, uplo, diag, a);
fprintf('Estimate of condition number = %9.2e\n', 1/rcond);
f07tg example results
Estimate of condition number = 1.16e+02
PDF version (NAG web site
, 64-bit version, 64-bit version)
© The Numerical Algorithms Group Ltd, Oxford, UK. 2009–2015