-
-
Notifications
You must be signed in to change notification settings - Fork 5.2k
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
DOC: sparse.linalg: Fixed incorrect comments when the initial guess is non-zero #14837
Conversation
The fixes in this PR are correct. One could extend it to Edit: lsmr returns |
Thanks for your comments and confirmation!
No, for LSQR, the variable |
Dear Nico @nschloe , |
The problem here is that in LSMR, ||x|| is not updated incrementally (as suggested in the original paper) but computed explicitly. All software packages do that, probably because the paper omits the details on the incremental update. |
Yes, I agree with you, |
@nschloe you mean almost all software use |
Indeed it is. I've opened a question on so about this (https://scicomp.stackexchange.com/questions/40361/lsmr-update-x-cheaply), maybe something will come out there. |
Okay, because in parallel, I often use PETSc and HYPRE to solve PDEs, but in PETSc, LSMR is not implemented. Could you list which software does this? I'll try contacting its author. |
Everything under Downloads: https://web.stanford.edu/group/SOL/software/lsmr/ |
I took a look at these source codes, It seems to come from the same version (it's just written in different programming languages). I'll try to contact the original author D. Fong and M. Saunders by email. |
I already wrote to Saunders. |
Has he replied to you now? or what does he suggest? |
No, not yet. |
Okay, wait and see again. I'll also send emails to D. Fang, M. Saunders and D. Orban respectively later. |
Maybe @dpo can help? |
Thanks Melissa, could you @dpo help us with #14837 (comment)? |
The changes in the PR are correct and should be merged. The other issue can be tracked separately. |
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.
Could one of you open a new follow-up issue? |
I'll handle it right now. |
commit ee43c5ef455b30e8b87b78da723c506e3af9a768 Merge: 5bfbe973a c5aed2932 Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Tue Dec 7 21:13:28 2021 +0100 Merge pull request #15173 from rgommers/update-gitignore MAINT: update .gitignore for two new generated files commit c5aed2932ba8464be1c0a348c846b8cb67beaed8 Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Tue Dec 7 21:09:33 2021 +0100 MAINT: update .gitignore for two new generated files [ci skip] commit 5bfbe973ac849db94eb1bb42f4d51697afeed46e Merge: 1c98aa98a 31c219a5b Author: Pamphile Roy <roy.pamphile@gmail.com> Date: Tue Dec 7 13:50:01 2021 +0100 Merge pull request #14718 from mdhaber/bootstrap_doc commit 1c98aa98a55e2aaf2c15c16b47ee5e258bfcd170 Merge: f6a8729ac d5130e762 Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Mon Dec 6 22:08:16 2021 -0700 Merge pull request #15168 from tylerjereddy/treddy_rel_190 REL: set version to 1.9.0.dev0 commit f6a8729ac7924828d0ad348f93d418163f456133 Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Mon Dec 6 22:04:18 2021 -0700 DOC: 1.8.0 relnotes update (#15161) * prepare the final release notes for SciPy `1.8.0` as branching is now imminent Co-authored-by: Ralf Gommers <ralf.gommers@gmail.com> Co-authored-by: Matt Haberland <mhaberla@calpoly.edu> commit d5130e76229bd6b195ab84281e2ef8e5f4ab5d37 Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Mon Dec 6 20:54:22 2021 -0700 REL: set version to 1.9.0.dev0 commit d27d186fffa295b2251911ceaffab9f0ebfdbc4a Merge: 2fc2458c2 b4c87b74b Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Mon Dec 6 19:55:06 2021 +0100 Merge pull request #14837 from zhaog6/lsqr_r2norm DOC: sparse.linalg: Fixed incorrect comments when the initial guess is non-zero commit 2fc2458c2f46dd59d9900d500a8dddd5066a4d71 Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Mon Dec 6 11:50:15 2021 -0700 ENH: rebased version of gh-14279 (#15157) Addresses issue gh-2063 (currently closed, but unresolved). It adds the callback function to the COBYLA optimizer in `minimize`. I fully realize that in the COBYLA algorithm, each iteration is just a single function evaluation, and that the user is free to do whatever they want to in terms of callback behavior in that function. However, currently the implementation of how the callback argument is handled is just inconsistent between COBYLA and the other methods. Furthermore, a user may want to separate their objective function from the callback. This PR simply brings the COBYLA method in line with all the other methods. Co-authored-by: Daniël de Vries <danieldevries6@gmail.com> commit 2461f2b9b6e7a4d424737b8bf87e4c238cbbc8ae Author: guiweber <guillaume.web@gmail.com> Date: Mon Dec 6 13:18:18 2021 -0500 BUG: Fix group delay singularity check (#13419) * BUG: Fix group delay singularity check Fixes #9310 * Removed irrelevant test * Added near singular warning and reinstated test * Fixed wrong indentation * Fixed upstream merge issue with filter_design.py * Fixed line length * Removed 0 verification in test since we're not zeroing all results anymore * Added warning stacklevel=2 commit c76bf898291bb82684aaa1e5b9988be884b1b4fe Author: Matt Haberland <mhaberla@calpoly.edu> Date: Mon Dec 6 08:04:50 2021 -0800 ENH: stats: add general permutation hypothesis test (#13899) This adds permutation_test, a function for performing a permutation test for user-provided statistics. commit e99be0020976ff3739111ca7880f7e82dd523c76 Author: Nick Papior <nickpapior@gmail.com> Date: Mon Dec 6 16:25:46 2021 +0100 MAINT: streamlined kwargs for minimizer in dual_annealing (#13392) This fixes so that all global optimization strategies uses `minimizer_kwargs` as the arguments for the minimizer. This makes it compatible with `shgo` and `basin_hopping`. The `dual_annealing` function previously only had `local_search_options` as the kwarg, which is not compatible with the other ones. Co-authored-by: Andrew Nelson <andyfaff@gmail.com> commit c9dc8b834bdae711fdf53f5244fad518903d7872 Author: Warren Weckesser <warren.weckesser@gmail.com> Date: Sun Dec 5 19:24:47 2021 -0500 ENH: stats: Updates to `variation`. (#11754) ENH: stats: Updates to variation. * Moved variation to its own file. * Added the parameter `keepdims` to `stats.variation`. * Updated the examples in the docstring. * Added validation of the `axis` argument, so an invalid value raises `np.AxisError`. * For `nan_policy="omit"`, use `np.nanstd` and `np.nanmean` instead of converting the input to a masked array. This prevents the surprising return of a masked array from the function. * Ensure that no spurious numpy warnings are generated for cases that we want to handle cleanly. * Handle the case a.size == 0 as a special case to avoid spurious warnings. * Moved `variation` unit tests to their own class, in their own file, replaced some expected values for existing tests with the exact value, and added tests for the new features. * Added some utility functions to scipy/_lib/_util.py commit 87cd923d090cb4af6585acd5df4069f54b897a12 Merge: 393a05ee9 ed579241d Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Sun Dec 5 16:12:14 2021 -0700 Merge pull request #15159 from tirthasheshpatel/fix-tut-header DOC: stats: fix a header in `stats.sampling` tutorial commit ed579241d35793e42e5bc76fa19efd84abe3e3bd Author: Tirth Patel <tirthasheshpatel@gmail.com> Date: Sun Dec 5 17:42:12 2021 +0530 DOC: stats: fix a header in `stats.sampling` tutorial commit 393a05ee927883ad6316b7092c851afea8f16816 Merge: 9256b566f b8f643980 Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Sat Dec 4 21:20:13 2021 -0700 Merge pull request #14559 from charlotte12l/pythran_tests WIP: TST: add tests for Pythran somersd commit 9256b566f875f4646fe33dbc91d0ada2f4dab778 Merge: 41e538fa0 93a22fd05 Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Sat Dec 4 21:07:24 2021 -0700 Merge pull request #14342 from czgdp1807/savgol_even ENH: make `savgol_coeffs`, `savgol_filter` work for even window length commit 41e538fa04226ff4d22680341563cf792e236361 Merge: a25ea1bf5 88066d861 Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Sat Dec 4 16:21:14 2021 -0700 Merge pull request #14882 from andyfaff/tnc_gh14879 BUG: Convert TNC C module to cython commit 93a22fd053c13071646b429cd271e92ee0509738 Author: Gagandeep Singh <gdp.1807@gmail.com> Date: Sat Dec 4 14:59:10 2021 +0530 STY:Applied linting corrections commit a25ea1bf5d069f2dd2f9f78393d4c97377f16599 Merge: 9cbbbba94 a1b761ecd Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Fri Dec 3 17:45:41 2021 -0700 Merge pull request #15142 from tirthasheshpatel/srou ENH: stats.sampling: add SROU method commit 9cbbbba944340322aff9d780053734b32d57da3a Author: endolith <endolith@gmail.com> Date: Fri Dec 3 07:58:52 2021 -0500 DOC: Improve Chirp Z-transform documentation (#15147) * Describe default w * Default linspace endpoint=True, zoom_fft is False * Remove "optional" from required parameters * Describe default options better * Clearer functions vs classes description * Describe units better, harmonize parameters commit a1b761ecdf431e9bed4b66d428a683b063c7537b Author: Tirth Patel <tirthasheshpatel@gmail.com> Date: Fri Dec 3 17:14:13 2021 +0530 DOC: stats: add an example demonstrating fast setup of SimpleRatioUniforms commit 15df2084b0757ace4b0d206ba84a10fbcbfd8aab Merge: abdb02d89 fe38b51da Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Thu Dec 2 21:44:28 2021 -0700 Merge pull request #14338 from charlotte12l/fix-14332 BUG: fix `stats.binned_statistic_dd` issue with values close to bin edge commit abdb02d898b5dda9c45392cba5dbc0c2fcd30c35 Merge: fa3f25df6 2102f1ba9 Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Thu Dec 2 21:29:02 2021 -0700 Merge pull request #15135 from duetosymmetry/special-elliptic-integral-carlson-cpp ENH: Carlson symmetric elliptic integrals. commit fa3f25df66f5884453d02cee99405cdb98bffaca Merge: 499ab9e61 ed9d688a6 Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Thu Dec 2 21:02:34 2021 -0700 Merge pull request #15143 from WarrenWeckesser/unused-imports MAINT: Remove some unused imports. commit 499ab9e61555996f6b64a3d0f1681f1dc0d15d04 Merge: adcd8f8b3 e6a0b1d50 Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Thu Dec 2 20:54:41 2021 -0700 Merge pull request #15144 from WarrenWeckesser/bug-runtests-errno BUG: Add missing import of 'errno' to runtests.py commit adcd8f8b3e65cf7398a754ac4857a83599476cbf Merge: ef409eb3f abbfda58c Author: Kai <kaistriega@gmail.com> Date: Fri Dec 3 07:56:50 2021 +0800 Merge pull request #15087 from Kai-Striega/fix_distance_verbosity_test TST: Review ``_assert_within_tol`` positional arguments commit ef409eb3f7f2aaee541046f622a7697016e14d4c Author: nbelakovski <nbelakovski@users.noreply.github.com> Date: Thu Dec 2 13:15:48 2021 -0800 DOC: Clarify documenation on atol/rtol (#14506) Contrasted atol to rtol and provided explicit instructions for how to achieve desired atol or rtol. commit 316398cc8e4b5a93bb679f45437043b03c1b3d33 Author: Andrew Annex <ama6fy@virginia.edu> Date: Thu Dec 2 14:23:56 2021 -0500 fixes typo in equation for Poisson cumulative distribution function (#15138) commit 817f4f2e05b4e5c6a10b3b941d1d629fe54072af Author: Gagandeep Singh <gdp.1807@gmail.com> Date: Thu Dec 2 22:52:22 2021 +0530 TST:Added test for even window length commit b2b1281282878e526e7efced73f67188cf9fe819 Author: Gagandeep Singh <gdp.1807@gmail.com> Date: Thu Dec 2 22:51:30 2021 +0530 ENH:Added support for even window length commit 9a504cd27ad6f7b3c0590f2c7fef9f329ef56508 Author: endolith <endolith@gmail.com> Date: Thu Dec 2 12:12:23 2021 -0500 Add Chirp Z-transform, zoom FFT (#4607) * Add chirp z-transform, zoom FFT, scaled FFT Written by Paul Kienzle and Nadav Horesh, published to public domain in mailing list post "[SciPy-user] Chirp Z transform" http://mail.scipy.org/pipermail/scipy-user/2009-March/020331.html * DOC: Fix typos, argument ordering and "optional" * API: zoomfft uses tuple for frequency range Change API so that frequency range is specified as a tuple instead of 2 arguments, like `butter` and other filter design functions. Change examples and tests to match. Also fix a complex cast in the demo * Add standard imports, remove unused import Add czt imports to scipy.fftpack __init__.py * DOC: Misc docstring fixes, PEP8 spacing Credit Kienzle and Horesh in THANKS.txt * TST: Cleanup CZT tests Add specific example signals from the demo, add basic CZT test, reorganize into tests of each feature, use numpy's assert_, add seed for deterministic randomness, remove tests from demos Add interpolation of spectrum and large prime sizes. * ENH: Pad to next regular length FFTPACK is optimized for 5-smooth composite lengths, not just powers of 2, so this should be faster. Since this is specific to FFTPACK, move _next_regular to fftpack.helper. * API: Move frequency scale factor to own argument instead of having different behavior for w=1 vs w=1+0j (name could be changed before merging) * BUG: prevent overflow of k**2 (must be int__ type, not uint__) * MAINT: Handle 0-size and 0-ndim input same as fft and add a test for 1-length input * DOC: Various docstring improvements * ENH: Add czt_points func and method Convenience function for returning the points on the Z plane at which the CZT samples it, somewhat analogous to `fftfreqs`. Also available as .points() in a CZT instance. * DOC: misc docstring fixes * BUG: integer `a` was causing errors * TST: Add czt_points func and method Also add tests for czt_points * ENH: Improve accuracy for FFT-like transforms Any error in `w` is accumulated and causes the sampling spiral to drift away from the unit circle, resulting in increasing error at the end of the transform output. When specified using factor (or left blank), we can do better by generating the points along the unit circle directly, improving accuracy for the common FFT-like transforms. Also tighten tests for improved accuracy * TST: Add tests for math and conflicting args Test czt with known outputs, make sure it errors if w and factor are both specified * DOC: Add CZT functions and classes to listing * MAINT: combine input sizes validation code also use new-style classes, same as other SciPy classes * TST: add tests for invalid sizes, etc. Also seterr so tests fail if overflows occur inside CZT. * DOC: Rename 'factor' to 'scale' This behaves the same way as the scale parameter in ScaledFFT * ENH: use 'scale' to compute ZoomFFT and ScaledFFT This method is more accurate for transforms that calculate along circles, which ZoomFFT and ScaledFFT both do. * DOC: Move docstrings from __init__ to class Following NumPy HOWTO: "Class docstring Use the same sections as outlined above (all except Returns are applicable). The constructor (__init__) should also be documented here, the Parameters section of the docstring details the constructors parameters." * DOC: Various docstring cleanups Add more examples, move notes to Notes section, clarify starting point is in complex plane, add references, add links to other functions, etc. * MAINT: Remove demos and tests from module * DOC: Add more examples, clarify that a is complex * DOC: Fix problems with doctests Now they all pass doctest.testfile('czt.py') except for "Expected nothing, Got: something" errors. * MAINT: Remove unnecessary arange call * Remove ScaledFFT to simplify pull request This is specifically for convolution, hasn't been as thoroughly discussed, and can always be added in a different PR. * MAINT: Rename _next_regular to _next_opt_len "Regular number" is specific to FFTPACK. Other libraries support other radices, so gave the function a more generic name, so that pyfftw etc. can monkey-patch it along with the fft. * Remove mutually exclusive `scale` parameter This can be handled by a different class/function in the future if desired. Instead of calling CZT.__init__() from `ZoomFFT`, the init code is now duplicated. * DOC: Clarify Bluestein algorithm vs CZT The CZT and DFT are transforms, while Cooley-Tukey algorithm and Bluestein algorithm are implementations. The speed-up for prime-length DFTs arises from Bluestein's algorithm, not CZT. The CZT could also use a "direct" implementation, which would not provide any speedup. * Remove Python 2 code SciPy has dropped support for it Also PEP8 whitespace changes * Update _next_opt_len -> next_fast_len This was changed into a public function since the PR * Move CZT from fftpack to fft fftpack has been deprecated since this PR * TST: Call test functions instead of yielding them "yield tests were removed in pytest 4.0 - test_1D will be ignored" * Improve refguide, correct CZT imports ScaledFFT and scaledfft were removed from the module, and czt_points added but refguide was not updated. Fixes: ERROR: objects in scipy.fft.__all__ but not in refguide:: CZT ZoomFFT czt czt_points ... zoomfft * DOC: Remove CZT examples FFT vs CZT speed example is no longer true, since both fft and czt use Bluestein's algorithm now. Scaled example is no longer valid, because scale parameter was removed * DOC: Add import commands to doctests "NameError: name 'fft' is not defined", etc. * DOC: Remove inaccurate FFT comparisons * Make fs= parameter lowercase Consistent with PEP8 and other functions like welch and spectrogram * TST: Convert 2-norm tests into assert_allclose Provides better error messages and is more consistent with other tests. Using the tightest tolerances that pass on Windows machine. * TST: Loosen tolerances until all CI systems pass * ENH: Don't calculate products we don't need If m is longer than n, this wastes time calculating values that are immediately thrown away * Move nfft where used * DOC: range notation * w isn't used, just available from class * ENH: More accurate _Awk2 in ZoomFFT Suggested by @llohse in https://github.com/scipy/scipy/pull/4607#discussion_r506251925 * ENH: More accurate wk2 in CZT Suggested by @ncgeib in https://github.com/scipy/scipy/pull/4607#discussion_r63880528 and @mreineck in https://github.com/scipy/scipy/pull/4607#discussion_r314938187 * TST: Tightest tolerances that will pass locally and then will update them for the CI test platforms * TST: Relax tolerance * TST: Wider tolerance for ARM Test Group 1 I'm not sure why this fails. Other systems produce identical output, but this platform doesn't. E Max absolute difference: 1.80394263e-13 E Max relative difference: 1.028472e-14 * DOC: Docstring improvements Harmonize the docstrings of the different functions * DOC: Remove comments about view the line y = y[..., self._yidx] * self._wk2 creates a new array * ENH: Add endpoint= parameter to zoomfft, and tests * DOC: Add descriptions to scipy.fft.__doc__ Addresses https://github.com/scipy/scipy/pull/4607#discussion_r523772549 * DOC: Add See Also to all CZT/ZoomFFT docstrings Addresses https://github.com/scipy/scipy/pull/4607#issuecomment-727015251 * DOC: Add 'callable' to class docstrings Addresses https://github.com/scipy/scipy/pull/4607#issuecomment-477893359 and https://github.com/scipy/scipy/pull/4607#issuecomment-728904715 * DOC: Add backticks around some variables Addresses https://github.com/scipy/scipy/pull/4607#issuecomment-727015251 * TST: Remove unused fftshift import Addresses https://github.com/scipy/scipy/pull/4607#discussion_r523778524 * DOC: Harmonize parameter descriptions Addresses https://github.com/scipy/scipy/pull/4607#issuecomment-727010040 * DOC: Copy example from ZoomFFT to zoomfft * DOC: Simplify examples to use points.real, .imag * DOC: Add unit circles to example plots * DOC: Add example to czt, add ref to czt, ZoomFFT "This means that the CZT allows us to obtain spectral information only over a band of frequencies within the range..." * DOC: Mention Bluestein's algorithm for ZoomFFT * DOC: Note about "chirp" in name * DOC: Correct fs description (1/pi -> 2*pi) To specify frequency range in radians, the sampling frequency should be 2*pi, not 1/pi. To calculate half the unit circle, for instance: ZoomFFT(3, np.pi, fs=2*pi).points() * DOC: Move note about system identification Move to Notes section instead of after plotting, to work around https://github.com/matplotlib/matplotlib/issues/19111 Causing the doc build errors: WARNING: Exception occurred in plotting scipy-fft-czt-1 from /home/circleci/repo/doc/source/generated/scipy.fft.czt.rst: Traceback (most recent call last): File "/home/circleci/repo/venv/lib/python3.7/site-packages/matplotlib/sphinxext/plot_directive.py", line 472, in run_code exec(code, ns) File "<string>", line 2 A similar process can be used for system identification purposes, ^ SyntaxError: invalid syntax * TST: Use scipy.fft imports * Use .index() instead of checking for integer value Co-authored-by: Eric Larson <larson.eric.d@gmail.com> * TST: Remove run_module_suite leftovers from original code Co-authored-by: Eric Larson <larson.eric.d@gmail.com> * TST: Replace numpy.testing.dec with pytest.mark * TST: Parametrize, assert_raises -> pytest.raises Replace for loops with pytest.mark.parametrize. Replace assert_raises with pytest.raises. (TODO: There is probably a better way to parametrize different functions with different numbers of arguments, parameters in different positions, but I don't know it.) Co-authored-by: Eric Larson <larson.eric.d@gmail.com> * TST: Delay evaluation of classes Co-authored-by: Eric Larson <larson.eric.d@gmail.com> * Combine error messages, check type, not value Instead of using operator.index(), which unnecessarily modifies the variables and makes the error message less helpful, combine the error messages and check the type of the integer variable, rather than the value. Also clarify type requirement in error message, and test for arguments with integer value but not integer type. Also change another error message to use f-strings. * TST: Reorder tests to be near each other * TST: Parametrize test_czt_math and test for w * TST: Relax test_czt_math and choose new step size So the functions are tested away from the unit circle, but not so far that numerical error crops up at high m. * TST: Workaround for type annotations * DOC: Mention scipy.fft also uses Bluestein's algo * Move CZT from scipy.fft.czt to scipy.signal._czt 3 mild votes for `signal`: - https://github.com/scipy/scipy/pull/4607#issuecomment-498157401 - https://github.com/scipy/scipy/pull/4607#discussion_r574482611 - https://github.com/scipy/scipy/pull/4607#discussion_r574897594 1 vote for `fft`: - https://github.com/scipy/scipy/pull/4607#issuecomment-739552320 Make into a private namespace like https://github.com/scipy/scipy/pull/14962 * Change zoomfft endpoint=False default, matches fft With this default, scipy.signal.zoomfft() == scipy.fft.fft() https://github.com/scipy/scipy/pull/4607#issuecomment-716124250 https://github.com/scipy/scipy/pull/4607#issuecomment-896706063 https://github.com/scipy/scipy/pull/4607#issuecomment-901207245 * PEP8: Rename zoomfft to zoom_fft https://www.python.org/dev/peps/pep-0008/#function-and-variable-names * Set some arguments to be keyword-only Co-authored-by: Paul Kienzle <pkienzle@users.noreply.github.com> Co-authored-by: Eric Larson <larson.eric.d@gmail.com> commit e6a0b1d50f6cbf70bf0055e9ed47446d413e2417 Author: warren <warren.weckesser@gmail.com> Date: Thu Dec 2 07:47:19 2021 -0500 BUG: Add missing import of 'errno' to runtests.py commit ed9d688a6e42093c3f2bb67cda7d411ddcb2d565 Author: warren <warren.weckesser@gmail.com> Date: Thu Dec 2 07:43:58 2021 -0500 MAINT: Remove some unused imports. commit fa23817064272bf7bf156ca2ef7e21f3bace0bd3 Author: Tirth Patel <tirthasheshpatel@gmail.com> Date: Thu Dec 2 17:51:40 2021 +0530 DOC: stats: address review comments commit 2b02296ea660bd569e4f8d33fe6fb11777be8294 Author: Smit Lunagariya <55887635+Smit-create@users.noreply.github.com> Date: Thu Dec 2 16:49:51 2021 +0530 MAINT: Install `sparse.linalg._eigen` tests and fix test failures (#15120) - Install `eigen` tests (tests were not run before, aside from on an in-place build) - fix user warnings that were added in gh-14868 and now lead to test failures - skipped PROPACK tests for 32-bit complex dtype input - bump accuracy on an ARPACK test commit 4f94bfdd4b3e65fccd78ea8cce964eb0df1f27fa Author: Tirth Patel <tirthasheshpatel@gmail.com> Date: Thu Dec 2 16:47:16 2021 +0530 BUG: stats.sampling: set PDF area after setting domain commit 45df21fd8f1308fcf0662fbbf30caf26ab0e662c Merge: 81b99aefd d2660b3e9 Author: Pamphile Roy <roy.pamphile@gmail.com> Date: Thu Dec 2 12:02:41 2021 +0100 Merge pull request #15137 from WarrenWeckesser/special-examples DOC: special: Add 'Examples' to multigammaln and roots_legendre docstrings. commit 1d60afe118ac19531dc72a97f290ae286630a8d4 Author: Tirth Patel <tirthasheshpatel@gmail.com> Date: Thu Dec 2 14:52:16 2021 +0530 ENH: stats.sampling: add SROU method This PR adds Simple Ratio-of-Uniforms method to sample random variates from continuous distributions. It can be used for the varying-parameter case as it has a fast setup but slow generation times. As no other methods in sampling have a fast setup, this would be a nice addition. commit 81b99aefd80cf0e80e9c068be8ebc25f45745a98 Author: zhaog6 <31978442+zhaog6@users.noreply.github.com> Date: Thu Dec 2 17:15:56 2021 +0800 DOC: sparse.linalg: Fixed the docstrings in the sparse matrix inverse function (#15126) commit abbfda58ca70b4fa32056e44df653ea954dce9f3 Author: Kai Striega <kaistriega@gmail.com> Date: Thu Dec 2 16:23:27 2021 +0800 TST: Revert to `atol` test_pdist_jensenshannon_iris commit 84c4a1d012cb8c07cb2cfb4299e47063fd839578 Merge: c0815e3b5 1bcc3bc92 Author: Ilhan Polat <ilhanpolat@gmail.com> Date: Thu Dec 2 09:07:40 2021 +0100 DOC:signal: Use constrained_layout in Lomb-Scargle example Use constrained_layout in Lomb-Scargle example commit 1bcc3bc922dcc783b749209b926501b6a3b38745 Author: endolith <endolith@gmail.com> Date: Wed Dec 1 23:38:40 2021 -0500 Use constrained_layout in Lomb-Scargle example The plot axes labels were overlapping https://github.com/scipy/scipy/pull/15134#issuecomment-983301408 commit 229b658555392187b84558a6f4f33f078d557820 Author: Kai Striega <kaistriega@gmail.com> Date: Thu Dec 2 12:44:42 2021 +0800 TST: Fix verbose_ argument commit 2102f1ba96009b29c3cc62782e46b61988420e14 Author: Leo C. Stein <leo.stein@gmail.com> Date: Wed Nov 25 17:18:13 2020 -0600 DOC, TST: Carlson's, Legendre's elliptic integrals * Add documentation of relations between Carlson's and Legendre's elliptic integrals. These relations also form a set of tests. * Add warning that elliprj has not been thoroughly tested. * Added versionadded info to functions ellipr{c,d,f,g,j} commit a7a62b2843aadc2b237fa11cd26aa68380bfe9fc Author: Cong Ma <cong.ma@uct.ac.za> Date: Fri Aug 16 13:44:31 2019 +0200 BUG, DOC, MAINT, TST: Carlson symmetric elliptic integrals NOTE: This is a squash of several of @congma's original commits. ---Leo C. Stein <leo.stein@gmail.com> * MAINT: Add in-line code comments to equations and algorithms. * MAINT: Fix invalid JSON for special functions introduced during rebase. * DOC: Fix extra-long lines in docstrings to the ellip? functions. * DOC: Additional fixes for extra-long lines in ellipc docstring. * MAINT: Add comments to RD; fix loss of compensation term in summation. * BUG: Fix bad logic in returning a value in RC when validation fails. * MAINT: Add comments and references to the expansion step in RJ. * MAINT: Additional comments and cross-references in functions R[CFG]. More comments are added to the implementations with references to original equation-numbers in the more accessible arXiv preprints. * MAINT: Add cross-references in underlying arithmetic utilities. The implementation uses several arithmetic utilities under the hood, including real or complex summation, dot-product, and polynomial evaluation. In code comments next to these utilities, cross-references to original algorithms are added. * TST: Document the origin of special values for elliptical integrals. Add reference to the origin of the special values used in class TestEllipCarlson (tests for Carlson elliptical integrals). * DOC: Add more information about the domain of elliprj. * MAINT: Set new precision value and adjust RJ/RF asymptotic approximation. The precision parameter for all of the ellipr? functions is set to 5e-16. In addition, several fixes are made to the logic handling the entering of code branches in RJ (and to a lesser extent RF) where asymptotic-based approximation are used. Overall this helps achieve more uniform relative-errors for the ellipr? functions, except in several corner-cases of RJ where some of the input arguments are very small real numbers. * TST: Import more test data from Boost for elliptic integrals. In scipy/special/utils/convert.py, remove a file-name filter so that all of the test data for Carlson elliptic integrals can be included in tests. * TST, BUG: Add more Boost tests for R_D and improve accuracy. Add the special-case tests for R_D from Boost and make use of them in our tests. Also slightly improve accuracy in the last stage of computation. * TST: Relax the tolerance bounds in some R_D tests. The relative tolerance bounds for some of the R_D tests are relaxed to work around unexpected loss of precision on 32-bit builds with g++. This is a problem we cannot easily fix for now, and its impact is small. * TST: Add more Boost tests for R_F. Add the special-case tests for R_F from Boost and make use of them in our tests. * TST, BUG: Add more Boost tests for R_G and improve accuracy. Add the tests for R_G from Boost and make use of them in our tests. Also improve accuracy in R_G by using the cyclically symmetric form that expresses R_G in R_D. * TST: Relax the tolerance bounds in some R_G tests. commit 8d9166b87279432476d0af33feb46df635b40a11 Author: Cong Ma <cong.ma@uct.ac.za> Date: Tue Jul 23 15:09:57 2019 +0200 ENH: Carlson symmetric elliptic integrals. This changeset implements the Carlson symmetric elliptic integrals R{C,D,F,G,J} as ufuncs in scipy.special. The functions ellipr{c,d,f,g,j} takes real or complex floating-point arguments and perform the calculation based on the iterated duplication algorithm and series expansion. The underlying extension is written as C++ function templates. This supersedes PR scipy/scipy#10304 where the same functionalities were implemented in C. The latter relied on C11 features currently not well-supported on some platforms. NOTE: This is a squash of several of @congma's original commits. ---Leo C. Stein <leo.stein@gmail.com> * TST: Add more invalid input in tests for ellipr? functions. * MAINT: Cleanup C++ code, remove unnecessary checks and casts. * BUG: Correctly handle singularity near 0 for the 3rd argument of RD. * MAINT: Fix estimated relative error tolerance for RF(0, x, y) algorithm. * DOC: Stylistic fixes for the ellipr{c,d,f,g,j} functions. * MAINT: Use AGM algorithm for RG when one of the arguments is zero. * STY: Minor cleanup of C++ code. * DOC: Add an example for RG. * DOC: Fix failure to import name in doctest-like example for RG. * DOC: Formatting fixes. * BUG: Fix bad logic in RJ asymptotic approximations, boost overall accuracy. The overall accuracy for ellipr{c,d,f} is about 5e-16 while for RJ it used to be much worse. Part of the cause was errors in RJ asymptotic approximation computations, which have been fixed and tested against multi-precision results. * TST: Filter multi-precision tests that provoke RJ inaccuracy. In test_data, the cases that cause RJ inaccuracy on 32-bit Linux are filtered out and added to test_basic as a "hard" special case marked xfail. * DOC: Clarify the use of AGM algorithm for certain complete integrals. commit c0815e3b50f8e0a639cf4cb093db27606934ca9e Merge: e5da8c3fe a659b84cc Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Wed Dec 1 20:29:43 2021 -0700 Merge pull request #14441 from rgommers/testhook-threadpoolctl ENH: TST: add a threadpoolctl hook to limit OpenBLAS parallelism commit e5da8c3fe3b495e05c354e8989807044bd53216d Merge: 478e99ffe 4a18ec7f7 Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Wed Dec 1 20:12:38 2021 -0700 Merge pull request #15102 from peterbell10/dcst-ortho-argument ENH: Add orthogonalize argument to DCT/DST commit 478e99ffe8c2a6e8ab78347744d5f7e5e6ec308f Merge: 19647a8c9 5daf611bc Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Wed Dec 1 20:04:36 2021 -0700 Merge pull request #14992 from serge-sans-paille/feature/pythran-within_block_loop Pythranized version of _matfuncs_sqrtm commit c382bdfb8384812bc38044ab03a860f711a2e46f Author: Kai Striega <kaistriega@gmail.com> Date: Thu Dec 2 10:08:07 2021 +0800 TST: Remove `_assert_within_tol` from merge commit commit d3bdc48aeddcfd1c23397752375696fe6d34e2d9 Merge: 3a6faa422 19647a8c9 Author: Kai <kaistriega@gmail.com> Date: Thu Dec 2 10:01:22 2021 +0800 Merge branch 'master' into fix_distance_verbosity_test commit 3a6faa422650bcb878f9428542f2f89ce5e5fe2d Author: Kai Striega <kaistriega@gmail.com> Date: Thu Dec 2 09:55:48 2021 +0800 TST: Use atol for ``test_pdist_cosine_iris_*`` tests `atol` leads the tests to pass allowing the changes to the other tests to be included in the 1.8 branch. This way some improvements are included with the remaining test fine-tuning to be completed after the branch. commit 19647a8c9002b5cc6b110a877f28a3c6c6196dd9 Author: Christoph Baumgarten <33071866+chrisb83@users.noreply.github.com> Date: Wed Dec 1 19:44:21 2021 +0100 ENH: improve ARGUS rv generation in scipy.stats (#11954) * ENH: improve ARGUS rv generation in scipy.stats commit d2660b3e933b88b6fd3ac9c12f4eb55cde63203e Author: warren <warren.weckesser@gmail.com> Date: Wed Dec 1 11:41:58 2021 -0500 DOC: special: Add 'Examples' to roots_legendre commit eb3b7cde2ffa4887a6021c28f2d0b11e5f037359 Author: warren <warren.weckesser@gmail.com> Date: Wed Dec 1 11:15:47 2021 -0500 DOC: special: And 'Examples' to multigammaln docstring commit 91a279ecb05e7814e2787bfa618d46ad3e0af2be Merge: d42c18e71 37af69710 Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Wed Dec 1 12:52:45 2021 +0100 Merge pull request #15111 from WarrenWeckesser/log_expit ENH: Add special.log_expit and use it in stats.logistic commit d42c18e71ee90915534cde7796c5bd5c8ffe6b4c Merge: 41dd89916 153b48752 Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Wed Dec 1 12:26:15 2021 +0100 Merge pull request #15127 from perimosocordiae/perimosocordiae-patch-7 DOC: update linux build instructions to mention C++ commit 41dd89916870ea215f612727ecf42d12ea434657 Merge: ee6d3262a ff00022c5 Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Tue Nov 30 20:39:00 2021 -0700 Merge pull request #14822 from stefanv/sparse-ndarray-api Add an array API to scipy.sparse commit ee6d3262a18e4bbb5914339cb3afbb98ef75da1e Author: Evgeni Burovski <evgeny.burovskiy@gmail.com> Date: Wed Dec 1 03:08:00 2021 +0300 MAINT: interpolate: move the `sparse` dependency from cython to python (#15123) commit 75f1566613bf3b0f688a136b72b8d766d441bd6f Author: endolith <endolith@gmail.com> Date: Tue Nov 30 18:25:10 2021 -0500 DOC: Improve Lomb-Scargle example (#15134) Phase info isn't returned by the function, so including phase shift phi seems distracting. Using randomly-generated sample times is simpler than generating uniformly-spaced samples and then adding random gaps. Angular frequencies are typically written w (omega), not f. Label axes of plots to clarify their units. commit fbfce7eb60e2470fafec97c864f40e1a909d3c23 Author: Rory Yorke <rory.yorke@gmail.com> Date: Wed Dec 1 00:03:14 2021 +0200 ENH: support creation of analog SOS outputs (#15085) Closes gh-5668. Add analog argument, default False, to zpk2sos, and add new pairing option 'minimal' to construct analog and minimal discrete SOS arrays. tf2sos uses zpk2sos; add analog argument here as well, and pass it on to zpk2sos. iirfilter already had an analog argument; pass it on to zpk2sos. Added tests for new arguments and behaviour. Co-authored-by: Eric Larson <larson.eric.d@gmail.com> commit 5fc8ab679f9638e06c59fb627abe9a3df14b59e4 Author: Rory Yorke <rory.yorke@gmail.com> Date: Tue Nov 30 21:50:26 2021 +0200 BUG: correct frequency checks in signal.iirdesign and .iirfilter (#15092) Closes gh-13404. For iirdesign, allow frequencies greater than 1 when fs > 2. For digital filters, require frequencies w to satisfy 0 < w < fs/2; for analog filters, require 0 < w. For iirfilter, add check for 0 < w for analog filters. Add tests for the above. commit 153b48752e19183125d03a2c60711c5560a855e9 Author: CJ Carey <perimosocordiae@gmail.com> Date: Tue Nov 30 09:25:47 2021 -0500 Update linux build instructions to mention C++ commit 7a89f8e38ea2c4ea1f9f7d369d89672a75e25eef Author: Pamphile Roy <roy.pamphile@gmail.com> Date: Tue Nov 30 09:19:56 2021 +0100 DOC: fix symlink to `logistic.sf` in `stats.logistic` (#15119) Co-authored-by: Evgeni Burovski <evgeny.burovskiy@gmail.com> commit f770a6c444ca2bda3037afcc7e5d3347cee5ade0 Merge: b9a4b1105 a0d2281aa Author: Pamphile Roy <roy.pamphile@gmail.com> Date: Tue Nov 30 09:11:03 2021 +0100 Merge pull request #15055 from h-vetinari/minkowski-p ENH: allow p>0 for Minkowski distance commit b9a4b11053692a955a948a7b7e89b1b409e10e62 Merge: 7ff929107 950d3c626 Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Tue Nov 30 07:25:30 2021 +0100 Merge pull request #15112 from pantelisantonoudiou/butter-docs DOC: update 'Wn' definition in signal.butter commit 7ff929107c90ead71d2368a8a71008290b7d7df5 Author: h-vetinari <h.vetinari@gmx.com> Date: Tue Nov 30 17:12:49 2021 +1100 DOC: update toolchain.rst (#15045) * DOC: update build infra description * DOC: remove obsolete mention of Accelerate BLAS * DOC: update (& split) C/C++ conformance in toolchain.rst * DOC: Reflect GCC version bump & C++14 status * DOC: remove obsolete links * DOC: renumber hyperlinks according to order in text commit a659b84ccecd2a3299b1455be6f0532c8db42fb9 Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Thu Sep 2 23:08:54 2021 +0200 CI: DOC: add optional dependency on threadpoolctl commit 7865e35cc4e6cafccae8438c44b12477208ae399 Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Thu Sep 2 23:06:02 2021 +0200 ENH: TST: add a threadpoolctl hook to limit OpenBLAS parallelism This is taken over with minor modifications from scikit-learn. The most dramatic effect of this is for `scipy.linalg`, its test suite runs in ~30 sec on a 12-core machine without this change, and in ~5 sec with it when using `linalg.test(parallel=12)`. The full test suite is also sped up significantly. Closes gh-14425 commit 3b1d6fd7e598cb877f7e5936c573f9d383bf6842 Merge: a036357cb a8cc39d3d Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Tue Nov 30 06:55:07 2021 +0100 Merge pull request #14700 from mdhaber/roadmap_update DOC: update detailed roadmap commit a036357cb412f5153fecc84de03d7d260f681a81 Merge: 2a5271461 266fb6817 Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Tue Nov 30 06:52:07 2021 +0100 Merge pull request #14555 from perimosocordiae/perimosocordiae-patch-6 BUG: sparse: fix a DIA.tocsc bug commit 2a527146199c7709ec880e7c74fb43d507e00d54 Author: Smit Lunagariya <55887635+Smit-create@users.noreply.github.com> Date: Tue Nov 30 11:07:53 2021 +0530 MAINT: Add missing imports in deprecated modules (#15105) commit d72bb9d191cadb52d51cdcdd6dd397850a9843df Author: Smit Lunagariya <55887635+Smit-create@users.noreply.github.com> Date: Tue Nov 30 10:54:59 2021 +0530 MAINT: Include `stats.contingency` in public API (#15100) commit b5df7aa8be2bbf32697680730a8bc3950a2c1265 Author: Nico Schlömer <nico.schloemer@gmail.com> Date: Tue Nov 30 04:15:46 2021 +0100 Fix for complex Fresnel (#14920) Fixes #12309. Fresnel integral calcalation is done differently in three regions: - All is fine for `abs(Z) < 1.5` - [x] Fixed the values for `1.5 < abs(Z) < 4.5`. The fix circumvents the use of `sqrt` which can get problematic for complex values (branch cut!). - [x] Fixed values `abs(Z) > 4.5`. This was more difficult; it turned out that some basic expansion formulas were misleading, resulting in wrong function values (decades-old bug) commit 592860636f5d1c57413a8fea8e0ae2b2eec7de1b Author: Albert Steppi <albert_steppi@hms.harvard.edu> Date: Mon Nov 29 22:14:03 2021 -0500 BUG: Fix hyp2f1 to return correct values in regions near exp(±iπ/3). (#14706) This updates `scipy.special.hyp2f1` for complex `z` in the region defined by 0.9 ≤ |z| < 1.1, |1 - z| ≥ 0.9, real(z) ≥ 0, to use series expansion developed by José L. López and Nico M. Temme which works well in this region. The existing implementation struggles with points in this region. This method has been chosen over Buhring's analytic continuation series which was used in #8151 due to its simplicity in not requiring special handling when `b - a` is (or is near) an integer, and because it appears to perform better than Buhring's method in most cases. `scipy.special._precompute.hyp2f1_data.py` has also been updated to allow users the option to skip the mpmath calculations in order to save time, since these calculations actually only need to be performed once. commit 71dcdbe717cc455cd9073c8183cda461a21ebd7f Merge: f953ba77a 5e6b217dd Author: Evgeni Burovski <evgeny.burovskiy@gmail.com> Date: Mon Nov 29 09:50:04 2021 +0300 Merge pull request #15114 from zerothi/fermi-dirac DOC: added Fermi-Dirac distribution by name commit 5e6b217dd36f62b4e9ead2c2bd9b783761d88298 Author: Nick Papior <nickpapior@gmail.com> Date: Sun Nov 28 22:14:07 2021 +0100 DOC: added Fermi-Dirac distribution by name This makes the documentation clearer about the association of the logistic distribution equalling the Fermi-Dirac distribution when using the survival function. Also removed erroneous support limits for genlogistic and logistic. commit f953ba77ae402e2f307b69e2584679b91b3b0edb Author: Namami Shanker <namami2011@gmail.com> Date: Mon Nov 29 00:43:17 2021 +0530 BUG: Update chi_gen to use scipy.special.gammaln (#15107) * BUG: Update chi_gen to use scipy.special.gammaln commit c255b7d019c175eed2d1b7b29c590e5f70d9f030 Merge: 3f05efb94 b2a3363e2 Author: Tirth Patel <tirthasheshpatel@gmail.com> Date: Sun Nov 28 13:31:42 2021 +0530 Merge pull request #15109 from chrisb83/remove_rou_naive MAINT: remove NaiveRatioUniforms from scipy.stats commit 37af69710ef2d9d09ae5e08e10ef29de4ff46670 Author: warren <warren.weckesser@gmail.com> Date: Sat Nov 27 15:04:01 2021 -0500 MAINT: Create c++ wrapper of sf_error.c Without this, and with the current configuration in setup.py, the build system attempts to compile sf_error.c using gcc with the flag --std=c++14. At least on the macOS platform in github actions, gcc doesn't like setting the C++ language standard when compiling a C file. commit cced6877f883e5e08df6fb365f8a09faebaf71b8 Author: warren <warren.weckesser@gmail.com> Date: Sat Nov 27 14:01:30 2021 -0500 MAINT: special: Add cxx flags hook for cxx ufuncs. commit 0056c1961e235df5e1e9306078e3bb3379d07156 Author: warren <warren.weckesser@gmail.com> Date: Sat Nov 27 10:52:49 2021 -0500 ENH: stats: Use special.log_expit in logistic.logcdf and .logsf commit f5012eab4f09d5554d92174e29bba82737da1c30 Author: warren <warren.weckesser@gmail.com> Date: Sat Nov 27 09:39:49 2021 -0500 ENH: special: Add the ufunc log_expit commit 950d3c62608186c28270cd1593b845fd368180e6 Author: Pantelis Antonoudiou <pantelis71@hotmail.com> Date: Sat Nov 27 12:30:23 2021 -0500 update 'Wn' definition in butter commit b2a3363e204d564b801cebfbbe63c018eaec9882 Author: baumgarc <christoph.baumgarten@gmail.com> Date: Sat Nov 27 12:45:31 2021 +0100 MAINT: remove NaiveRatioUniforms from scipy.stats commit 3f05efb9498e29f4e735aa7e0220139a8d8c8773 Merge: 2c279c764 1185bdd78 Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Fri Nov 26 11:44:31 2021 +0100 Merge pull request #15095 from tirthasheshpatel/fix-gitignore MAINT: update gitignore to ignore private directories commit 2c279c76471d997068fe656b2ac90163186cde75 Author: Tirth Patel <tirthasheshpatel@gmail.com> Date: Fri Nov 26 02:58:06 2021 +0530 MAINT: stats: separate UNU.RAN functionality to its own submodule (#15083) The new submodule is stats.sampling commit 4a18ec7f77c5a6998b530d59f4573baf525bfe5e Author: Peter Bell <peterbell10@live.co.uk> Date: Thu Nov 25 21:07:13 2021 +0000 STY: PEP8 fixes commit ce5ec7f239fa0455297db54c3e336c976898eb1d Author: Peter Bell <peterbell10@live.co.uk> Date: Thu Nov 25 19:54:36 2021 +0000 ENH: Add orthogonalize argument to DCT/DST commit a0d2281aa1df947f79159f76b6e60bcc00dd4fef Author: H. Vetinari <h.vetinari@gmx.com> Date: Sat Nov 20 23:49:48 2021 +1100 properly typeset norms (review ilayn) commit 4e03f99f3c06e7ebf8815fdbd6e5685ff0c831e2 Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Nov 18 00:33:48 2021 +1100 TST: switch some tests to relative rather than absolute tolerance commit 939e9fd4266d16644905734efac0ab1a9c24411f Author: H. Vetinari <h.vetinari@gmx.com> Date: Wed Nov 17 23:20:19 2021 +1100 ENH: allow p>0 for minkowski-distance commit 1ed13610f7d868441cccc76072a9659c49f3cf4c Merge: 40fc5b3cb 8ab359172 Author: Pamphile ROY <roy.pamphile@gmail.com> Date: Thu Nov 25 11:54:34 2021 +0100 Merge pull request #15099 from andyfaff/bestx MAINT: ScalarFunction remember _lowest_x/_lowest_f commit 1bc855f5c61f904e9281b197efcd63a4e82861a8 Author: Kai Striega <kaistriega@gmail.com> Date: Thu Nov 25 11:17:24 2021 +0800 TST: Remove ``_asert_within_tol`` helper function ``_assert_within_tol`` provided a wrapper for ``assert_allclose``. This behavior is already available from ``assert_allclose`` which is now used instead. commit 8ab35917271fd965ba76a6c8e319b79d7957d2e0 Author: Andrew Nelson <andyfaff@gmail.com> Date: Thu Nov 25 11:22:16 2021 +1100 TST: ScalarFunction._best_f commit 229b15c3c58a0d596fd8dc3bb8fb2fd40dbc75c4 Author: Andrew Nelson <andyfaff@gmail.com> Date: Thu Nov 25 08:11:08 2021 +1100 MAINT: ScalarFunction remember best_x commit 40fc5b3cb67f2491e7a19fa43d917acbde4ab3a0 Merge: 57bf4d674 57269d42c Author: Evgeni Burovski <evgeny.burovskiy@gmail.com> Date: Wed Nov 24 22:53:46 2021 +0300 Merge pull request #15096 from tylerjereddy/treddy_forward_173_notes MAINT: forward port 1.7.3 relnotes. commit 57269d42c3e0fd6407389a5810640dfa93db9e0d Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Wed Nov 24 12:19:11 2021 -0700 MAINT: forward port 1.7.3 relnotes. commit 1185bdd78be37255742b2b8c48be1f826b84f47d Author: Tirth Patel <tirthasheshpatel@gmail.com> Date: Wed Nov 24 22:47:05 2021 +0530 MAINT: update gitignore to ignore private directories [skip ci] commit 623f6f4efab659494750799bad3920098d7c0cf3 Author: Kai Striega <kaistriega@gmail.com> Date: Wed Nov 24 11:27:04 2021 +0800 TST: Review test tolerances commit 192c76806c8d1e7d0e996b985e067976b3a48c52 Author: Kai Striega <kaistriega@gmail.com> Date: Wed Nov 24 09:19:00 2021 +0800 STY: Fix whitespace around operators commit 57bf4d674c6d31ce5e070498c8cbdc0f2ea8c8d6 Merge: 4158f28fd d6c7c0f6c Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Tue Nov 23 19:10:22 2021 +0100 Merge pull request #15084 from Smit-create/14360_13 MAINT: Include `scipy.io.matlab` in public API commit 4158f28fd910850c325698a4226d00912aedc1c6 Merge: d18b2a4c2 0ead4313f Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Tue Nov 23 10:16:39 2021 -0700 Merge pull request #15086 from tupui/bounds_discrepancy BUG: out of bounds indexing in stats.qmc.update_discrepancy commit d18b2a4c23b12a007bd5b2a1cd5a541221e4934e Author: Arthur <37664438+V0lantis@users.noreply.github.com> Date: Tue Nov 23 15:04:49 2021 +0100 DOC: remove `conda develop` from quickerstart dev doc page (#14839) [ci skip] Co-authored-by: Ralf Gommers <ralf.gommers@gmail.com> commit 7104f8f9020a90b51d25034f68651425f9a6862f Author: Kai Striega <kaistriega@gmail.com> Date: Tue Nov 23 19:18:27 2021 +0800 TST: Review ``_assert_within_tol`` positional arguments ``_assert_within_tol`` is often called with positional arguments that end up being filled into the signature, e.g. calls to ``_assert_within_tol(Y1, Y2, eps, verbose > 2)`` evaluate to calls where `atol=eps` and `rtol=verbose > 2`. This PR converts calls to using keywords where needed. Further it modifies some tolerances to be stricter. commit 0ead4313fc9db34c7a929069c9327e41e57cc889 Author: Pamphile ROY <roy.pamphile@gmail.com> Date: Tue Nov 23 09:57:56 2021 +0100 BUG: out of bounds indexing in stats.qmc.update_discrepancy. Co-authored-by: 99991 <99991@users.noreply.github.com> commit d6c7c0f6c17cd9bc89d8181b3eb0038d9c6f0b76 Author: Smit-create <smitlunagariya.mat18@itbhu.ac.in> Date: Tue Nov 23 13:35:13 2021 +0530 MAINT: `io.matlab`: Use renamed modules and add deprecation warnings commit 262b7f7ca2ffa2423e08771c323007ccda23a1b1 Author: Smit-create <smitlunagariya.mat18@itbhu.ac.in> Date: Tue Nov 23 09:39:48 2021 +0530 MAINT: Rename `io.matlab` modules and make them private commit da7ba1254931406b6df6f4d70e6392bee4120727 Author: Smit-create <smitlunagariya.mat18@itbhu.ac.in> Date: Tue Nov 23 09:30:22 2021 +0530 MAINT: Revert `_matlab` to `matlab` commit abafdff0a0f5af52d7104e860ea9ac6a8610cd95 Author: Christoph Baumgarten <33071866+chrisb83@users.noreply.github.com> Date: Tue Nov 23 04:21:49 2021 +0100 MAINT: simplify UNU.RAN api in stats (#15035) * MAINT: simplify UNURAN interface commit 8dd161d14e14dff6ecea82fbaefd2b6460bb0d38 Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Mon Nov 22 07:44:52 2021 +0100 MAINT: update `stats.iqr` for deprecated `np.percentile` keyword (#15078) commit b4c87b74b0f0ae485254a22279da439557fe93f8 Author: Gang Zhao <zhaog6@lsec.cc.ac.cn> Date: Mon Nov 22 13:11:45 2021 +0800 DOC: sparse.linalg: Fixed incorrect comments when the initial guess is non-zero commit 296b5502788af19409fc543bc32fa8e840cc4f9f Merge: 1022323f9 ea56ecfc8 Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Sat Nov 20 10:55:41 2021 -0700 Merge pull request #15066 from h-vetinari/gcc5 CI: bump gcc from 4.8 to 6 commit 1022323f9744c36148e3422f97152d40ce0ccd94 Author: peterbell10 <peterbell10@live.co.uk> Date: Sat Nov 20 11:40:50 2021 +0000 DOC: Add warning to dct documentation about norm='ortho' (#15041) commit 6ed2f3b1da3b115fc6f7d860c952d347737c1325 Merge: 2d4277cb2 14c553bae Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Sat Nov 20 12:34:18 2021 +0100 Merge pull request #15054 from h-vetinari/wminkowski MAINT: Remove wminkowski commit 2d4277cb295b52c77e7d242f8d0118eff7171a9a Merge: 579e6bdf5 80e3238d9 Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Sat Nov 20 12:22:16 2021 +0100 Merge pull request #15053 from h-vetinari/skips TST: Add some test skips to get wheel builder CI green again commit 579e6bdf5b41a0487143a42119f94e6af75386c4 Merge: ee5d1dd70 18e556ce0 Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Sat Nov 20 11:09:51 2021 +0100 Merge pull request #15040 from Smit-create/14360_11 MAINT: Add test for SciPy's public API Reference issue for this: gh-14360 Mostly taken over from https://github.com/numpy/numpy/blob/main/numpy/tests/test_public_api.py This new test will fail when new `.py` files are added to public submodules by accident. It makes it hard to silently add more semi-public API, it requires adding an entry to the public submodule listing. commit 18e556ce099e143fafa9dd5de6f84ab10b3be238 Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Fri Nov 19 19:21:45 2021 +0100 STY: fix linter complaints commit dfffbaba0b328be4917c223767de9fb4fcb26f47 Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Fri Nov 19 18:55:18 2021 +0100 MAINT: restore some `io.matlab` private attribute access commit ea56ecfc82db5c8fc7997d1a337393a31174e27d Author: H. Vetinari <h.vetinari@gmx.com> Date: Fri Nov 19 23:41:57 2021 +1100 bump to gcc 6 (6.3 is compiler version for manylinux_2_24) commit ee5d1dd7084c615e46d046dea7ef58bda0dab2d8 Merge: f72cc95f4 fb79cc56d Author: Ralf Gommers <ralf.gommers@gmail.com> Date: Fri Nov 19 11:18:14 2021 +0100 Merge pull request #15062 from ilayn/cythonize_tempita_unicode MAINT:BLD: Open file in text mode for tempita commit f72cc95f4eb5cef207a2abd613640ca212a2e3d8 Author: Ross Barnowski <rossbar@berkeley.edu> Date: Thu Nov 18 23:20:49 2021 -0800 DOC: Update broken link to SuperLU library. (#15067) commit 266fb68172851ec55cd3144e9eb933681b0d4ea0 Author: CJ Carey <perimosocordiae@gmail.com> Date: Fri Aug 6 15:37:27 2021 -0400 BUG: sparse: fix a DIA.tocsc bug * Add a regression test * Only copy over the final indptr entry when needed commit b5cb42630bd6e8f78ad9b1a6d0f2fd05c3392f27 Author: Nicholas McKibben <nicholas.bgp@gmail.com> Date: Mon Jan 4 22:35:07 2021 -0700 CI: bump gcc from 4.8 to 5 commit 6a293610efbeb357aae9c7561bd3ebebaec3562a Author: Smit-create <smitlunagariya.mat18@itbhu.ac.in> Date: Thu Nov 18 11:38:36 2021 +0530 MAINT: Fix access of private modules that should work presently commit d4f273e76848a0de994927c744285f407ece7ae0 Merge: 9484b9dd6 c1e1ec206 Author: Tyler Reddy <tyler.je.reddy@gmail.com> Date: Wed Nov 17 21:06:25 2021 -0700 Merge pull request #15061 from ilayn/sparse_expm_imports MAINT:sparse: expm() fix redundant imports commit fb79cc56d086303821815f5d8cc1aa7dd9d0f801 Author: Ilhan Polat <ilhanpolat@gmail.com> Date: Thu Nov 18 04:18:15 2021 +0100 MAINT:BLD: Open file in text mode for tempita commit c1e1ec2069dba1ae97eb515481b214f96f4419b9 Author: Ilhan Polat <ilhanpolat@gmail.com> Date: Thu Nov 18 01:06:22 2021 +0100 MAINT:sparse: expm() fix redundant imports commit 14c553bae1973e0bf47cbe7916550154cc64a07a Author: H. Vetinari <h.vetinari@gmx.com> Date: Wed Nov 17 20:12:54 2021 +1100 TST: remove obsolete deprecation warnings for wminkowski This commit is best (re)viewed without whitespace changes commit 46504612850908768aebd459e39d30df08b53fb0 Author: H. Vetinari <h.vetinari@gmx.com> Date: Wed Nov 17 20:10:24 2021 +1100 MAINT: remove deprecated wminkowski commit ff00022c51b6e3cb084785882caabf05e46a95dd Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Wed Nov 17 09:58:28 2021 -0800 Add reminder to restore faster indexing code path Slicing that results in 1D sparse arrays is currently unsupported. There was one such case in `linsolve.py`. We changed it to return a 2D sparse array instead, but now also note that that is a slightly slower code path, and that the old version should be restored once 1D sparse arrays are supported. commit 80e3238d92bc70ca50b3340f52b03149fc83892b Author: H. Vetinari <h.vetinari@gmx.com> Date: Wed Nov 17 18:43:13 2021 +1100 skip failing test for aarch Fixes #15051 commit 8ba447a7c7e1d690d129754839df3c1ad298d21a Author: H. Vetinari <h.vetinari@gmx.com> Date: Wed Nov 17 18:27:53 2021 +1100 skip failing test for win+32bit Fixes #15052 commit c8a16fe9ff4a00001e6d3c2370d016a141a0d429 Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Tue Nov 16 15:27:54 2021 -0800 Remove unused imports commit a19d6707af76dd3cd13e3614f5fd9a4bbddce010 Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Tue Nov 16 15:22:08 2021 -0800 Use cast of eye(M) instead of generating dia_array from scratch commit 38f86bc1d1d72c04becc14e2156f085a9c74640d Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Tue Nov 16 15:18:41 2021 -0800 Remove unnecessary brackets commit d3d438fd88c05947e490411601a98ed950b1fc83 Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Tue Nov 16 15:15:28 2021 -0800 Fix 2D array slicing The following was broken before, for both matrices and arrays: x[[[0, 1]], 0] Also includes small clean-up of the 1D array slicing error handling. commit 15baba42ba58f60b76d6c65f5054bdc304fdc935 Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Mon Nov 15 16:15:22 2021 -0800 Rename dispatcher commit c3e4ec597d857bcd5e37499622e2a2adcf697713 Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Mon Nov 8 17:12:05 2021 -0800 Remove _array keywords on eye/spdiags constructors commit f1ca6e64e1fec9621b6974b84598145f1b786684 Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Mon Nov 8 16:53:35 2021 -0800 Add array tests for scipy.sparse.linalg commit 79a030ca0a5de53e39a29f16569eef079f5d4acb Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Mon Nov 8 15:22:40 2021 -0800 Add note to documentation about array interface commit 84a62c90c882dadf1cd77963dc98f7359dbda289 Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Sat Nov 6 13:05:21 2021 -0700 Make optimized build happy commit 25259a66ce68cde773f85e8d7ea89831f43e10e0 Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Sat Nov 6 12:36:09 2021 -0700 Make linter happy commit 40c42d4d5db76d3696d53c10952104e1142158af Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Sat Nov 6 10:58:50 2021 -0700 Add documentation for sparse arrays commit a7c2bb2712a0029308e155106c54929603585d7b Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Fri Nov 5 00:20:37 2021 -0700 Linting cleanups commit e3215dca60bc57550d56886868de592ce1a69b2a Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Fri Nov 5 00:14:44 2021 -0700 Fix summation dimensions commit 6ac60be59812ee05209a0481f894a053158a726e Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Thu Nov 4 22:39:38 2021 -0700 Raise NotImplementedError on 1D slicing We cannot support that yet, since we don't have a sparse array container available. commit 82071b2120b1a54e5235a6940b02b0d9c6184594 Author: Stefan van der Walt <stefanv@berkeley.edu> Date: Thu Oct 7 23:51:05 2021 -0700 Add an array API to scipy.sparse We add matching array classes for the bsr, coo, csc, csr, dia, dok, and lil matrices. For each of these, we restore element-wise multiplication. In the existing implementation, we switch to using the `@` operator (instead of `*`, which behaves differently for arrays). The existing matrix implementation often explicitly creates matrices or sparse matrices. To address that, we attach to each sparse array / matrix various container attributes (`_coo_container`, `_lil_container`, etc.). These map to `_coo_matrix` and `_lil_matrix` for sparse matrices, and to `_coo_array` and `_lil_array` for sparse arrays. Thus, the implementation can be agnostic of the container type. For the same reason `_ascontainer` and `_container` methods are introduced, which map to `asmatrix`/`matrix` and `asarray`/`array` respectively. * When slicing out a 1D result, return a dense array We do this since there is no sparse mechanism for representing 1D arrays. This commit also introduces `._is_array` that returns True for sparse arrays but False for sparse matrices. * Refactor sparray modifications into mixin Also add __array__ to allow casting to ndarray * Remove __array__ conversion * Fix typo in division test * Remove .A attribute * Use _is_array throughout * Remove .H in preference of .conj().T like in NumPy * Change errors on .H and .A to VisibleDeprecationWarnings * Move arrays to private _arrays commit de08460a7c47df1578c5128b4ff3f1fc4341ed49 Author: Smit-create <smitlunagariya.mat18@itbhu.ac.in> Date: Mon Nov 15 11:16:44 2021 +0530 MAINT: Use `_backend` to make it private and fix failing tests commit 0156319971681b30e95098cc3337fc8dcf1bf170 Author: Smit-create <smitlunagariya.mat18@itbhu.ac.in> Date: Mon Nov 15 10:18:11 2021 +0530 MAINT: Add test for public API commit 3553d49efdb0e6c997661e1dab6a1594876d0e2a Author: Smit-create <smitlunagariya.mat18@itbhu.ac.in> Date: Mon Nov 15 10:17:52 2021 +0530 MAINT: Fixes for public API commit 88066d86147b3a8e6d572fb49c764de0ac976684 Author: Andrew Nelson <andyfaff@gmail.com> Date: Thu Nov 11 11:05:33 2021 +1100 MAINT: rename moduleTNC + review changes commit 26288af0c4aef494376b952cef023aef654e601f Author: Andrew Nelson <andyfaff@gmail.com> Date: Thu Nov 11 09:37:51 2021 +1100 MAINT: _tnc_module.pyx use np.float64 commit f7108cdd76908170d9887f1a7e5960780bce728d Author: Andrew Nelson <andyfaff@gmail.com> Date: Wed Nov 10 19:36:59 2021 +1100 MAINT: _tnc_module.pyx remove redundant import commit 1be278a849fd417800bd728f1df6e259ae967fc6 Author: Andrew Nelson <andyfaff@gmail.com> Date: Tue Oct 19 17:12:33 2021 +1100 ENH: move tnc to cython commit 5daf611bc34f751fcf39563606c3b85336a61755 Author: serge-sans-paille <serge.guelton@telecom-bretagne.eu> Date: Sat Nov 6 22:57:23 2021 +0100 Pythranized version of _matfuncs_sqrtm commit 31c219a5b717c85b12f4184991848fe9a5e7bcd0 Author: Matt Haberland <mhaberla@calpoly.edu> Date: Sat Sep 11 22:38:35 2021 -0700 DOC: stats: adjust bootstrap doc to emphasize that batch controls memory usage commit a8cc39d3d471cf363eb7ad0bf455e949ad23f2e5 Author: Matt Haberland <mhaberla@calpoly.edu> Date: Tue Sep 7 14:55:40 2021 -0700 DOC: update detailed roadmap commit b8f6439805f9b6bce5fe86ef741c94039b13a05c Author: Xingyu Liu <charlotteliu12x@gmail.com> Date: Wed Sep 1 20:23:31 2021 -0400 MAINT: use one dict to store arguments commit 6ba031918f5c65f06c4a95b7cdfde6dd3eb4f0c0 Author: Xingyu Liu <charlotteliu12x@gmail.com> Date: Mon Aug 30 00:20:38 2021 -0400 add test_strided and test_keywords commit c22b2b95ab52f21ea752d0795f25e574f182ace4 Author: Xingyu Liu <charlotteliu12x@gmail.com> Date: Tue Aug 24 16:34:49 2021 +0800 add test_all_dtypes and test_views commit bdd3adcb5865071aa3c8966488c6fb500ff3bb59 Author: Xingyu Liu <charlotteliu12x@gmail.com> Date: Sun Aug 8 00:17:12 2021 +0800 BUG: remove __init__ to avoid error:cannot collect test class TestSomersD because it has a __init__ constructor commit 92a02040139784392761ff0ac336c0c406e1266d Author: Xingyu Liu <charlotteliu12x@gmail.com> Date: Sat Aug 7 22:47:57 2021 +0800 TST: add tests for Pythran somersd commit fe38b51da94b75ce6f48aa50ce81b66ebe66c170 Author: 刘星雨 <charlotteliu12x@gmail.com> Date: Mon Jul 5 23:48:24 2021 +0800 TST: Add test for gh-14332 commit e15f28e3ae475151343a2e887b6b2642e5887f2f Author: 刘星雨 <charlotteliu12x@gmail.com> Date: Fri Jul 2 23:01:07 2021 +0800 BUG: fix wrong _bin_numbers result when the value is slightly smaller than the rightmost bin
Reference issue
Closes gh-14028
What does this implement/fix?
The PR fixed a few error in the comments of
lsqr.py
when using the non-zero initial guess.r2norm
should besqrt(r1norm^2 + damp^2*||x - x0||^2)
, wherex0
is the initial guess.Additional information