📄 hermite_wise.m
字号:
%Hermite三次插值
function yi=Hermite_wise(x,y,ydot,xi)
if isempty(ydot)==1;
ydot=gradient(y,x);
end
n=length(x);m1=length(y);m2=length(ydot);
if n~=m1|n~=m2|m1~=m2
error('The length of X,Y and Ydot must be equal!');
returm;
end
for k=1:n-1
if abs(x(k)-x(k+1))<eps
error('The DATA is error!');
return;
end
if x(k)<=xi&xi<=x(k+1)
yi=y(k)*(1-2*(xi-x(k))/(x(k)-x(k+1)))*(xi-x(k+1))^2/(x(k)-x(k+1))^2+y(k+1)*(1-2*(xi-x(k+1))/(x(k+1)-x(k)))*(xi-x(k))^2/(x(k+1)-x(k))^2+ydot(k)*(xi-x(k))*(xi-x(k+1))^2/(x(k)-x(k+1))^2+ydot(k+1)*(xi-x(k+1))*(xi-x(k))^2/(x(k+1)-x(k))^2;
return;
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -