CONDITION\
Matrix Condition Number Estimation {#condition-matrix-condition-number-estimation align=”center”}
==================================
CONDITION is a C++ library which implements methods for computing or
estimating the condition number of a matrix.
Let ||*|| be a matrix norm, let A be an invertible matrix, and inv(A)
the inverse of A. The condition number of A with respect to the norm
||*|| is defined to be
kappa(A) = ||A|| * ||inv(A)||
If A is not invertible, the condition number is taken to be infinity.
Facts about the condition number include:
- 1 <= kappa(A) for all matrices A.
- 1 = kappa(I), where I is the identity matrix.
- for the L2 matrix norm, the condition number of any orthogonal
matrix is 1.
- for the L2 matrix norm, the condition number is the ratio of the
maximum to minimum singular values;
The CONDITION library needs access to a copy of the R8LIB library.
Licensing: {#licensing align=”center”}
The computer code and data files described and made available on this
web page are distributed under the GNU LGPL
license.
Languages: {#languages align=”center”}
CONDITION is available in a C
version and a C++
version and a FORTRAN77
version and a FORTRAN90
version and a MATLAB
version and a Python
version.
LINPACK_D, a C++ library
which solves linear systems using double precision real arithmetic;
NAPACK, a FORTRAN77 library which
includes many routines for applied numerical linear algebra tasks,
including the matrix condition number, by William Hager.
R8LIB, a C++ library which contains
many utility routines using double precision real (R8) arithmetic.
TEST_MAT, a C++ library which
defines test matrices for which some of the determinant, eigenvalues,
inverse, null vectors, P*L*U factorization or linear system solution
are already known.
Reference: {#reference align=”center”}
- Alan Cline, Cleve Moler, Pete Stewart, James Wilkinson,\
An estimate for the Condition Number of a Matrix,\
Technical Report TM-310,\
Argonne National Laboratory, 1977.
- Alan Cline, Russell Rew,\
A set of counterexamples to three condition number estimators,\
SIAM Journal on Scientific and Statistical Computing,\
Volume 4, Number 4, December 1983, pages 602-611.
- William Hager,\
Condition Estimates,\
SIAM Journal on Scientific and Statistical Computing,\
Volume 5, Number 2, June 1984, pages 311-316.
- Nicholas Higham,\
A survey of condition number estimation for triangular matrices,\
SIAM Review,\
Volume 9, Number 4, December 1987, pages 575-596.
- Diane OLeary,\
Estimating matrix condition numbers,\
SIAM Journal on Scientific and Statistical Computing,\
Volume 1, Number 2, June 1980, pages 205-209.
- Pete Stewart,\
Efficient Generation of Random Orthogonal Matrices With an
Application to Condition Estimators,\
SIAM Journal on Numerical Analysis,\
Volume 17, Number 3, June 1980, pages 403-409.
Source Code: {#source-code align=”center”}
Examples and Tests: {#examples-and-tests align=”center”}
List of Routines: {#list-of-routines align=”center”}
- COMBIN returns the COMBIN matrix.
- COMBIN_INVERSE returns the inverse of the COMBIN matrix.
- CONDITION_HAGER estimates the L1 condition number of a matrix.
- CONDITION_LINPACK estimates the L1 condition number.
- CONDITION_SAMPLE1 estimates the L1 condition number of a
matrix.
- CONEX1 returns the CONEX1 matrix.
- CONEX1_INVERSE returns the inverse of the CONEX1 matrix.
- CONEX2 returns the CONEX2 matrix.
- CONEX2_INVERSE returns the inverse of the CONEX2 matrix.
- CONEX3 returns the CONEX3 matrix.
- CONEX3_INVERSE returns the inverse of the CONEX3 matrix.
- CONEX4 returns the CONEX4 matrix.
- CONEX4_INVERSE returns the inverse of the CONEX4 matrix.
- KAHAN returns the KAHAN matrix.
- KAHAN_INVERSE returns the inverse of the KAHAN matrix.
- R8GE_FA performs a LINPACK-style PLU factorization of a R8GE
matrix.
- R8GE_INVERSE computes the inverse of a R8GE matrix factored by
R8GE_FA.
- R8GE_SL solves a R8GE system factored by R8GE_FA.
You can go up one level to the C++ source codes.
Last revised on 04 October 2012.