- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
利用MATLAB分析数值积分中的龙格(Runge)现象(1)
(2012-12-10 10:44:21)
原文地址: \o 利用MATLAB分析数值积分中的龙格(Runge)现象(1) 利用MATLAB分析数值积分中的龙格(Runge)现象(1)作者: \o 月之幽境 月之幽境
实验目的: 观察Lagrange插值及数值积分中的龙格(Runge)现象。了解数值不稳定现象。
实验题目:(1)对于函数f(x)=1/(1+x^2),-4=x=4进行Lagrange插值。取不同结点数n,在区间[-4,4]上取等距间隔的结点为插值点,把f(x)和插值多项式的曲线画在同一张图上进行比较。(2)利用复化矩形或梯形公式计算f(x)=1/(1+x^2),-4=x=4在定义区间上的数值积分值,说明Runge现象。
?
(先完成题目(1),题目(2)下次续上。)
在同一目录下编制一下的函数:f.m,langrange.m,runge1.m。
下面贴出每个文件的内容清单。
f.m:
function f= f( x )f=1./(1+x.^2);end
?
langrange.m:
function langrange= langrange( x,n )langrange=0;xx=linspace(-4,4,n+1);for i=1:n+1??? lix=1;??? for j=1:n+1??????? if j~=i??????????? lix=lix.*((x-xx(j))./(xx(i)-xx(j)));??????? end??? end??? langrange=f(xx(i)).*lix+langrange;endend
?
runge1.m:
function runge1(n)%n为Langrange差值节点的个数x=linspace(-4,4,100);plot(x,f(x),x,langrange(x,n));end
?
工作目录为上面的文件所在目录,在命令窗口输出一下的命令:
subplot(4,4,1),runge1(1),title(1个节点);subplot(4,4,2),runge1(2),title(2个节点);subplot(4,4,3),runge1(3),title(3个节点);subplot(4,4,4),runge1(4),title(4个节点);subplot(4,4,5),runge1(5),title(5个节点);subplot(4,4,6),runge1(6),title(6个节点);subplot(4,4,7),runge1(7),title(7个节点);subplot(4,4,8),runge1(8),title(8个节点);subplot(4,4,9),runge1(9),title(9个节点);subplot(4,4,10),runge1(10),title(10个节点);subplot(4,4,11),runge1(11),title(11个节点);subplot(4,4,12),runge1(12),title(12个节点);subplot(4,4,13),runge1(13),title(13个节点);subplot(4,4,14),runge1(14),title(14个节点);subplot(4,4,15),runge1(15),title(15个节点);subplot(4,4,16),runge1(16),title(16个节点)
?
运行结果:
分析结果:
16幅分别为差值节点从1到16个的原函数的图像与Langrange差值多项式的图像。看图可知,当节点数较小时,逼近效果并不好,随着节点数的增多,逼近效果似乎越来越好。但是当节点数再增多时,在接近区间两边附近误差越来越大,逼近效果越来越差,这就是龙格现象。
1.
实验目的:
观察拉格朗日插值的龙格(Runge)现象.。
2. 实验内容:
对于函数211
)(x
xf??
进行拉格朗日插值,
取不同的节点数n,在区间[-5,5]上取等距间隔的节点为插值点,把f(x)和插值多项式的曲线画在同一张图上进行比较。
具体步骤如下: 1)、编写拉格朗日插值函数(并将其存到当前路径的M文件中)
function y=lagrange(x0,y0,x)
n=length(x0);m=length(x);
for i=1:m
z=x(i); L=0.0; for j=1:n T=1.0; for k=1:n if k~=j
文档评论(0)