ENH: interpolate: Tracker Issue for follow-up work on `make_smoothing_spline`
Author: aadya940Created Sep 12, 2026Updated Sep 17, 2026
Labelsenhancementscipy.interpolate
Is your feature request related to a problem? Please describe.
After working on PR #26168 #26141 #25862 #26078 #25638 #25570 and a conversation with @ev-br , these features were either needed or would make sense to have in SciPy. This is a tracker issue (for discussions and tracking the implementation) and one line explanation of why they may be needed.
Describe the solution you'd like.
- P-spline penalties, a cheaper discrete alternative to the exact integral penalty
- Higher order derivative penalties (penalize the third derivative instead of the second)
- A
solver=option to pick the linear algebra backend for the fitting problem - Wrap LAPACK
dpbconinscipy.linalgfor a cheap condition number estimate from the Cholesky factor (and?lansb) - Add
clamp_valueskwarg forscipy.interpolate.make_smoothing_spline - Add splines with higher degree polynomials (
k > 3) - Support
periodicsmoothing splines
Describe alternatives you've considered.
No response
Additional context (e.g. screenshots, GIFs)
- P-Splines are very common in interpolation and are often used instead of smoothing splines.
- Higher order derivatives are important for users that care about curvature. This was first requested in #24532.
- A
solver=param was first discussed here. - Smoothing parameter
lamincreases thecondition-numberproportionally, wrappingdpbconinscipy.linalgwould help estimate when the system becomes ill-posed instead of estimating it (which is the current behavior). scipy.interpolate.make_smoothing_splineatlam=0is just amake_lsq_spline. Since lsq splines now support aclamp_valueskwarg, it may be reasonable to add the same for smoothing splines.- Quartic and higher splines were first requested here.
Source: scipy/scipy