教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 范文大全 > 文秘资料 >

数值分析课程设计_多项式插值的振荡现象matlab

来源:网络收集 时间:2026-04-22
导读: 数值分析 课程设计 多项式插值的振荡现象 (姓名) (学号) 指导教师 学院名称 专 业 名 称 提交日期 2012年6月 一、 问题的提出 考虑在一个固定区间上用插值逼近一个函数。显然,Lagrange插值中使用的节点越多,插值多项式的次数就越高。我们自然关心插值

数值分析 课程设计

多项式插值的振荡现象

(姓名) (学号)

指导教师

学院名称 专 业 名 称 提交日期

2012年6月

一、 问题的提出

考虑在一个固定区间上用插值逼近一个函数。显然,Lagrange插值中使用的节点越多,插值多项式的次数就越高。我们自然关心插值多项式增加时,Ln(x)是否也更加靠近被逼近的函数。龙格(Runge)给出的一个例子是极著名并富有启发性的。设区间[-1,1]上的函数

1

f(x)

1 25x2

考虑区间[-1,1]的一个等距划分,节点为

2i

xi 1 ,i 0,1,2, ,n

n

则拉格朗日插值多项式为

Ln(x)

1

(x) 2i

i 01 25xi

n

其中的ai(x),i=0,1,2,…,n是n次Lagrange插值基函数。

二、 实验内容

研究以下三个函数在各自区间上运用不同的划分

1

,x [ 1,1] 1、f(x)

1 25x2

x

,x [ 5,5] 2、h(x) 4

1 x

3、g(x) arctanx,x [ 5,5]

运用在区间[-p,p]上等距划分(p>0),节点为

2i

xi p ,i 0,1,2, ,n

n

以x0,x1,…,xn为插值节点构造上述各函数的Lagrange插值多项式。 运用区间[a,b]上切比雪夫(Chebychev)点的定义为

xk

(2k 1) b ab a

cos 22 2(n 1)

,k 1,2, ,n 1

以x1,x2,…,xn+1为插值节点构造上述各函数的Lagrange插值多项式,比较其结果。

并分别比较两种划分方法,增加节点数,最大误差的变化。

三、 实验结果及分析

(一) 等距划分

对于函数f(x)

1

,x [ 1,1]来说,使用等距划分

1 25x2

其中绿色点线代表误差,红色划线代表Lagrange插值多项式,蓝色实线代表原函数。

可见对于等距划分来说节点数越多,最大误差越大,可是越靠近中间的误差越少。越接近两个端点的误差越大。当节点数很大时,最大误差的来源只与靠近两个端点的误差有关。

例如:n=20时

对于h(x)

x

,x [ 5,5],使用等距划分

1 x4

当n=25时

对于g(x) arctanx,x [ 5,5],使用等距划分

当n=30时,

从以上三个函数图像来看,可见节点越多,靠近端点处取得最大误差,并且最大误差越大。这就是龙格现象。

(二) 切比雪夫(Chebychev)点

1

,x [ 1,1]

首先研究f(x) 2

1

25x

当n=20时

可是当

n=30

同样的n=40,50也出现了两端误差增大现象。

然后研究h(x)

x

,x [ 5,5]

1

x4

当n=25时

同样的n=30,50也会出现龙格现象。

最后研究g(x) arctanx,x [

5,5]

当n=25时

此函数也不例外。

由以上三个函数,通过不断改变n的值,可得运用切比雪夫点来划分,要使最大误差小于0.1,n一般取12到20间的数。

(三) 综述

对于Lagrange插值多项式,运用等距划分取节点时,n要不能取得太大,一般n=8或8左右。若要使n取得更大,那么需要使代入到函数的点尽量在区间的中间,这样才能使真值与计算出来的值的误差尽可能的小。

运用切比雪夫点来划分取节点时,n一般取12到20间的数。无论要代入到函数的点在区间的那个位置,都能使误差尽可能的小。若要使n取得更大,那么需要使代入到函数的点尽量在区间的中间,这样才能使真值与计算出来的值的误差尽可能的小。若n取的较小,同样误差也是很大的。

对于以上两种取节点的方法,都不能避免龙格现象的出现。对于不同的选取节点的方法,只要n取得合适,同时代人函数的点适合,那么就可以使误差尽可能的减少。

四、 关于本设计的体会

为了完成本设计,接触了一个数学软件matlab,并能初步运用本软件,编写程序,方便了以后对数学的研究。

并且对于编写过程中遇到的错误,显示不正确等,通过网络搜索查询,能解决这些问题。例如运用fminbnd函数时,显示的并不是正确的答案,后来百度了一下,明白了此函数的运作原理,并最终能显示我想得到的结果。

当然对于我所编写的程序,我也就只能做到这一步,也是碍于时间关系,和对matlab不熟悉,并不能更好的完善下去。有时取值很大时,运行起来,运行得很慢,这是一大缺陷。主要是循环次数太多,和找不到更好的函数代替所造成的。其他的缺点也就不一一的列举了。

学习一个软件需要耐心,细心。多寻找,多发现,多创作才能深入了解一个软件。同样的道理,这也是做任何事所需要的素质。

五、 参考文献

数值分析(第三版)——北京理工大学出版社 六、 附录

所的运用软件及编号MATLAB 7.0

(图略)

所用电脑的版本、型号与系统

(图略)

用户界面设计 文件名:kcsjx.fig

用户界面程序,运行kcsjx.m来调用主要程序 文件名:kcsjx.m

function varargout = kcsjx(varargin) % KCSJX M-file for kcsjx.fig

% KCSJX, by itself, creates a new KCSJX or raises the existing % singleton*. %

% H = KCSJX returns the handle to a new KCSJX or the handle to % the existing singleton*. %

% KCSJX('CALLBACK',hObject,eventData,handles,...) calls the local

% function named CALLBACK in KCSJX.M with the given input arguments. %

% KCSJX('Property','Value',...) creates a new KCSJX or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before kcsjx_OpeningFunction gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to kcsjx_OpeningFcn via varargin. %

% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one

% instance to run (singleton)". %

% See also: GUIDE, GUIDATA, GUIHANDLES

% Copyright 2002-2003 The MathWorks, Inc.

% Edit the above text to modify the response to help kcsjx

% Last Modified by GUIDE v2.5 04-Jun-2012 16:03:46

% Begin initialization code - DO NOT EDIT gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ...

'gui_Singleton', gui_Singleton, ...

'gui_OpeningFcn', @kcsjx_OpeningFcn, ... 'gui_OutputFcn', @kcsjx_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1})

gui_State.gui_Callback = str2func(varargin{1}); end

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else

gui_mainfcn(gui_State, varargin{:}); end

% End initialization code - DO NOT EDIT

…… 此处隐藏:3895字,全部文档内容请下载后查看。喜欢就下载吧 ……

数值分析课程设计_多项式插值的振荡现象matlab.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/fanwen/2079479.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)