Quadratic Spline Interpolation Code

18 views (last 30 days)
Kimberlin Sookchand
Kimberlin Sookchand on 28 Apr 2020
Edited: John D'Errico on 14 Dec 2020
What is the MATLAB code for quadratic splines? As linear uses interp1 linear and cubic splines uses interp1 spline. What is the corresponding interp1 coding for quadratic splines?

Answers (2)

Ameer Hamza
Ameer Hamza on 28 Apr 2020
Edited: Ameer Hamza on 28 Apr 2020
You can write your own quadratic spline function
function yq = quadSpline(x, y, xq)
X = [x(:).^2 x(:) ones(size(x(:)))];
coff = X\y(:);
yq = [xq(:).^2 xq(:) ones(size(xq(:)))]*coff;
end
Example
x = 1:10;
y = x.^2 + 5 + rand(size(x))*10;
xq = linspace(0,10);
yq = quadSpline(x, y, xq);
plot(x, y, 'r+', 'MarkerSize', 10, 'LineWidth', 2);
hold on
plot(xq, yq, 'b-');
  4 Comments
Enes Senel
Enes Senel on 14 Dec 2020
splines should pass from data points. This seems like polynomial regression
John D'Errico
John D'Errico on 14 Dec 2020
Edited: John D'Errico on 14 Dec 2020
The comments are correct. This is NOT a quadratic spline tool. All that is given in this answer is a quadratic polynomial regression. That is not a spline. The comment about a spline passing through the data points is not always correct though. An INTERPOLATING spline passes through the data points. However, regression or smoothing splines need not do so. But as said, this still is not a spline, in the sense that a spline is a piecewise function.

Sign in to comment.


Bruno Luong
Bruno Luong on 14 Dec 2020
My toolbox provide any order (1D) spline, including quadratic

Categories

Find more on Spline Postprocessing in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!