Navigation:

Log Message: py-scipy: updated to 1.13.0 SciPy 1.13.0 is the culmination of 3 months of hard work. This out-of-band release aims to support NumPy ``2.0.0``, and is backwards compatible to NumPy ``1.22.4``. The version of OpenBLAS used to build the PyPI wheels has been increased to ``0.3.26.dev``. This release requires Python 3.9+ and NumPy 1.22.4 or greater. For running on PyPy, PyPy3 6.0+ is required. ************************** Highlights of this release ************************** - Support for NumPy ``2.0.0``. - Interactive examples have been added to the documentation, allowing users to run the examples locally on embedded Jupyterlite notebooks in their browser. - Preliminary 1D array support for the COO and DOK sparse formats. - Several `scipy.stats` functions have gained support for additional ``axis``, ``nan_policy``, and ``keepdims`` arguments. `scipy.stats` also has several performance and accuracy improvements. ************ New features ************ `scipy.integrate` improvements ============================== - The ``terminal`` attribute of `scipy.integrate.solve_ivp` ``events`` callables now additionally accepts integer values to specify a number of occurrences required for termination, rather than the previous restriction of only accepting a ``bool`` value to terminate on the first registered event. `scipy.io` improvements ======================= - `scipy.io.wavfile.write` has improved ``dtype`` input validation. `scipy.interpolate` improvements ================================ - The Modified Akima Interpolation has been added to ``interpolate.Akima1DInterpolator``, available via the new ``method`` argument. - New method ``BSpline.insert_knot`` inserts a knot into a ``BSpline`` instance. This routine is similar to the module-level `scipy.interpolate.insert` function, and works with the BSpline objects instead of ``tck`` tuples. - ``RegularGridInterpolator`` gained the functionality to compute derivatives in place. For instance, ``RegularGridInterolator((x, y), values, method="cubic")(xi, nu=(1, 1))`` evaluates the mixed second derivative, :math:`\partial^2 / \partial x \partial y` at ``xi``. - Performance characteristics of tensor-product spline methods of ``RegularGridInterpolator`` have been changed: evaluations should be significantly faster, while construction might be slower. If you experience issues with construction times, you may need to experiment with optional keyword arguments ``solver`` and ``solver_args``. Previous behavior (fast construction, slow evaluations) can be obtained via `"*_legacy"` methods: ``method="cubic_legacy"`` is exactly equivalent to \ ``method="cubic"`` in previous releases. See ``gh-19633`` for details. `scipy.signal` improvements =========================== - Many filter design functions now have improved input validation for the sampling frequency (``fs``). `scipy.sparse` improvements =========================== - ``coo_array`` now supports 1D shapes, and has additional 1D support for ``min``, ``max``, ``argmin``, and ``argmax``. The DOK format now has preliminary 1D support as well, though only supports simple integer indices at the time of writing. - Experimental support has been added for ``pydata/sparse`` array inputs to `scipy.sparse.csgraph`. - ``dok_array`` and ``dok_matrix`` now have proper implementations of ``fromkeys``. - ``csr`` and ``csc`` formats now have improved ``setdiag`` performance. `scipy.spatial` improvements ============================ - ``voronoi_plot_2d`` now draws Voronoi edges to infinity more clearly when the aspect ratio is skewed. `scipy.special` improvements ============================ - All Fortran code, namely, ``AMOS``, ``specfun``, and ``cdflib`` libraries that the majority of special functions depend on, is ported to Cython/C. - The function ``factorialk`` now also supports faster, approximate calculation using ``exact=False``. `scipy.stats` improvements ========================== - `scipy.stats.rankdata` and `scipy.stats.wilcoxon` have been vectorized, improving their performance and the performance of hypothesis tests that depend on them. - ``stats.mannwhitneyu`` should now be faster due to a vectorized statistic calculation, improved caching, improved exploitation of symmetry, and a memory reduction. ``PermutationMethod`` support was also added. - `scipy.stats.mood` now has ``nan_policy`` and ``keepdims`` support. - `scipy.stats.brunnermunzel` now has ``axis`` and ``keepdims`` support. - `scipy.stats.friedmanchisquare`, `scipy.stats.shapiro`, `scipy.stats.normaltest`, `scipy.stats.skewtest`, `scipy.stats.kurtosistest`, `scipy.stats.f_oneway`, `scipy.stats.alexandergovern`, `scipy.stats.combine_pvalues`, and `scipy.stats.kstest` have gained ``axis``, ``nan_policy`` and ``keepdims`` support. - `scipy.stats.boxcox_normmax` has gained a ``ymax`` parameter to allow user specification of the maximum value of the transformed data. - `scipy.stats.vonmises` ``pdf`` method has been extended to support ``kappa=0``. The ``fit`` method is also more performant due to the use of non-trivial bounds to solve for ``kappa``. - High order ``moment`` calculations for `scipy.stats.powerlaw` are now more accurate. - The ``fit`` methods of `scipy.stats.gamma` (with ``method='mm'``) and `scipy.stats.loglaplace` are faster and more reliable. - `scipy.stats.goodness_of_fit` now supports the use of a custom ``statistic`` provided by the user. - `scipy.stats.wilcoxon` now supports ``PermutationMethod``, enabling calculation of accurate p-values in the presence of ties and zeros. - `scipy.stats.monte_carlo_test` now has improved robustness in the face of numerical noise. - `scipy.stats.wasserstein_distance_nd` was introduced to compute the Wasserstein-1 distance between two N-D discrete distributions. ******************* Deprecated features ******************* - Complex dtypes in ``PchipInterpolator`` and ``Akima1DInterpolator`` have been deprecated and will raise an error in SciPy 1.15.0. If you are trying to use the real components of the passed array, use ``np.real`` on ``y``. ****************************** Backwards incompatible changes ****************************** ************* Other changes ************* - The second argument of `scipy.stats.moment` has been renamed to ``order`` while maintaining backward compatibility.