flintlib / flint

FLINT (Fast Library for Number Theory)
http://www.flintlib.org
GNU Lesser General Public License v3.0
401 stars 235 forks source link

Override gr_mat_eigenvalues #1992

Open fredrik-johansson opened 1 month ago

fredrik-johansson commented 1 month ago

Currently gr_mat_diagonalization can be overridden by rings but gr_mat_eigenvalues just has a default algorithm.

fredrik-johansson commented 1 month ago

Two related problem which I'm too lazy to create a new issue for right now: gr_mat_diagonalization currently computes the R matrix by linear solving, then inverts R to obtain L. It is probably better (in terms of numerical stability or intermediate expression swell, where applicable) to do an independent linear solve for L. Also, the calculations can be simplified when all eigenvalues have multiplicity 1.