Skip to content
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

ENH:Pythonize id_dist FORTRAN code #20558

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

ilayn
Copy link
Member

@ilayn ilayn commented Apr 23, 2024

Reference issue

Closes #18367
Closes #20452
Closes #20609

Part of #18566

What does this implement/fix?

Replaces the infamous id_dist code with its Python equivalent.

Additional information

Currently only Python version is being added. The performance difference is about 60x slower which means a Cython or Pythran version will be on par with the original version which is losing much of its magic at f2py bridge. Frankly, this code should never made its way into SciPy in its current form. The method is pretty much rock solid but the code is very haphazard.

There are also additional functions made public which are seed and rand. The new code is accepting Generators so not sure how to deprecate them yet. I'll save it until the translation is finished.

@ilayn ilayn added enhancement A new feature or improvement scipy.linalg Fortran Items related to the internal Fortran code base labels Apr 23, 2024
@ilayn ilayn added this to the 1.14.0 milestone Apr 23, 2024
@ilayn ilayn requested a review from larsoner as a code owner April 23, 2024 07:34
@ilayn ilayn removed the request for review from larsoner April 23, 2024 07:34
@github-actions github-actions bot added the Meson Items related to the introduction of Meson as the new build system for SciPy label Apr 23, 2024
@ilayn ilayn marked this pull request as draft April 23, 2024 07:34
@ilayn ilayn mentioned this pull request Apr 23, 2024
36 tasks
@ilayn
Copy link
Member Author

ilayn commented Apr 23, 2024

I'm currently traveling for work so apologies for the piece meal code written mostly on the planes. I'll finish it off quicker when I am at the sea level.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement A new feature or improvement Fortran Items related to the internal Fortran code base Meson Items related to the introduction of Meson as the new build system for SciPy scipy.linalg
Projects
None yet
1 participant