Navigation

Operators and Keywords

Function List:

C++ API

: cest = condest (A)
: cest = condest (A, t)
: cest = condest (A, solvefun, t, p1, p2, …)
: cest = condest (Afcn, solvefun, t, p1, p2, …)
: [cest, v] = condest (…)

Estimate the 1-norm condition number of a square matrix A using t test vectors and a randomized 1-norm estimator.

The optional input t specifies the number of test vectors (default 5).

If the matrix is not explicit, e.g., when estimating the condition number of A given an LU factorization, condest uses the following functions:

  • - Afcn which must return
    • the dimension n of a, if flag is "dim"
    • true if a is a real operator, if flag is "real"
    • the result a * x, if flag is "notransp"
    • the result a' * x, if flag is "transp"
  • - solvefun which must return
    • the dimension n of a, if flag is "dim"
    • true if a is a real operator, if flag is "real"
    • the result a \ x, if flag is "notransp"
    • the result a' \ x, if flag is "transp"

The parameters p1, p2, … are arguments of Afcn (flag, x, p1, p2, …) and solvefcn (flag, x, p1, p2, …).

The principal output is the 1-norm condition number estimate cest.

The optional second output is an approximate null vector when cest is large; it satisfies the equation norm (A*v, 1) == norm (A, 1) * norm (v, 1) / est.

Algorithm Note: condest uses a randomized algorithm to approximate the 1-norms. Therefore, if consistent results are required, the "state" of the random generator should be fixed before invoking condest.

References:

See also: cond, norm, normest1, normest.

Package: octave