-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
ENH:MAINT:linalg det in Cython and with nDarray support #18225
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
Conversation
The stats.TestDunnett failures are not related to the PR. |
Previously depending on custom Fortran code in _flinalg module
Any takers for reviewing? |
@ilayn I can review the interface and testing, but not the implementation. |
That's also very valuable anyways 😅 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can't comment on the implementation, but the tests look pretty comprehensive (unless you want to check out what happens when there are NaNs?). Just a few questions and suggestions.
Also, it might be good to document how this differs from np.linalg.det
. (Or maybe I'm just curious.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
With some final tweaks, LGTM from the perspective of documentation and tests.
@ev-br would you be willing to review implementation and merge?
Can |
Yes, all flinalg stuff would be possible to remove once this one and lu (PR) is in. I'm waiting this first then I'll submit LU. |
Should we click the button on this one? I'm hoping to make it to 1.11 release with this one and prospective LU PR to get rid of _flinalg stuff to reduce Fortranisms. |
@tylerjereddy already proposed the 1.11 release schedule so good pressure is on me about the LU stuff. Hence if you don't mind I'd like to click the button in about 20 hours 😅 |
FWIW I won't be able to look at it in the next 20 hours, and there's no need for me to block the progress here :-). |
@ilayn I was wondering if you'd have a chance to add ndarray support to |
Yes @mdhaber the idea is at some point to enhance linalg functions to batch array support. I don't see any blockers for that happening. It is just a matter of allocating time. The longer story is that None of these remarks are helping you right now obviously, so let me finish |
Reference issue
Related to #18208
What does this implement/fix?
/linalg/src/det.f
la.det(np.ones([4, 3, 5, 5]))
returns a(4, 3)
array.complex256 is downcastednp.linalg.det(np.diag([1.e38, 1e38]).astype(np.float32))
is still finite infloat
but givesnp.inf
)