主题: [MATLAB数学相关] Matlab数值分析里插值方法的问题
查看单个帖子
旧 2009-04-22, 16:08   #2
Zz小猪
初级会员
 
注册日期: 2009-04-22
年龄: 38
帖子: 3
声望力: 0
Zz小猪 正向着好的方向发展
默认 回复: Matlab数值分析里插值方法的问题

分段三阶hermit
function yhat=hermint(x,f,fp,xhat)%分段三阶hermite插值
n=length(x);
if length(f)~=n,error('x and f are not compatible');
elseif length(fp)~=n,error('x and fp are not compatible');end
x=x(: );xhat=xhat(: );f=f(: );fp=fp(: );
dx=diff(x);
divdif=diff(f)./dx;
a=f(1:n-1);
b=fp(1:n-1);
c=(3*divdif-2*fp(1:n-1)-fp(2:n))./dx;
d=(fp(1:n-1)-2*divdif+fp(2:n))./dx.^2;
i=zeros(size(xhat));
for m=1:length(xhat)
i(m)=binSearch(x,xhat(m));
end
xx=xhat-x(i);
yhat=a(i)+xx.*(b(i)+xx.*(c(i)+xx.*d(i)));
Zz小猪 当前离线   回复时引用此帖