hermite.m

来自「这是三个实现插值算法的函数」· M 代码 · 共 45 行

M
45
字号
function yi=hermite(x,y,ydot,xi)

n=length(x);

p=zeros(n,length(xi));

q=zeros(n,length(xi));

yi=0;

for k=1:n

    t=ones(n,length(xi));

    z=zeros(n,length(xi));

    for j=1:n

        if j~=k

            if abs(x(k)-x(j))<1e-8

                error('the DATA is error')

                return;

            end

            t(j,:)=(xi-x(j))./(x(k)-x(j));

            z(j,:)=1/(x(k)-x(j));

        end

    end

    p(k,:)=prod(t);

    q(k,:)=sum(z);

    yi=yi+y(k).*(1-2.*(xi-x(k)).*q(k,:)).*p(k,:).^2+ydot(k).*(xi-x(k)).*p(k,:).^2;

end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?