Jutho / KrylovKit.jl

Krylov methods for linear problems, eigenvalues, singular values and matrix functions
Other
284 stars 37 forks source link

Eigsolve AD #56

Closed lkdvos closed 4 months ago

lkdvos commented 2 years ago

Almost working version of the eigsolve rrules. Seems to be failing only for real matrices, where comparison with rrule for eigen does not give equal results. Specifically, it seems that the current rrule has the exact same real part, but different imaginary part.

Jutho commented 2 years ago

Cool; I'll try to review as soon as possible.

codecov[bot] commented 2 years ago

Codecov Report

Merging #56 (56f6f47) into master (66a9439) will decrease coverage by 9.20%. The diff coverage is 0.00%.

:exclamation: Current head 56f6f47 differs from pull request most recent head 017cc91. Consider uploading reports for the commit 017cc91 to get more accurate results

@@            Coverage Diff             @@
##           master      #56      +/-   ##
==========================================
- Coverage   82.48%   73.27%   -9.21%     
==========================================
  Files          27       28       +1     
  Lines        2752     2451     -301     
==========================================
- Hits         2270     1796     -474     
- Misses        482      655     +173     
Impacted Files Coverage Δ
src/KrylovKit.jl 65.11% <ø> (-7.30%) :arrow_down:
src/adrules/eigsolve.jl 0.00% <0.00%> (ø)
src/factorizations/krylov.jl 0.00% <0.00%> (-83.34%) :arrow_down:
src/adrules/linsolve.jl 0.00% <0.00%> (-52.12%) :arrow_down:
src/dense/packedhessenberg.jl 53.33% <0.00%> (-30.88%) :arrow_down:
src/eigsolve/geneigsolve.jl 46.66% <0.00%> (-16.30%) :arrow_down:
src/factorizations/arnoldi.jl 88.04% <0.00%> (-10.09%) :arrow_down:
src/factorizations/gkl.jl 84.70% <0.00%> (-8.86%) :arrow_down:
src/recursivevec.jl 36.95% <0.00%> (-7.31%) :arrow_down:
... and 17 more

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 66a9439...017cc91. Read the comment docs.

maartenvd commented 2 years ago

Seems to be failing only for real matrices, where comparison with rrule for eigen does not give equal results.

is the problem the sorting, or is there something mathematically wrong?

lkdvos commented 2 years ago

Seems to be failing only for real matrices, where comparison with rrule for eigen does not give equal results.

is the problem the sorting, or is there something mathematically wrong?

I am just guessing, but I don't see what else could be different for real matrices I'll look into it tomorrow

Jutho commented 4 months ago

Closed in favor of #85