数值分析实验报告(一)(完整)

数值分析实验报告(一)(完整)

ID:18737471

大小:125.00 KB

页数:6页

时间:2018-09-22

数值分析实验报告(一)(完整)_第1页
数值分析实验报告(一)(完整)_第2页
数值分析实验报告(一)(完整)_第3页
数值分析实验报告(一)(完整)_第4页
数值分析实验报告(一)(完整)_第5页
资源描述:

《数值分析实验报告(一)(完整)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、数值分析实验报告姓名学号系别数学系班级09信息(2)班主讲教师王丹指导教师王丹实验日期专业信息与计算科学课程名称数值分析同组实验者无一、实验名称:实验一、插值多项式的收敛性实验二、实验目的:1.理解插值的基本原理;2.掌握多项式插值的概念、存在唯一性;3.编写MATLAB程序实现Lagrange插值和Newton插值,验证Runge现象、分析插值多项式的收敛性。三、实验内容及要求:1.已知数据如下:0.20.40.60.81.00.980.920.810.640.38(1)用MATLAB语言编写按Langrage插值法和Newton插值法计算插值的程序,对以上数据进行插值;(

2、2)利用MATLAB在第一个图中画出离散数据及插值函数曲线。2.给定函数,利用上题编好的Langrage插值程序(或Newton插值程序),分别取3个,5个、9个、11个等距节点作多项式插值,分别画出插值函数及原函数的图形,以验证Runge现象、分析插值多项式的收敛性。三、实验步骤(或记录)Lagrange插值法的基本思想:步骤1:构造处的插值基函数,其中,插值节点处的插值基函数为;步骤2:以作为的系数,使得通过插值点;步骤3:把所有的线性叠加,得到通过所有插值点的插值函数。Lagrange插值伪代码:给定个插值点的情况下,求插值函数在点处的函数值。/*输入参数6*x=(x0

3、,x1,….,xn),插值节点*y=(y0,y1,…,yn);被插函数f(x)在插值节点处的函数值*t求插值函数Ln(x)在t处的函数值*返回值插值函数Ln(x)在t处的函数值*/procedureLagrangeresultß0;fori=1tonli(t)ß1;forj=1tonifi≠jli(t)ßli(t)*(t-xi)/(xi-xj);endifendforresultßresult+yi*li(t) ;endforreturnresult;endprocedureLagrange插值子程序lagr1:functiony=lagr1(x0,y0,x)%x0为插值点的

4、向量,y0为插值点处的函数值向量,x为未知的点向量n=length(x0);m=length(x);fori=1:mz=x(i);s=0.0;fork=1:np=1.0;forj=1:nifj~=kp=p*(z-x0(j))/(x0(k)-x0(j));endends=p*y0(k)+s;endy(i)=s;EndNewton插值算法公式 :余项为其中有关.Newton插值伪代码:6/*输入参数*x=(x0,x1….,xn),插值节点*y=(y0,y1,…,yn);被插函数f(x)在插值节点处的函数值*t求插值函数Pn(x)在t处的函数值*返回值插值函数Pn(x)在t处的函数

5、值*/procedureNewtonforj=0tond1jßyj;endforforj=1tonfori=jtondijß(di,j-1-di-1,j-1)/(xi-xi-j+1);endforendforresultßd11;tempß1;fori=1tontempßtemp*(t-xi-1);resultßresult+di,i*temp;endforreturnresult;endprocedureNewton插值子程序Newton:functiony=newton(x0,y0,x)%牛顿插值法n=length(x0);m=length(x);d=zeros(n,n)

6、;%d为差商表矩阵forj=1:nd(j,1)=y0(j);%差商表第一列endforj=2:n%差商表为下三角矩阵fori=j:nd(i,j)=(d(i,j-1)-d(i-1,j-1))./(x0(i)-x0(i-j+1));%求差商表矩阵中各值endendfork=1:mz=x(k);result=d(1,1);temp=1;fori=2:ntemp=temp*(z-x0(i-1));result=result+d(i,i)*temp;endy(k)=result;end61.编写拉格朗日插值多项式函数内容为:functionf=lagfun(x)a=[0.2,0.4,0

7、.6,0.8,1.0];b=[0.98,0.92,0.81,0.64,0.38];fori=1:5L(i)=1;forj=1:5ifj~=iL(i)=L(i)*(x-a(j))/(a(i)-a(j));endendendf=0;fori=1:5f=f+L(i)*b(i);end画图程序内容为:x0=[0.2,0.4,0.6,0.8,1.0];y0=[0.98,0.92,0.81,0.64,0.38];plot(x0,y0,'o')holdongridonfplot('lagfun',[0,1]);hol

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。