# Crawfnos

Subspace algorithms for the Crawford number computation.

## Description

These are MATLAB implementations of the subspace algorithms in [1] for computing the Crawford number of a matrix $$A\in \mathbb C^{n\times n}$$, i.e., the distance of the numerical range $$\mathcal{F}(A)$$ from zero:

$\gamma(A) = \min\{\, |z| \colon z\in \mathcal{F}(A)\, \},\qquad \mathcal{F}(A) = \{\, v^{*} A v \colon v\in \mathbb{C}^{n}, \|v\|_2=1\,\}.$

To use crawfnos, the user can provide either a matrix $$A$$, or a linear operator op with member functions: op.matvec, op.rmatvec, op.matmat to compute $$A\times x$$, $$A^*\times x$$ and $$A\times V$$, for a vector $$x\in \mathbb C^{n}$$ and matrix $$V\in \mathbb C^{n\times k}$$, respectively.

All example data and routines used in the paper [1] are also included. For a detailed description of the usage of these routines, please check the readme files in the package.

## References

1. Subspace acceleration for the Crawford number and related eigenvalue optimization problems
with Daniel Kressner and Bart Vandereycken,
SIAM J. Matrix Anal. Appl., 2018. 39(2):961–982. (preprint, MATLAB code)

## Contact

Email: Ding.Lu@unige.ch
Homepage: http://www.unige.ch/~dlu