- class scipy.interpolate.PPoly(c, x, extrapolate=None, axis=0)[source]#
Piecewise polynomial in terms of coefficients and breakpoints
The polynomial between
x[i + 1]is written in the local power basis:
S = sum(c[m, i] * (xp - x[i])**(k-m) for m in range(k+1))
kis the degree of the polynomial.
- cndarray, shape (k, m, …)
Polynomial coefficients, order k and m intervals.
- xndarray, shape (m+1,)
Polynomial breakpoints. Must be sorted in either increasing or decreasing order.
- extrapolatebool or ‘periodic’, optional
If bool, determines whether to extrapolate to out-of-bounds points based on first and last intervals, or to return NaNs. If ‘periodic’, periodic extrapolation is used. Default is True.
- axisint, optional
Interpolation axis. Default is zero.
piecewise polynomials in the Bernstein basis
High-order polynomials in the power basis can be numerically unstable. Precision problems can start to appear for orders larger than 20-30.
Coefficients of the polynomials. They are reshaped to a 3-D array with the last dimension representing the trailing dimensions of the original coefficient array.
__call__(x[, nu, extrapolate])
Evaluate the piecewise polynomial or its derivative.
Construct a new piecewise polynomial representing the derivative.
Construct a new piecewise polynomial representing the antiderivative.
integrate(a, b[, extrapolate])
Compute a definite integral over a piecewise polynomial.
solve([y, discontinuity, extrapolate])
Find real solutions of the equation
pp(x) == y.
Find real roots of the piecewise polynomial.
Add additional breakpoints and coefficients to the polynomial.
Construct a piecewise polynomial from a spline
Construct a piecewise polynomial in the power basis from a polynomial in Bernstein basis.
construct_fast(c, x[, extrapolate, axis])
Construct the piecewise polynomial without making checks.