How to get the value of slopes of pchip at the enpoints?

Illustration
David Gillcrist - 2024-01-08T10:23:16+00:00
Question: How to get the value of slopes of pchip at the enpoints?

I'm using pchip to interpolate a set of data X. After getting the interpolation, I'm trying to have functions g and f, connect to the endpoints of the interpolation. I want g and f to have the same slopes where they connect to the endpoints. Is there a convenient way to get the values of the slopes of the pchip interpolation?    

Expert Answer

Profile picture of Neeta Dsouza Neeta Dsouza answered . 2025-11-20

The doc page pchip (under the Output Arguments, pp section) shows how the interpolationg polynominal is formed for each interval based on the breakpoints and the pp coefficients, from which it should be straighforward to compute the derivative at the leading and trailing edges of the first and last intervals respectively.

 

x = 0:.1:1;y=sin(x);
pp = pchip(x,y);
pp
pp = struct with fields:
      form: 'pp'
    breaks: [0 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 0.8000 0.9000 1]
     coefs: [10×4 double]
    pieces: 10
     order: 4
       dim: 1

Not sure why pp.oder = 4. That seems odd for a cubic polynomial.


Not satisfied with the answer ?? ASK NOW

Get a Free Consultation or a Sample Assignment Review!