📄 ex1.m
字号:
n = 6;
m = 50;
xmin = -2;
xmax = 2;
step0 = (xmax - xmin) / n;
x0 = [-2 : step0 : 2];
y0 = exp(-x0.^2);
step1 = (xmax - xmin) / m;
x = [-2 : step1 : 2];
%lagrange
y_lagrange = lagrange(x0, y0, x);
fplot('exp(-x.^2)', [-2 2], 'g');
hold on;
plot(x, y_lagrange, 'r');
%multi-linear
for j = 1 : n
for i = 1 : m+1
if (x(i) >= x0(j)) & (x(i) <= x0(j+1))
y_linear(i) = y0(j) + (x(i)-x0(j)) * (y0(j+1) - y0(j)) / (x0(j+1) - x0(j));
end
end
end
plot(x, y_linear, 'k');
%spline
y00 = [0 y0 0];
pp = csape(x0, y00, 'complete')
[breaks, coefs, noplys, ncoefs, dim] = unmkpp(pp);
for j = 1 : n
for i = 1 : m+1
if (x(i) >= x0(j)) & (x(i) <= x0(j+1))
y_spline(i) = polyval(coefs(j, :), x(i) - x0(j));
end
end
end
y_ppval = ppval(pp, x);
plot(x, y_spline, 'b', x, y_ppval, 'g');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -