F01JBF computes an estimate of the absolute condition number of a matrix function f at a real n by n matrix A in the 1-norm. Numerical differentiation is used to evaluate the derivatives of f when they are required.
The absolute condition number of
f at
A,
condabsf,A is given by the norm of the Fréchet derivative of
f,
LA,E, which is defined by
The Fréchet derivative in the direction
E,
LX,E is linear in
E and can therefore be written as
where the
vec operator stacks the columns of a matrix into one vector, so that
KX is
n2×n2. F01JBF computes an estimate
γ such that
γ
≤
KX
1
, where
KX
1
∈
n-1
LX
1
,
n
LX
1
. The relative condition number can then be computed via
The algorithm used to find
γ is detailed in Section 3.4 of
Higham (2008).
The function
f is supplied via subroutine
F which evaluates
fzi at a number of points
zi.
Higham N J (2008)
Functions of Matrices: Theory and Computation SIAM, Philadelphia, PA, USA
If on entry
IFAIL=0 or
-1, explanatory error messages are output on the current error message unit (as defined by
X04AAF).
F01JBF uses the norm estimation routine
F04YDF to estimate a quantity
γ, where
γ
≤
KX
1
and
KX
1
∈
n-1
LX
1
,
n
LX
1
. For further details on the accuracy of norm estimation, see the documentation for
F04YDF.
Approximately
6n2 of real allocatable memory is required by the routine, in addition to the memory used by the underlying matrix function routine
F01ELF.
F01JBF returns the matrix function
fA. This is computed using
F01ELF. If only
fA is required, without an estimate of the condition number, then it is far more efficient to use
F01ELF directly.
The complex analogue of this routine is
F01KBF.
This example estimates the absolute and relative condition numbers of the matrix function
cos2A where