sarah-ek / faer-rs

Linear algebra foundation for the Rust programming language
https://faer-rs.github.io
MIT License
1.82k stars 61 forks source link

panic in selfajoint eigenvalue decomposition #141

Closed aseyboldt closed 1 month ago

aseyboldt commented 3 months ago

Describe the bug I get very sporadic panics when I compute selfadjoint eigenvalue decompositions from here: https://github.com/sarah-ek/faer-rs/blob/main/src/linalg/evd/tridiag_real_evd.rs#L349

To Reproduce I have trouble reproducing this, I think it might not always happen with the same matrix, and only very rarely. Hopefully I can add a matrix that showed this behavior when it happens again.

Expected behavior no panic

Desktop (please complete the following information): arch linux

sarah-ek commented 2 months ago

that sounds strange since the algorithm is supposed to be deterministic (though i might have messed up somewhere). let me know if you manage to reproduce it

sarah-ek commented 1 month ago

i wrote a couple fixes for the svd/eigendecomp to make the root finder more robust. i'll publish a patch release after i finish a couple more stuff can you check if the code is still panicking if you use the main branch?

aseyboldt commented 1 month ago

Seems like this fixed the issue, thank you. (And sorry for the bad issue, I'll do better if there is a next time ;-) )

Am Do., 22. Aug. 2024 um 02:25 Uhr schrieb sarah @.***>:

i wrote a couple fixes for the svd/eigendecomp to make the root finder more robust. i'll publish a patch release after i finish a couple more stuff can you check if the code is still panicking if you use the main branch?

— Reply to this email directly, view it on GitHub https://github.com/sarah-ek/faer-rs/issues/141#issuecomment-2303396313, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAOLSHLXF4ZTXLPOEDU7NC3ZSU4YDAVCNFSM6AAAAABKQJ2VLGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMBTGM4TMMZRGM . You are receiving this because you authored the thread.Message ID: @.***>

sarah-ek commented 1 month ago

fixed in 0.19.2