flintlib / arb

Arb has been merged into FLINT -- use https://github.com/flintlib/flint/ instead
http://arblib.org/
GNU Lesser General Public License v2.1
457 stars 140 forks source link

Eigenvalues and eigenvectors #224

Closed fredrik-johansson closed 5 years ago

fredrik-johansson commented 6 years ago

For some reason this didn't have any issue yet. Of course the goal is to support nonsymmetric matrices with possibly repeated/clustered eigenvalues.

Siegfried Rump has work on this: http://www.ti3.tuhh.de/paper/rump/Ru99c.pdf (Also theorem 13.9 in "Verication methods: Rigorous results using oating-point arithmetic")

A more recent and possibly more efficient algorithm by Joris van der Hoeven and Bernard Mourrain: http://www.texmacs.org/joris/certeigen/certeigen.pdf

fredrik-johansson commented 5 years ago

Added initial code for computing general eigenvalues without rigorous error bounds. This is just a straight port of Timo Hartmann's code in mpmath (which becomes up to 150 times faster in Arb).

Worklist for this code:

Of course, the really interesting problem now is to implement one of the certification algorithms.

fredrik-johansson commented 5 years ago

Finally implemented Rump's certification algorithm and a top-level function for diagonalization. Still need some top-level function for clusters of overlapping eigenvalues.

fredrik-johansson commented 5 years ago

Closing this and creating separate issues for the important remaining tasks.