Quadratic Spline Interpolation Code

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?

Antworten (2)

Ameer Hamza
Ameer Hamza am 28 Apr. 2020
Bearbeitet: Ameer Hamza am 28 Apr. 2020

0 Stimmen

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 Kommentare

Enes Senel
Enes Senel am 14 Dez. 2020
this is not quadratic spline
Rik
Rik am 14 Dez. 2020
Can you show what is wrong with his function? Can you provide a suggestion to fix it?
Enes Senel
Enes Senel am 14 Dez. 2020
splines should pass from data points. This seems like polynomial regression
John D'Errico
John D'Errico am 14 Dez. 2020
Bearbeitet: John D'Errico am 14 Dez. 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.

Melden Sie sich an, um zu kommentieren.

Kategorien

Tags

Gefragt:

am 28 Apr. 2020

Bearbeitet:

am 14 Dez. 2020

Community Treasure Hunt

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

Start Hunting!

Translated by