Construct a piece-wise polynomial structure from sample points x and coefficients p. The ith row of p, p
(i,:), contains the coefficients for the polynomial over the i-th interval, ordered from highest to lowest. There must be one row for each interval in x, sorows (p) == length (x) - 1.You can concatenate multiple polynomials of the same order over the same set of intervals using p
= [p1;p2; ...;pd]. In this case,rows (p) ==d* (length (x) - 1).d specifies the shape of the matrix p for all except the last dimension. If d is not specified it will be computed as
round (rows (p) / (length (x) - 1))instead.
The following code
# linear interpolation
x=linspace(0,pi,5)';
t=[sin(x),cos(x)];
m=diff(t)./(x(2)-x(1));
b=t(1:4,:);
pp = mkpp(x, [m(:),b(:)]);
xi=linspace(0,pi,50);
plot(x,t,"x",xi,ppval(pp,xi));
legend("control","interp");
Produces the following figure
![]() |