Releases: scipy/scipy
SciPy 1.16.0
SciPy 1.16.0 Release Notes
SciPy 1.16.0
is the culmination of 6 months of hard work. It contains
many new features, numerous bug-fixes, improved test coverage and better
documentation. There have been a number of deprecations and API changes
in this release, which are documented below. All users are encouraged to
upgrade to this release, as there are a large number of bug-fixes and
optimizations. Before upgrading, we recommend that users check that
their own code does not use deprecated SciPy functionality (to do so,
run your code with python -Wd
and check for DeprecationWarning
s).
Our development attention will now shift to bug-fix releases on the
1.16.x branch, and on adding new features on the main branch.
This release requires Python 3.11-3.13
and NumPy 1.25.2
or greater.
Highlights of this release
- Improved experimental support for the Python array API standard, including
new support inscipy.signal
, and additional support inscipy.stats
and
scipy.special
. Improved support for JAX and Dask backends has been added,
with notable support inscipy.cluster.hierarchy
, many functions in
scipy.special
, and many of the trimmed statistics functions. scipy.optimize
now uses the new Python implementation from the
PRIMA
package for COBYLA. The PRIMA implementation fixes many bugs
in the old Fortran 77 implementation with a better performance on average.scipy.sparse.coo_array
now supports n-D arrays with reshaping, arithmetic and
reduction operations like sum/mean/min/max. No n-D indexing or
scipy.sparse.random_array
support yet.- Updated guide and tools for migration from sparse matrices to sparse arrays.
- Nearly all functions in the
scipy.linalg
namespace that accept array
arguments now support N-dimensional arrays to be processed as a batch. - Two new
scipy.signal
functions,scipy.signal.firwin_2d
and
scipy.signal.closest_STFT_dual_window
, for creation of a 2-D FIR filter and
scipy.signal.ShortTimeFFT
dual window calculation, respectively. - A new class,
scipy.spatial.transform.RigidTransform
, provides functionality
to convert between different representations of rigid transforms in 3-D
space. - A new function
scipy.ndimage.vectorized_filter
for generic filters that
take advantage of a vectorized Python callable was added.
New features
scipy.io
improvements
scipy.io.savemat
now provides informative warnings for invalid field names.scipy.io.mmread
now provides a clearer error message when provided with
a source file path that does not exist.scipy.io.wavfile.read
can now read non-seekable files.
scipy.integrate
improvements
- The error estimate of
scipy.integrate.tanhsinh
was improved.
scipy.interpolate
improvements
- Batch support was added to
scipy.interpolate.make_smoothing_spline
.
scipy.linalg
improvements
- Nearly all functions in the
scipy.linalg
namespace that accept array
arguments now support N-dimensional arrays to be processed as a batch.
Seelinalg_batch
for details. scipy.linalg.sqrtm
is rewritten in C and its performance is improved. It
also tries harder to return real-valued results for real-valued inputs if
possible. See the function docstring for more details. In this version the
input argumentdisp
and the optional output argumenterrest
are
deprecated and will be removed four versions later. Similarly, after
changing the underlying algorithm to recursion, theblocksize
keyword
argument has no effect and will be removed two versions later.- Wrappers for
?stevd
,?langb
,?sytri
,?hetri
and
?gbcon
were added toscipy.linalg.lapack
. - The default driver of
scipy.linalg.eigh_tridiagonal
was improved. scipy.linalg.solve
can now estimate the reciprocal condition number and
the matrix norm calculation is more efficient.
scipy.ndimage
improvements
- A new function
scipy.ndimage.vectorized_filter
for generic filters that
take advantage of a vectorized Python callable was added. scipy.ndimage.rotate
has improved performance, especially on ARM platforms.
scipy.optimize
improvements
- COBYLA was updated to use the new Python implementation from the
PRIMA
package.
The PRIMA implementation fixes many bugs
in the old Fortran 77 implementation. In addition, it results in fewer function evaluations on average
but it depends on the problem and for some
problems it can result in more function evaluations or a less optimal
result. For those cases the user can try modifying the initial and final
trust region radii given byrhobeg
andtol
respectively. A larger
rhobeg
can help the algorithm take bigger steps initially, while a
smallertol
can help it continue and find a better solution.
For more information, see the PRIMA documentation. - Several of the
scipy.optimize.minimize
methods, and the
scipy.optimize.least_squares
function, have been given aworkers
keyword. This allows parallelization of some calculations via a map-like
callable, such asmultiprocessing.Pool
. These parallelization
opportunities typically occur during numerical differentiation. This can
greatly speed up minimization when the objective function is expensive to
calculate. - The
lm
method ofscipy.optimize.least_squares
can now accept
3-point
andcs
for thejac
keyword. - The SLSQP Fortran 77 code was ported to C. When this method is used now the
constraint multipliers are exposed to the user through themultiplier
keyword of the returnedscipy.optimize.OptimizeResult
object. - NNLS code has been corrected and rewritten in C to address the performance
regression introduced in 1.15.x scipy.optimize.root
now warns for invalid inner parameters when using the
newton_krylov
method- The return value of minimization with
method='L-BFGS-B'
now has
a fasterhess_inv.todense()
implementation. Time complexity has improved
from cubic to quadratic. scipy.optimize.least_squares
has a newcallback
argument that is applicable
to thetrf
anddogbox
methods.callback
may be used to track
optimization results at each step or to provide custom conditions for
stopping.
scipy.signal
improvements
- A new function
scipy.signal.firwin_2d
for the creation of a 2-D FIR Filter
using the 1-D window method was added. scipy.signal.cspline1d_eval
andscipy.signal.qspline1d_eval
now provide
an informative error on empty input rather than hitting the recursion limit.- A new function
scipy.signal.closest_STFT_dual_window
to calculate the
scipy.signal.ShortTimeFFT
dual window of a given window closest to a
desired dual window. - A new classmethod
scipy.signal.ShortTimeFFT.from_win_equals_dual
to
create ascipy.signal.ShortTimeFFT
instance where the window and its dual
are equal up to a scaling factor. It allows to create short-time Fourier
transforms which are unitary mappings. - The performance of
scipy.signal.convolve2d
was improved.
scipy.sparse
improvements
scipy.sparse.coo_array
now supports n-D arrays using binary and reduction
operations.- Faster operations between two DIA arrays/matrices for: add, sub, multiply,
matmul. scipy.sparse.csgraph.dijkstra
shortest_path is more efficient.scipy.sparse.csgraph.yen
has performance improvements.- Support for lazy loading of
sparse.csgraph
andsparse.linalg
was
added.
scipy.spatial
improvements
- A new class,
scipy.spatial.transform.RigidTransform
, provides functionality
to convert between different representations of rigid transforms in 3-D
space, its application to vectors and transform composition.
It follows the same design approach asscipy.spatial.transform.Rotation
. scipy.spatial.transform.Rotation
now has an appropriate__repr__
method,
and improved performance for itsscipy.spatial.transform.Rotation.apply
method.
scipy.stats
improvements
- A new function
scipy.stats.quantile
, an array API compatible function for
quantile estimation, was added. scipy.stats.make_distribution
was extended to work with existing discrete
distributions and to facilitate the creation of custom distributions in the
new random variable infrastructure.- A new distribution,
scipy.stats.Binomial
, was added. - An
equal_var
keyword was added toscipy.stats.tukey_hsd
(enables the
Games-Howell test) andscipy.stats.f_oneway
(enables Welch ANOVA). - The moment calculation for
scipy.stats.gennorm
was improved. - The
scipy.stats.mode
implementation was vectorized, for faster batch
calculation. - Support for
axis
,nan_policy
, andkeepdims
keywords was added to
scipy.stats.power_divergence
,scipy.stats.chisquare
,
scipy.stats.pointbiserialr
,scipy.stats.kendalltau
,
scipy.stats.weightedtau
,scipy.stats.theilslopes
,
scipy.stats.siegelslopes
,scipy.stats.boxcox_llf
, and
scipy.stats.linregress
. - Support for
keepdims
andnan_policy
keywords was added to
`scipy....
SciPy 1.16.0rc2
SciPy 1.16.0 Release Notes
Note: SciPy 1.16.0
is not released yet!
SciPy 1.16.0
is the culmination of 6 months of hard work. It contains
many new features, numerous bug-fixes, improved test coverage and better
documentation. There have been a number of deprecations and API changes
in this release, which are documented below. All users are encouraged to
upgrade to this release, as there are a large number of bug-fixes and
optimizations. Before upgrading, we recommend that users check that
their own code does not use deprecated SciPy functionality (to do so,
run your code with python -Wd
and check for DeprecationWarning
s).
Our development attention will now shift to bug-fix releases on the
1.16.x branch, and on adding new features on the main branch.
This release requires Python 3.11-3.13
and NumPy 1.25.2
or greater.
Highlights of this release
- Improved experimental support for the Python array API standard, including
new support inscipy.signal
, and additional support inscipy.stats
and
scipy.special
. Improved support for JAX and Dask backends has been added,
with notable support inscipy.cluster.hierarchy
, many functions in
scipy.special
, and many of the trimmed statistics functions. scipy.optimize
now uses the new Python implementation from thePRIMA
package for COBYLA.
The PRIMA implementation fixes many bugs in the old Fortran 77 implementation with
a better performance on average.scipy.sparse.coo_array
now supports n-D arrays with reshaping, arithmetic and
reduction operations like sum/mean/min/max. No n-D indexing or
scipy.sparse.random_array
support yet.- Updated guide and tools for migration from sparse matrices to sparse arrays.
- Nearly all functions in the
scipy.linalg
namespace that accept array
arguments now support N-dimensional arrays to be processed as a batch. - Two new
scipy.signal
functions,scipy.signal.firwin_2d
and
scipy.signal.closest_STFT_dual_window
, for creation of a 2-D FIR filter and
scipy.signal.ShortTimeFFT
dual window calculation, respectively. - A new class,
scipy.spatial.transform.RigidTransform
, provides functionality
to convert between different representations of rigid transforms in 3-D
space.
New features
scipy.io
improvements
scipy.io.savemat
now provides informative warnings for invalid field names.scipy.io.mmread
now provides a clearer error message when provided with
a source file path that does not exist.scipy.io.wavfile.read
can now read non-seekable files.
scipy.integrate
improvements
- The error estimate of
scipy.integrate.tanhsinh
was improved.
scipy.interpolate
improvements
- Batch support was added to
scipy.interpolate.make_smoothing_spline
.
scipy.linalg
improvements
- Nearly all functions in the
scipy.linalg
namespace that accept array
arguments now support N-dimensional arrays to be processed as a batch.
See :ref:linalg_batch
for details. scipy.linalg.sqrtm
is rewritten in C and its performance is improved. It
also tries harder to return real-valued results for real-valued inputs if
possible. See the function docstring for more details. In this version the
input argumentdisp
and the optional output argumenterrest
are
deprecated and will be removed four versions later. Similarly, after
changing the underlying algorithm to recursion, theblocksize
keyword
argument has no effect and will be removed two versions later.- Wrappers for
?stevd
,?langb
,?sytri
,?hetri
and
?gbcon
were added toscipy.linalg.lapack
. - The default driver of
scipy.linalg.eigh_tridiagonal
was improved. scipy.linalg.solve
can now estimate the reciprocal condition number and
the matrix norm calculation is more efficient.
scipy.ndimage
improvements
- A new function
scipy.ndimage.vectorized_filter
for generic filters that
take advantage of a vectorized Python callable was added. scipy.ndimage.rotate
has improved performance, especially on ARM platforms.
scipy.optimize
improvements
- COBYLA was updated to use the new Python implementation from the
PRIMA
package.
The PRIMA implementation fixes many bugs
in the old Fortran 77 implementation. In addition, it results in fewer function evaluations on average,
but it depends on the problem and for some
problems it can result in more function evaluations or a less optimal
result. For those cases the user can try modifying the initial and final
trust region radii given byrhobeg
andtol
respectively. A larger
rhobeg
can help the algorithm take bigger steps initially, while a
smallertol
can help it continue and find a better solution.
For more information, see the PRIMA documentation. - Several of the
scipy.optimize.minimize
methods, and the
scipy.optimize.least_squares
function, have been given aworkers
keyword. This allows parallelization of some calculations via a map-like
callable, such asmultiprocessing.Pool
. These parallelization
opportunities typically occur during numerical differentiation. This can
greatly speed up minimization when the objective function is expensive to
calculate. - The
lm
method ofscipy.optimize.least_squares
can now accept
3-point
andcs
for thejac
keyword. - The SLSQP Fortran 77 code was ported to C. When this method is used now the
constraint multipliers are exposed to the user through themultiplier
keyword of the returnedscipy.optimize.OptimizeResult
object. - NNLS code has been corrected and rewritten in C to address the performance
regression introduced in 1.15.x scipy.optimize.root
now warns for invalid inner parameters when using the
newton_krylov
method- The return value of minimization with
method='L-BFGS-B'
now has
a fasterhess_inv.todense()
implementation. Time complexity has improved
from cubic to quadratic. scipy.optimize.least_squares
has a newcallback
argument that is applicable
to thetrf
anddogbox
methods.callback
may be used to track
optimization results at each step or to provide custom conditions for
stopping.
scipy.signal
improvements
- A new function
scipy.signal.firwin_2d
for the creation of a 2-D FIR Filter
using the 1-D window method was added. scipy.signal.cspline1d_eval
andscipy.signal.qspline1d_eval
now provide
an informative error on empty input rather than hitting the recursion limit.- A new function
scipy.signal.closest_STFT_dual_window
to calculate the
scipy.signal.ShortTimeFFT
dual window of a given window closest to a
desired dual window. - A new classmethod
scipy.signal.ShortTimeFFT.from_win_equals_dual
to
create ascipy.signal.ShortTimeFFT
instance where the window and its dual
are equal up to a scaling factor. It allows to create short-time Fourier
transforms which are unitary mappings. - The performance of
scipy.signal.convolve2d
was improved.
scipy.sparse
improvements
scipy.sparse.coo_array
now supports n-D arrays using binary and reduction
operations.- Faster operations between two DIA arrays/matrices for: add, sub, multiply,
matmul. scipy.sparse.csgraph.dijkstra
shortest_path is more efficient.scipy.sparse.csgraph.yen
has performance improvements.- Support for lazy loading of
sparse.csgraph
andsparse.linalg
was
added.
scipy.spatial
improvements
- A new class,
scipy.spatial.transform.RigidTransform
, provides functionality
to convert between different representations of rigid transforms in 3-D
space, its application to vectors and transform composition.
It follows the same design approach asscipy.spatial.transform.Rotation
. scipy.spatial.transform.Rotation
now has an appropriate__repr__
method,
and improved performance for itsscipy.spatial.transform.Rotation.apply
method.
scipy.stats
improvements
- A new function
scipy.stats.quantile
, an array API compatible function for
quantile estimation, was added. scipy.stats.make_distribution
was extended to work with existing discrete
distributions and to facilitate the creation of custom distributions in the
new random variable infrastructure.- A new distribution,
scipy.stats.Binomial
, was added. - An
equal_var
keyword was added toscipy.stats.tukey_hsd
(enables the
Games-Howell test) andscipy.stats.f_oneway
(enables Welch ANOVA). - The moment calculation for
scipy.stats.gennorm
was improved. - The
scipy.stats.mode
implementation was vectorized, for faster batch
calculation. - Support for
axis
,nan_policy
, andkeepdims
keywords was added to
scipy.stats.power_divergence
,scipy.stats.chisquare
,
scipy.stats.pointbiserialr
,scipy.stats.kendalltau
,
scipy.stats.weightedtau
,scipy.stats.theilslopes
,
scipy.stats.siegelslopes
,scipy.stats.boxcox_llf
, and
scipy.stats.linregress
. - Support for
keepdims
andnan_policy
keywords was added to
scipy.stats.gstd
. - The performance of
scipy.stats.special_ortho_group
andscipy.stats.pearsonr
was improved. - Support for an ``rng`...
SciPy 1.16.0rc1
SciPy 1.16.0 Release Notes
Note: SciPy 1.16.0
is not released yet!
SciPy 1.16.0
is the culmination of 6 months of hard work. It contains
many new features, numerous bug-fixes, improved test coverage and better
documentation. There have been a number of deprecations and API changes
in this release, which are documented below. All users are encouraged to
upgrade to this release, as there are a large number of bug-fixes and
optimizations. Before upgrading, we recommend that users check that
their own code does not use deprecated SciPy functionality (to do so,
run your code with python -Wd
and check for DeprecationWarning
s).
Our development attention will now shift to bug-fix releases on the
1.16.x branch, and on adding new features on the main branch.
This release requires Python 3.11-3.13
and NumPy 1.25.2
or greater.
Highlights of this release
- Improved experimental support for the Python array API standard, including
new support inscipy.signal
, and additional support inscipy.stats
and
scipy.special
. Improved support for JAX and Dask backends has been added,
with notable support inscipy.cluster.hierarchy
, many functions in
scipy.special
, and many of the trimmed statistics functions. scipy.optimize
now uses the new Python implementation from the
PRIMA
package for COBYLA. The PRIMA implementation fixes many bugs
in the old Fortran 77 implementation with a better performance on average.scipy.sparse.coo_array
now supports n-D arrays with reshaping, arithmetic and
reduction operations like sum/mean/min/max. No n-D indexing or
scipy.sparse.random_array
support yet.- Updated guide and tools for migration from sparse matrices to sparse arrays.
- All functions in the
scipy.linalg
namespace that accept array arguments
now support N-dimensional arrays to be processed as a batch. - Two new
scipy.signal
functions,scipy.signal.firwin_2d
and
scipy.signal.closest_STFT_dual_window
, for creation of a 2-D FIR filter and
scipy.signal.ShortTimeFFT
dual window calculation, respectively. - A new class,
scipy.spatial.transform.RigidTransform
, provides functionality
to convert between different representations of rigid transforms in 3-D
space.
New features
scipy.io
improvements
scipy.io.savemat
now provides informative warnings for invalid field names.scipy.io.mmread
now provides a clearer error message when provided with
a source file path that does not exist.scipy.io.wavfile.read
can now read non-seekable files.
scipy.integrate
improvements
- The error estimate of
scipy.integrate.tanhsinh
was improved.
scipy.interpolate
improvements
- Batch support was added to
scipy.interpolate.make_smoothing_spline
.
scipy.linalg
improvements
- All functions in the
scipy.linalg
namespace that accept array arguments
now support N-dimensional arrays to be processed as a batch.
See :ref:linalg_batch
for details. scipy.linalg.sqrtm
is rewritten in C and its performance is improved. It
also tries harder to return real-valued results for real-valued inputs if
possible. See the function docstring for more details. In this version the
input argumentdisp
and the optional output argumenterrest
are
deprecated and will be removed four versions later. Similarly, after
changing the underlying algorithm to recursion, theblocksize
keyword
argument has no effect and will be removed two versions later.- Wrappers for
?stevd
,?langb
,?sytri
,?hetri
and
?gbcon
were added toscipy.linalg.lapack
. - The default driver of
scipy.linalg.eigh_tridiagonal
was improved. scipy.linalg.solve
can now estimate the reciprocal condition number and
the matrix norm calculation is more efficient.
scipy.ndimage
improvements
- A new function
scipy.ndimage.vectorized_filter
for generic filters that
take advantage of a vectorized Python callable was added. scipy.ndimage.rotate
has improved performance, especially on ARM platforms.
scipy.optimize
improvements
- COBYLA was updated to use the new Python implementation from the PRIMA package.
The PRIMA implementation fixes many bugs
in the old Fortran 77 implementation. In addition, it results in fewer function evaluations on average,
but it depends on the problem and for some
problems it can result in more function evaluations or a less optimal
result. For those cases the user can try modifying the initial and final
trust region radii given byrhobeg
andtol
respectively. A larger
rhobeg
can help the algorithm take bigger steps initially, while a
smallertol
can help it continue and find a better solution.
For more information, see the PRIMA documentation. - Several of the
scipy.optimize.minimize
methods, and the
scipy.optimize.least_squares
function, have been given aworkers
keyword. This allows parallelization of some calculations via a map-like
callable, such asmultiprocessing.Pool
. These parallelization
opportunities typically occur during numerical differentiation. This can
greatly speed up minimization when the objective function is expensive to
calculate. - The
lm
method ofscipy.optimize.least_squares
can now accept
3-point
andcs
for thejac
keyword. - The SLSQP Fortran 77 code was ported to C. When this method is used now the
constraint multipliers are exposed to the user through themultiplier
keyword of the returnedscipy.optimize.OptimizeResult
object. - NNLS code has been corrected and rewritten in C to address the performance
regression introduced in 1.15.x scipy.optimize.root
now warns for invalid inner parameters when using the
newton_krylov
method- The return value of minimization with
method='L-BFGS-B'
now has
a fasterhess_inv.todense()
implementation. Time complexity has improved
from cubic to quadratic. scipy.optimize.least_squares
has a newcallback
argument that is applicable
to thetrf
anddogbox
methods.callback
may be used to track
optimization results at each step or to provide custom conditions for
stopping.
scipy.signal
improvements
- A new function
scipy.signal.firwin_2d
for the creation of a 2-D FIR Filter
using the 1-D window method was added. scipy.signal.cspline1d_eval
andscipy.signal.qspline1d_eval
now provide
an informative error on empty input rather than hitting the recursion limit.- A new function
scipy.signal.closest_STFT_dual_window
to calculate the
~scipy.signal.ShortTimeFFT
dual window of a given window closest to a
desired dual window. - A new classmethod
scipy.signal.ShortTimeFFT.from_win_equals_dual
to
create a~scipy.signal.ShortTimeFFT
instance where the window and its dual
are equal up to a scaling factor. It allows to create short-time Fourier
transforms which are unitary mappings. - The performance of
scipy.signal.convolve2d
was improved.
scipy.sparse
improvements
scipy.sparse.coo_array
now supports n-D arrays using binary and reduction
operations.- Faster operations between two DIA arrays/matrices for: add, sub, multiply,
matmul. scipy.sparse.csgraph.dijkstra
shortest_path is more efficient.scipy.sparse.csgraph.yen
has performance improvements.- Support for lazy loading of
sparse.csgraph
andsparse.linalg
was
added.
scipy.spatial
improvements
- A new class,
scipy.spatial.transform.RigidTransform
, provides functionality
to convert between different representations of rigid transforms in 3-D
space, its application to vectors and transform composition.
It follows the same design approach asscipy.spatial.transform.Rotation
. scipy.spatial.transform.Rotation
now has an appropriate__repr__
method,
and improved performance for itsscipy.spatial.transform.Rotation.apply
method.
scipy.stats
improvements
- A new function
scipy.stats.quantile
, an array API compatible function for
quantile estimation, was added. scipy.stats.make_distribution
was extended to work with existing discrete
distributions and to facilitate the creation of custom distributions in the
new random variable infrastructure.- A new distribution,
scipy.stats.Binomial
, was added. - An
equal_var
keyword was added toscipy.stats.tukey_hsd
(enables the
Games-Howell test) andscipy.stats.f_oneway
(enables Welch ANOVA). - The moment calculation for
scipy.stats.gennorm
was improved. - The
scipy.stats.mode
implementation was vectorized, for faster batch
calculation. - Support for
axis
,nan_policy
, andkeepdims
keywords was added to
scipy.stats.power_divergence
,scipy.stats.chisquare
,
scipy.stats.pointbiserialr
,scipy.stats.kendalltau
,
scipy.stats.weightedtau
,scipy.stats.theilslopes
,
scipy.stats.siegelslopes
, andscipy.stats.boxcox_llf
. - The performance of
scipy.stats.special_ortho_group
andscipy.stats.pearsonr
was improved.
Array API Standard Support
Experimental support for array libraries other than NumPy has been added to
multiple submodules in recent ...
SciPy 1.15.3
SciPy 1.15.3 Release Notes
SciPy 1.15.3
is a bug-fix release with no new features
compared to 1.15.2
.
For the complete issue and PR lists see the raw release notes.
Authors
- Name (commits)
- aiudirog (1) +
- Nickolai Belakovski (1)
- Florian Bourgey (1) +
- Richard Strong Bowen (2) +
- Jake Bowhay (1)
- Dietrich Brunn (2)
- Evgeni Burovski (1)
- Lucas Colley (1)
- Ralf Gommers (1)
- Saarthak Gupta (1) +
- Matt Haberland (4)
- Chengyu Han (1) +
- Lukas Huber (1) +
- Nick ODell (2)
- Ilhan Polat (4)
- Tyler Reddy (52)
- Neil Schemenauer (1) +
- Dan Schult (1)
- sildater (1) +
- Gagandeep Singh (4)
- Albert Steppi (2)
- Matthias Urlichs (1) +
- David Varela (1) +
- ਗਗਨਦੀਪ ਸਿੰਘ (Gagandeep Singh) (3)
A total of 24 people contributed to this release.
People with a "+" by their names contributed a patch for the first time.
This list of names is automatically generated, and may not be fully complete.
SciPy 1.15.2
SciPy 1.15.2 Release Notes
SciPy 1.15.2
is a bug-fix release with no new features
compared to 1.15.1
. Free-threaded Python 3.13
wheels
for Linux ARM platform are available on PyPI starting with
this release.
Authors
- Name (commits)
- Peter Bell (1)
- Charles Bousseau (1) +
- Jake Bowhay (3)
- Matthew Brett (1)
- Ralf Gommers (3)
- Rohit Goswami (1)
- Matt Haberland (4)
- Parth Nobel (1) +
- Tyler Reddy (33)
- Daniel Schmitz (2)
- Dan Schult (5)
- Scott Shambaugh (2)
- Edgar Andrés Margffoy Tuay (1)
- Warren Weckesser (4)
A total of 14 people contributed to this release.
People with a "+" by their names contributed a patch for the first time.
This list of names is automatically generated, and may not be fully complete.
SciPy 1.15.1
SciPy 1.15.1 Release Notes
SciPy 1.15.1
is a bug-fix release with no new features
compared to 1.15.0
. Importantly, an issue with the
import of scipy.optimize
breaking other packages
has been fixed.
Authors
- Name (commits)
- Ralf Gommers (3)
- Rohit Goswami (1)
- Matt Haberland (2)
- Tyler Reddy (7)
- Daniel Schmitz (1)
A total of 5 people contributed to this release.
People with a "+" by their names contributed a patch for the first time.
This list of names is automatically generated, and may not be fully complete.
SciPy 1.15.0
SciPy 1.15.0 Release Notes
SciPy 1.15.0
is the culmination of 6
months of hard work. It contains
many new features, numerous bug-fixes, improved test coverage and better
documentation. There have been a number of deprecations and API changes
in this release, which are documented below. All users are encouraged to
upgrade to this release, as there are a large number of bug-fixes and
optimizations. Before upgrading, we recommend that users check that
their own code does not use deprecated SciPy functionality (to do so,
run your code with python -Wd
and check for DeprecationWarning
s).
Our development attention will now shift to bug-fix releases on the
1.15.x branch, and on adding new features on the main branch.
This release requires Python 3.10-3.13
and NumPy 1.23.5
or greater.
Highlights of this release
-
Sparse arrays are now fully functional for 1-D and 2-D arrays. We recommend
that all new code use sparse arrays instead of sparse matrices and that
developers start to migrate their existing code from sparse matrix to sparse
array:migration_to_sparray
. Bothsparse.linalg
andsparse.csgraph
work with either sparse matrix or sparse array and work internally with
sparse array. -
Sparse arrays now provide basic support for n-D arrays in the COO format
includingadd
,subtract
,reshape
,transpose
,matmul
,
dot
,tensordot
and others. More functionality is coming in future
releases. -
Preliminary support for free-threaded Python 3.13.
-
New probability distribution features in
scipy.stats
can be used to improve
the speed and accuracy of existing continuous distributions and perform new
probability calculations. -
Several new features support vectorized calculations with Python Array API
Standard compatible input (see "Array API Standard Support" below):scipy.differentiate
is a new top-level submodule for accurate
estimation of derivatives of black box functions.scipy.optimize.elementwise
contains new functions for root-finding and
minimization of univariate functions.scipy.integrate
offers new functionscubature
,tanhsinh
, and
nsum
for multivariate integration, univariate integration, and
univariate series summation, respectively.
-
scipy.interpolate.AAA
adds the AAA algorithm for barycentric rational
approximation of real or complex functions. -
scipy.special
adds new functions offering improved Legendre function
implementations with a more consistent interface.
New features
scipy.differentiate
introduction
The new scipy.differentiate
sub-package contains functions for accurate
estimation of derivatives of black box functions.
- Use
scipy.differentiate.derivative
for first-order derivatives of
scalar-in, scalar-out functions. - Use
scipy.differentiate.jacobian
for first-order partial derivatives of
vector-in, vector-out functions. - Use
scipy.differentiate.hessian
for second-order partial derivatives of
vector-in, scalar-out functions.
All functions use high-order finite difference rules with adaptive (real)
step size. To facilitate batch computation, these functions are vectorized
and support several Array API compatible array libraries in addition to NumPy
(see "Array API Standard Support" below).
scipy.integrate
improvements
- The new
scipy.integrate.cubature
function supports multidimensional
integration, and has support for approximating integrals with
one or more sets of infinite limits. scipy.integrate.tanhsinh
is now exposed for public use, allowing
evaluation of a convergent integral using tanh-sinh quadrature.scipy.integrate.nsum
evaluates finite and infinite series and their
logarithms.scipy.integrate.lebedev_rule
computes abscissae and weights for
integration over the surface of a sphere.- The
QUADPACK
Fortran77 package has been ported to C.
scipy.interpolate
improvements
scipy.interpolate.AAA
adds the AAA algorithm for barycentric rational
approximation of real or complex functions.scipy.interpolate.FloaterHormannInterpolator
adds barycentric rational
interpolation.- New functions
scipy.interpolate.make_splrep
and
scipy.interpolate.make_splprep
implement construction of smoothing splines.
The algorithmic content is equivalent to FITPACK (splrep
andsplprep
functions, and*UnivariateSpline
classes) and the user API is consistent
withmake_interp_spline
: these functions receive data arrays and return
ascipy.interpolate.BSpline
instance. - New generator function
scipy.interpolate.generate_knots
implements the
FITPACK strategy for selecting knots of a smoothing spline given the
smoothness parameter,s
. The function exposes the internal logic of knot
selection thatsplrep
and*UnivariateSpline
was using.
scipy.linalg
improvements
scipy.linalg.interpolative
Fortran77 code has been ported to Cython.scipy.linalg.solve
supports several new values for theassume_a
argument, enabling faster computation for diagonal, tri-diagonal, banded, and
triangular matrices. Also, whenassume_a
is left unspecified, the
function now automatically detects and exploits diagonal, tri-diagonal,
and triangular structures.scipy.linalg
matrix creation functions (scipy.linalg.circulant
,
scipy.linalg.companion
,scipy.linalg.convolution_matrix
,
scipy.linalg.fiedler
,scipy.linalg.fiedler_companion
, and
scipy.linalg.leslie
) now support batch
matrix creation.scipy.linalg.funm
is faster.scipy.linalg.orthogonal_procrustes
now supports complex input.- Wrappers for the following LAPACK routines have been added in
scipy.linalg.lapack
:?lantr
,?sytrs
,?hetrs
,?trcon
,
and?gtcon
. scipy.linalg.expm
was rewritten in C.scipy.linalg.null_space
now accepts the new argumentsoverwrite_a
,
check_finite
, andlapack_driver
.id_dist
Fortran code was rewritten in Cython.
scipy.ndimage
improvements
- Several additional filtering functions now support an
axes
argument
that specifies which axes of the input filtering is to be performed on.
These includecorrelate
,convolve
,generic_laplace
,laplace
,
gaussian_laplace
,derivative2
,generic_gradient_magnitude
,
gaussian_gradient_magnitude
andgeneric_filter
. - The binary and grayscale morphology functions now support an
axes
argument that specifies which axes of the input filtering is to be performed
on. scipy.ndimage.rank_filter
time complexity has improved fromn
to
log(n)
.
scipy.optimize
improvements
- The vendored HiGHS library has been upgraded from
1.4.0
to1.8.0
,
bringing accuracy and performance improvements to solvers. - The
MINPACK
Fortran77 package has been ported to C. - The
L-BFGS-B
Fortran77 package has been ported to C. - The new
scipy.optimize.elementwise
namespace includes functions
bracket_root
,find_root
,bracket_minimum
, andfind_minimum
for root-finding and minimization of univariate functions. To facilitate
batch computation, these functions are vectorized and support several
Array API compatible array libraries in addition to NumPy (see
"Array API Standard Support" below). Compared to existing functions (e.g.
scipy.optimize.root_scalar
andscipy.optimize.minimize_scalar
),
these functions can offer speedups of over 100x when used with NumPy arrays,
and even greater gains are possible with other Array API Standard compatible
array libraries (e.g. CuPy). scipy.optimize.differential_evolution
now supports more general use of
workers
, such as passing a map-like callable.scipy.optimize.nnls
was rewritten in Cython.HessianUpdateStrategy
now supports__matmul__
.
scipy.signal
improvements
- Add functionality of complex-valued waveforms to
signal.chirp()
. scipy.signal.lombscargle
has two new arguments,weights
and
floating_mean
, enabling sample weighting and removal of an unknown
y-offset independently for each frequency. Additionally, thenormalize
argument includes a new option to return the complex representation of the
amplitude and phase.- New function
scipy.signal.envelope
for computation of the envelope of a
real or complex valued signal.
scipy.sparse
improvements
- A migration guide is now available for
moving from sparse.matrix to sparse.array in your code/library. - Sparse arrays now support indexing for 1-D and 2-D arrays. So, sparse
arrays are now fully functional for 1-D and 2D. - n-D sparse arrays in COO format can now be constructed, reshaped and used
for basic arithmetic. - New functions
sparse.linalg.is_sptriangular
and
sparse.linalg.spbandwidth
mimic the existing dense tools
linalg.is_triangular
andlinalg.bandwidth
. sparse.linalg
andsparse.csgraph
now work with sparse arrays. Be
careful that your index arrays are 32-bit. We are working on 64bit support.- The vendored
ARPACK
library has been upgraded to version3.9.1
. - COO, CSR, CSC and LIL formats now support the
axis
argument for
count_nonzero
. - Sparse arrays and matrices may now raise errors when initialized with
incompatib...
SciPy 1.15.0rc2
SciPy 1.15.0 Release Notes
Note: SciPy 1.15.0
is not released yet!
SciPy 1.15.0
is the culmination of 6 months of hard work. It contains
many new features, numerous bug-fixes, improved test coverage and better
documentation. There have been a number of deprecations and API changes
in this release, which are documented below. All users are encouraged to
upgrade to this release, as there are a large number of bug-fixes and
optimizations. Before upgrading, we recommend that users check that
their own code does not use deprecated SciPy functionality (to do so,
run your code with python -Wd
and check for DeprecationWarning
s).
Our development attention will now shift to bug-fix releases on the
1.15.x branch, and on adding new features on the main branch.
This release requires Python 3.10-3.13
and NumPy 1.23.5
or greater.
Highlights of this release
-
Sparse arrays are now fully functional for 1-D and 2-D arrays. We recommend
that all new code use sparse arrays instead of sparse matrices and that
developers start to migrate their existing code from sparse matrix to sparse
array:migration_to_sparray
. Bothsparse.linalg
andsparse.csgraph
work with either sparse matrix or sparse array and work internally with
sparse array. -
Sparse arrays now provide basic support for n-D arrays in the COO format
includingadd
,subtract
,reshape
,transpose
,matmul
,
dot
,tensordot
and others. More functionality is coming in future
releases. -
Preliminary support for free-threaded Python 3.13.
-
New probability distribution features in
scipy.stats
can be used to improve
the speed and accuracy of existing continuous distributions and perform new
probability calculations. -
Several new features support vectorized calculations with Python Array API
Standard compatible input (see "Array API Standard Support" below):scipy.differentiate
is a new top-level submodule for accurate
estimation of derivatives of black box functions.scipy.optimize.elementwise
contains new functions for root-finding and
minimization of univariate functions.scipy.integrate
offers new functionscubature
,tanhsinh
, and
nsum
for multivariate integration, univariate integration, and
univariate series summation, respectively.
-
scipy.interpolate.AAA
adds the AAA algorithm for barycentric rational
approximation of real or complex functions. -
scipy.special
adds new functions offering improved Legendre function
implementations with a more consistent interface.
New features
scipy.differentiate
introduction
The new scipy.differentiate
sub-package contains functions for accurate
estimation of derivatives of black box functions.
- Use
scipy.differentiate.derivative
for first-order derivatives of
scalar-in, scalar-out functions. - Use
scipy.differentiate.jacobian
for first-order partial derivatives of
vector-in, vector-out functions. - Use
scipy.differentiate.hessian
for second-order partial derivatives of
vector-in, scalar-out functions.
All functions use high-order finite difference rules with adaptive (real)
step size. To facilitate batch computation, these functions are vectorized
and support several Array API compatible array libraries in addition to NumPy
(see "Array API Standard Support" below).
scipy.integrate
improvements
- The new
scipy.integrate.cubature
function supports multidimensional
integration, and has support for approximating integrals with
one or more sets of infinite limits. scipy.integrate.tanhsinh
is now exposed for public use, allowing
evaluation of a convergent integral using tanh-sinh quadrature.scipy.integrate.nsum
evaluates finite and infinite series and their
logarithms.scipy.integrate.lebedev_rule
computes abscissae and weights for
integration over the surface of a sphere.- The
QUADPACK
Fortran77 package has been ported to C.
scipy.interpolate
improvements
scipy.interpolate.AAA
adds the AAA algorithm for barycentric rational
approximation of real or complex functions.scipy.interpolate.FloaterHormannInterpolator
adds barycentric rational
interpolation.- New functions
scipy.interpolate.make_splrep
and
scipy.interpolate.make_splprep
implement construction of smoothing splines.
The algorithmic content is equivalent to FITPACK (splrep
andsplprep
functions, and*UnivariateSpline
classes) and the user API is consistent
withmake_interp_spline
: these functions receive data arrays and return
ascipy.interpolate.BSpline
instance. - New generator function
scipy.interpolate.generate_knots
implements the
FITPACK strategy for selecting knots of a smoothing spline given the
smoothness parameter,s
. The function exposes the internal logic of knot
selection thatsplrep
and*UnivariateSpline
was using.
scipy.linalg
improvements
scipy.linalg.interpolative
Fortran77 code has been ported to Cython.scipy.linalg.solve
supports several new values for theassume_a
argument, enabling faster computation for diagonal, tri-diagonal, banded, and
triangular matrices. Also, whenassume_a
is left unspecified, the
function now automatically detects and exploits diagonal, tri-diagonal,
and triangular structures.scipy.linalg
matrix creation functions (scipy.linalg.circulant
,
scipy.linalg.companion
,scipy.linalg.convolution_matrix
,
scipy.linalg.fiedler
,scipy.linalg.fiedler_companion
, and
scipy.linalg.leslie
) now support batch
matrix creation.scipy.linalg.funm
is faster.scipy.linalg.orthogonal_procrustes
now supports complex input.- Wrappers for the following LAPACK routines have been added in
scipy.linalg.lapack
:?lantr
,?sytrs
,?hetrs
,?trcon
,
and?gtcon
. scipy.linalg.expm
was rewritten in C.scipy.linalg.null_space
now accepts the new argumentsoverwrite_a
,
check_finite
, andlapack_driver
.id_dist
Fortran code was rewritten in Cython.
scipy.ndimage
improvements
- Several additional filtering functions now support an
axes
argument
that specifies which axes of the input filtering is to be performed on.
These includecorrelate
,convolve
,generic_laplace
,laplace
,
gaussian_laplace
,derivative2
,generic_gradient_magnitude
,
gaussian_gradient_magnitude
andgeneric_filter
. - The binary and grayscale morphology functions now support an
axes
argument that specifies which axes of the input filtering is to be performed
on. scipy.ndimage.rank_filter
time complexity has improved fromn
to
log(n)
.
scipy.optimize
improvements
- The vendored HiGHS library has been upgraded from
1.4.0
to1.8.0
,
bringing accuracy and performance improvements to solvers. - The
MINPACK
Fortran77 package has been ported to C. - The
L-BFGS-B
Fortran77 package has been ported to C. - The new
scipy.optimize.elementwise
namespace includes functions
bracket_root
,find_root
,bracket_minimum
, andfind_minimum
for root-finding and minimization of univariate functions. To facilitate
batch computation, these functions are vectorized and support several
Array API compatible array libraries in addition to NumPy (see
"Array API Standard Support" below). Compared to existing functions (e.g.
scipy.optimize.root_scalar
andscipy.optimize.minimize_scalar
),
these functions can offer speedups of over 100x when used with NumPy arrays,
and even greater gains are possible with other Array API Standard compatible
array libraries (e.g. CuPy). scipy.optimize.differential_evolution
now supports more general use of
workers
, such as passing a map-like callable.scipy.optimize.nnls
was rewritten in Cython.HessianUpdateStrategy
now supports__matmul__
.
scipy.signal
improvements
- Add functionality of complex-valued waveforms to
signal.chirp()
. scipy.signal.lombscargle
has two new arguments,weights
and
floating_mean
, enabling sample weighting and removal of an unknown
y-offset independently for each frequency. Additionally, thenormalize
argument includes a new option to return the complex representation of the
amplitude and phase.- New function
scipy.signal.envelope
for computation of the envelope of a
real or complex valued signal.
scipy.sparse
improvements
- A migration guide is now available for
moving from sparse.matrix to sparse.array in your code/library. - Sparse arrays now support indexing for 1-D and 2-D arrays. So, sparse
arrays are now fully functional for 1-D and 2D. - n-D sparse arrays in COO format can now be constructed, reshaped and used
for basic arithmetic. - New functions
sparse.linalg.is_sptriangular
and
sparse.linalg.spbandwidth
mimic the existing dense tools
linalg.is_triangular
andlinalg.bandwidth
. sparse.linalg
andsparse.csgraph
now work with sparse arrays. Be
careful that your index arrays are 32-bit. We are working on 64bit support.- The vendored
ARPACK
library has been upgraded to version3.9.1
. - COO, CSR, CSC and LIL formats now support the
axis
argument for
count_nonzero
. - Sparse arrays and matrices may now rai...
SciPy 1.15.0rc1
SciPy 1.15.0 Release Notes
Note: SciPy 1.15.0
is not released yet!
SciPy 1.15.0
is the culmination of 6
months of hard work. It contains
many new features, numerous bug-fixes, improved test coverage and better
documentation. There have been a number of deprecations and API changes
in this release, which are documented below. All users are encouraged to
upgrade to this release, as there are a large number of bug-fixes and
optimizations. Before upgrading, we recommend that users check that
their own code does not use deprecated SciPy functionality (to do so,
run your code with python -Wd
and check for DeprecationWarning
s).
Our development attention will now shift to bug-fix releases on the
1.15.x branch, and on adding new features on the main branch.
This release requires Python 3.10-3.13
and NumPy 1.23.5
or greater.
Highlights of this release
- Sparse arrays are now fully functional for 1-D and 2-D arrays. We recommend
that all new code use sparse arrays instead of sparse matrices and that
developers start to migrate their existing code from sparse matrix to sparse
array:migration_to_sparray
. Bothsparse.linalg
andsparse.csgraph
work with either sparse matrix or sparse array and work internally with
sparse array. - Sparse arrays now provide basic support for n-D arrays in the COO format
includingadd
,subtract
,reshape
,transpose
,matmul
,
dot
,tensordot
and others. More functionality is coming in future
releases. - Preliminary support for free-threaded Python 3.13.
- New probability distribution features in
scipy.stats
can be used to improve
the speed and accuracy of existing continuous distributions and perform new
probability calculations. scipy.differentiate
is a new top-level submodule for accurate
estimation of derivatives of black box functions.scipy.optimize.elementwise
provides vectorized root-finding and
minimization of univariate functions, and it supports the array API
as do newintegrate
functionstanhsinh
,nsum
, andcubature
.scipy.interpolate.AAA
adds the AAA algorithm for barycentric rational
approximation of real or complex functions.
New features
scipy.differentiate
introduction
The new scipy.differentiate
sub-package contains functions for accurate
estimation of derivatives of black box functions.
- Use
scipy.differentiate.derivative
for first-order derivatives of
scalar-in, scalar-out functions. - Use
scipy.differentiate.jacobian
for first-order partial derivatives of
vector-in, vector-out functions. - Use
scipy.differentiate.hessian
for second-order partial derivatives of
vector-in, scalar-out functions.
All functions use high-order finite difference rules with adaptive (real)
step size. To facilitate batch computation, these functions are vectorized
and support several Array API compatible array libraries in addition to NumPy
(see "Array API Standard Support" below).
scipy.integrate
improvements
- The
QUADPACK
Fortran77 package has been ported to C. scipy.integrate.lebedev_rule
computes abscissae and weights for
integration over the surface of a sphere.scipy.integrate.nsum
evaluates finite and infinite series and their
logarithms.scipy.integrate.tanhsinh
is now exposed for public use, allowing
evaluation of a convergent integral using tanh-sinh quadrature.- The new
scipy.integrate.cubature
function supports multidimensional
integration, and has support for approximating integrals with
one or more sets of infinite limits.
scipy.interpolate
improvements
scipy.interpolate.AAA
adds the AAA algorithm for barycentric rational
approximation of real or complex functions.scipy.interpolate.FloaterHormannInterpolator
adds barycentric rational
interpolation.- New functions
scipy.interpolate.make_splrep
and
scipy.interpolate.make_splprep
implement construction of smoothing splines.
The algorithmic content is equivalent to FITPACK (splrep
andsplprep
functions, and*UnivariateSpline
classes) and the user API is consistent
withmake_interp_spline
: these functions receive data arrays and return
ascipy.interpolate.BSpline
instance. - New generator function
scipy.interpolate.generate_knots
implements the
FITPACK strategy for selecting knots of a smoothing spline given the
smoothness parameter,s
. The function exposes the internal logic of knot
selection thatsplrep
and*UnivariateSpline
was using.
scipy.linalg
improvements
scipy.linalg.interpolative
Fortran77 code has been ported to Cython.scipy.linalg.solve
supports several new values for theassume_a
argument, enabling faster computation for diagonal, tri-diagonal, banded, and
triangular matrices. Also, whenassume_a
is left unspecified, the
function now automatically detects and exploits diagonal, tri-diagonal,
and triangular structures.scipy.linalg
matrix creation functions (scipy.linalg.circulant
,
scipy.linalg.companion
,scipy.linalg.convolution_matrix
,
scipy.linalg.fiedler
,scipy.linalg.fiedler_companion
, and
scipy.linalg.leslie
) now support batch
matrix creation.scipy.linalg.funm
is faster.scipy.linalg.orthogonal_procrustes
now supports complex input.- Wrappers for the following LAPACK routines have been added in
scipy.linalg.lapack
:?lantr
,?sytrs
,?hetrs
,?trcon
,
and?gtcon
. scipy.linalg.expm
was rewritten in C.scipy.linalg.null_space
now accepts the new argumentsoverwrite_a
,
check_finite
, andlapack_driver
.id_dist
Fortran code was rewritten in Cython.
scipy.ndimage
improvements
- Several additional filtering functions now support an
axes
argument
that specifies which axes of the input filtering is to be performed on.
These includecorrelate
,convolve
,generic_laplace
,laplace
,
gaussian_laplace
,derivative2
,generic_gradient_magnitude
,
gaussian_gradient_magnitude
andgeneric_filter
. - The binary and grayscale morphology functions now support an
axes
argument that specifies which axes of the input filtering is to be performed
on. scipy.ndimage.rank_filter
time complexity has improved fromn
to
log(n)
.
scipy.optimize
improvements
- The vendored HiGHS library has been upgraded from
1.4.0
to1.8.0
,
bringing accuracy and performance improvements to solvers. - The
MINPACK
Fortran77 package has been ported to C. - The
L-BFGS-B
Fortran77 package has been ported to C. - The new
scipy.optimize.elementwise
namespace includes functions
bracket_root
,find_root
,bracket_minimum
, andfind_minimum
for root-finding and minimization of univariate functions. To facilitate
batch computation, these functions are vectorized and support several
Array API compatible array libraries in addition to NumPy (see
"Array API Standard Support" below). Compared to existing functions (e.g.
scipy.optimize.root_scalar
andscipy.optimize.minimize_scalar
),
these functions can offer speedups of over 100x when used with NumPy arrays,
and even greater gains are possible with other Array API Standard compatible
array libraries (e.g. CuPy). scipy.optimize.differential_evolution
now supports more general use of
workers
, such as passing a map-like callable.scipy.optimize.nnls
was rewritten in Cython.HessianUpdateStrategy
now supports__matmul__
.
scipy.signal
improvements
- Add functionality of complex-valued waveforms to
signal.chirp()
. scipy.signal.lombscargle
has two new arguments,weights
and
floating_mean
, enabling sample weighting and removal of an unknown
y-offset independently for each frequency. Additionally, thenormalize
argument includes a new option to return the complex representation of the
amplitude and phase.- New function
scipy.signal.envelope
for computation of the envelope of a
real or complex valued signal.
scipy.sparse
improvements
- A :ref:
migration guide<migration_to_sparray>
is now available for
moving from sparse.matrix to sparse.array in your code/library. - Sparse arrays now support indexing for 1-D and 2-D arrays. So, sparse
arrays are now fully functional for 1-D and 2D. - n-D sparse arrays in COO format can now be constructed, reshaped and used
for basic arithmetic. - New functions
sparse.linalg.is_sptriangular
and
sparse.linalg.spbandwidth
mimic the existing dense tools
linalg.is_triangular
andlinalg.bandwidth
. sparse.linalg
andsparse.csgraph
now work with sparse arrays. Be
careful that your index arrays are 32-bit. We are working on 64bit support.- The vendored
ARPACK
library has been upgraded to version3.9.1
. - COO, CSR, CSC and LIL formats now support the
axis
argument for
count_nonzero
. - Sparse arrays and matrices may now raise errors when initialized with
incompatible data types, such asfloat16
. min
,max
,argmin
, andargmax
now support computation
over nonzero elements only via the newexplicit
argument.- New functions
get_index_dtype
andsafely_cast_index_arrays
are
available to facilitate index array casting insparse
.
scipy.spatial
improvements
Rotation.concatenate
now accepts a bareRotation
object, and will
return a...
SciPy 1.14.1
SciPy 1.14.1 Release Notes
SciPy 1.14.1
adds support for Python 3.13
, including binary
wheels on PyPI. Apart from that, it is a bug-fix release with
no new features compared to 1.14.0
.
Authors
- Name (commits)
- h-vetinari (1)
- Evgeni Burovski (1)
- CJ Carey (2)
- Lucas Colley (3)
- Ralf Gommers (3)
- Melissa Weber Mendonça (1)
- Andrew Nelson (3)
- Nick ODell (1)
- Tyler Reddy (36)
- Daniel Schmitz (1)
- Dan Schult (4)
- Albert Steppi (2)
- Ewout ter Hoeven (1)
- Tibor Völcker (2) +
- Adam Turner (1) +
- Warren Weckesser (2)
- ਗਗਨਦੀਪ ਸਿੰਘ (Gagandeep Singh) (1)
A total of 17 people contributed to this release.
People with a "+" by their names contributed a patch for the first time.
This list of names is automatically generated, and may not be fully complete.