- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数值分析实验报告
姓 名 学 号 系 别 数学系 班级 09信息(2)班 主讲教师 王丹 指导教师 王丹 实验日期 专业 信息与计算科学 课程名称 数值分析 同组实验者 无 一、实验名称:
实验一、插值多项式的收敛性实验 实验目的:
1.理解插值的基本原理unge现象、分析插值多项式的收敛性。 三、实验内容及要求:
1.已知数据如下:
0.2
0.4
0.6
0.8
1.0
0.98
0.92
0.81
0.64
0.38
(1)用MATLAB语言编写按Langrage插值法和Newton插值法计算插值的程序,对以上数据进行插值;(2)利用MATLAB在第一个图中画出离散数据及插值函数曲线。,利用上题编好的Langrage插值程序(或Newton插值程序),分别取3个,5个、9个、11个等距节点作多项式插值,分别画出插值函数及原函数的图形,以验证Runge现象、分析插值多项式的收敛性。 实验步骤(或记录)
Lagrange插值法的基本思想:
步骤1: 构造处的插值基函数,其中,插值节点处的插值基函数为;
步骤2:以作为的系数,使得通过插值点;
步骤3:把所有的线性叠加,得到通过所有插值点的插值函数。
Lagrange插值伪代码:
给定个插值点的情况下,求插值函数在点处的函数值。
/*输入参数
*x=(x0,x1,….,xn), 插值节点
*y=(y0,y1,…,yn); 被插函数f(x)在插值节点处的函数值
*t 求插值函数Ln (x)在t处的函数值
*返回值 插值函数Ln (x)在t处的函数值
*/
procedure Lagrange
result?0;
for i=1 to n
li(t)?1;
for j=1 to n
if i≠j
li(t) ?li(t)*(t-xi)/(xi-xj);
end if
end for
result?result+yi*li(t)?;
end for
return result;
end procedure
Lagrange插值子程序 lagr1:
function y=lagr1(x0,y0,x)%x0为插值点的向量,y0为插值点处的函数值向量,x为未知的点向量
n=length(x0); m=length(x);
for i=1:m
z=x(i);
s=0.0;
for k=1:n
p=1.0;
for j=1:n
if j~=k
p=p*(z-x0(j))/(x0(k)-x0(j));
end
end
s=p*y0(k)+s;
end
y(i)=s;
E nd
Newton插值算法公式?:
余项为
其中 有关.….,xn), 插值节点
*y=(y0,y1,…,yn); 被插函数f(x)在插值节点处的函数值
*t 求插值函数Pn (x)在t处的函数值
*返回值 插值函数Pn(x)在t处的函数值
*/
procedure Newton
for j=0 to n
d1j?yj;
end for
for j=1 to n
for i=j to n
dij ?(di,j-1-di-1,j-1)/(xi-xi-j+1);
end for
end for
result?d11;
temp?1;
for i=1to n
temp?temp*(t-xi-1);
result?result+di,i*temp;
end for
return result;
end procedure
Newton插值子程序 Newton:
function y=newton(x0,y0,x)%牛顿插值法
n=length(x0); m=length(x);
d=zeros(n,n);%d为差商表矩阵
for j=1:n
d(j,1)=y0(j);%差商表第一列
end
for j=2:n %差商表为下三角矩阵
for i=j:n
d(i,j)=(d(i,j-1)-d(i-1,j-1)
文档评论(0)