插值法(lagrange插值,牛顿插值).
- 格式:ppt
- 大小:2.54 MB
- 文档页数:79


杜丁坤 20171506003 自动化1班实验二 插值法一、实验目的和要求(1)学会Langrange 插值、Newton 插值和Hermite 插值等基本插值方法.(2)学会Matlab 提供的插值函数的使用方法,会用这些函数解决实际问题(3) 按照题目要求完成实验内容、写出相应的Matlab 程序给出实验结果.(4)对实验结果进行分析讨论.(5)写出相应的实验报告.一、 实验内容1. Lagrange 插值公式.练习11=2=3=,利用Lagrange 拉格朗日插值的函数%%%%%%%%%function yi=Lagrange(x,y,xi)n=length(x);m=length(y);if n~=merror('The length of X must be equal!');endp=zeros(1,n);for k=1:nt=ones(1,n);for j=1:nif j~=kif abs(x(k)-x(j))<epserror('the DATA is error');return;endt(j)=(xi-x(j))/(x(k)-x(j));endendp(k)=prod(t);endyi=sum(y.*p);%%%%%主函数是:%%%%%X=[1 3 9];Y=[1 2 3];Xi=5;Lagrange(X,Y,xi)练习21=2=3=,利用Newton 进行比较。
牛顿插值函数%%%%%%%%function yi=Newton(x,y,xi)n=length(x);m=length(y);if n~=merror('The length of X must be equal!');endA=zeros(n,n);A(:,1)=y;for j=2:nfor i=1:n-j+1A(i,j)=(A(i+1,j-1)-A(i,j-1))/(x(i+j-1)-x(i));endendX1=xi*ones(1,n)-x;X=ones(1,n);for p=2:nfor q=1:p-1X(p)=X(p)*X1(q);endendY=zeros(1,n);for r=1:nY(r)=A(1,r)*X(r);endyi=sum(Y);%%%%%%%%%%主函数:X=[1 3 9];Y=[1 2 3];Xi=5;Newton(X,Y,xi)三、实验要求要求在实验前必须预习,将实验内容事先准备好,否则不允许上机。