How much worse would performance be if we “upgraded” all results to complex 
matrices?

 — John

On Jan 28, 2014, at 8:38 PM, Jiahao Chen <jia...@mit.edu> wrote:

> The reason is primarily for performance and secondarily for numerical
> stability. eig() on a Matrix implements a polyalgorithm depending on
> the symmetries of the input matrix. Certain symmetries, e.g. real
> symmetric or Hermitian, can be solve significantly more efficiently
> than the general case, and so eig() attempts to detect these
> symmetries at runtime and if found, dispatch to different LAPACK
> routines that are able to take advantage of faster and more stable
> algorithms. Several other generic linear algebraic functions are
> written in this fashion, notably \.
> 
> (This was recently discussed in the context of issue #4006 with
> particular focus on sqrtm, whose code is somewhat easier to read than
> eigfact!. https://github.com/JuliaLang/julia/issues/4006)
> 
> Thanks,
> 
> Jiahao Chen, PhD
> Staff Research Scientist
> MIT Computer Science and Artificial Intelligence Laboratory

Reply via email to