-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
patches to matrix log #33245
patches to matrix log #33245
Conversation
Avoid integer overflow if `s > 63`. Correct logic for `s == 0`. Only use fancy divided difference formulae if eigenvalues are close - avoids dangerous roundoff error if they are in opposite sectors.
@RalphAS Thanks for fixing this. Would you be able to add some tests that would have failed before the changes? |
@andreasnoack In case it's not clear, this patch cleans up some loose ends in PR #32327 (and is a PR to the associated branch); in particular it fixes a regression observed by @stevengj there. I can try to generate some manageable tests for the other fixes - I have a project including a larger test suite (with less manageable matrices) that I used for this problem, and I intend to put that on Github soon. |
LGTM. |
* bug fixes in matrix log * patches to matrix log (#33245) * patches to matrix log Avoid integer overflow if `s > 63`. Correct logic for `s == 0`. Only use fancy divided difference formulae if eigenvalues are close - avoids dangerous roundoff error if they are in opposite sectors. * add tests
* bug fixes in matrix log * patches to matrix log (#33245) * patches to matrix log Avoid integer overflow if `s > 63`. Correct logic for `s == 0`. Only use fancy divided difference formulae if eigenvalues are close - avoids dangerous roundoff error if they are in opposite sectors. * add tests (cherry picked from commit 318affa)
* bug fixes in matrix log * patches to matrix log (#33245) * patches to matrix log Avoid integer overflow if `s > 63`. Correct logic for `s == 0`. Only use fancy divided difference formulae if eigenvalues are close - avoids dangerous roundoff error if they are in opposite sectors. * add tests (cherry picked from commit 318affa)
* bug fixes in matrix log * patches to matrix log (#33245) * patches to matrix log Avoid integer overflow if `s > 63`. Correct logic for `s == 0`. Only use fancy divided difference formulae if eigenvalues are close - avoids dangerous roundoff error if they are in opposite sectors. * add tests (cherry picked from commit 318affa)
* bug fixes in matrix log * patches to matrix log (#33245) * patches to matrix log Avoid integer overflow if `s > 63`. Correct logic for `s == 0`. Only use fancy divided difference formulae if eigenvalues are close - avoids dangerous roundoff error if they are in opposite sectors. * add tests (cherry picked from commit 318affa)
Avoid integer overflow if
s > 63
.Correct logic for
s == 0
.Only use fancy divided difference formulae if eigenvalues are close - avoids dangerous roundoff error if they are in opposite sectors.