数值分析实验应用数学研究生_第1页
数值分析实验应用数学研究生_第2页
数值分析实验应用数学研究生_第3页
数值分析实验应用数学研究生_第4页
数值分析实验应用数学研究生_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数值分析实验题 理学院 应用数学研究生实验1 病态问题与数值稳定性实验1.1 病态问题实验目的:算法有“优”与“劣”之分,问题也有“好”和“坏”之别.对数值方法的研究而言,所谓坏问题就是问题本身对扰动敏感者,反之属于好问题.希望读者通过本实验对此有一个初步的体会.数值分析的大部分研究课题中,如线性代数方程组,矩阵特征值问题,非线性方程及方程组等都存在病态的问题.病态问题要通过研究和构造特殊的算法来解决,当然一般要付出一些代价(如耗用更多的机器时间,占用更多的存储空间等)问题提出:考虑一个高次的代数多项式, (1)显然该多项式的全部根为1,2,20共计20个,且每个根都是单重的(也称为简单的).

2、现考虑该多项式的一个扰动, (2)式中,是一个非常小的数.这相当于是对(1)中的系数作一个小的扰动.希望比较式(1)和(2)根的差别,从而分析方程(1)的解对扰动的敏感性.实验内容:为了实现方便,介绍两个Matlab函数:"roots"和"poly". u=roots(a),其中若变量a存储n+1维的向量,则该函数的输出u为一个n维的向量.设a的元素依次为,则输出u的各分量是多项式方程 的全部根;而函数b=poly(v)的输出b是一个维变量,它是以维变量的各分量为根的多项式系数.可见"roots"和"poly"是两

3、个互逆的运算函数.ve=zeros(1,21); ve(2)=ess; roots(poly(1:20)+ve)上述简单的Matlab程序便得到(2)的全部根,程序中的“ess”即是(2)中的.实验要求:(1)选择充分小的ess,反复进行上述实验,记录结果的变化并分析它们.如果扰动项的系数很小,我们自然感觉式(1)和式(2)的解应当相差很小.计算中你有什么出乎意料的发现?表明有些解关于如此的扰动敏感性如何?(2)将方程(2)中的扰动项改成或其他形式,实验中又有怎样的现象出现?(3)请从理论上分析产生这一问题的根源.注意我们可以将方程(2)写成展开的形式 . (3)同时将方程的解看成是系数的函数

4、,考察方程的某个解关于的扰动是否敏感,与研究它关于的导数的大小有何关系?为什么?你发现了什么现象,哪些根关于的变化更敏感?实验1.2 误差传播与算法稳定性实验目的:体会稳定性在选择算法中的地位,误差扩张的算法是不稳定的,是我们所不期望的;误差衰竭的算法是稳定的,是我们努力寻求的,这是贯穿本课程的目标.问题提出:考虑一个简单的由积分定义的序列.显然利用分部积分易得,. (1)又有.实验内容:由递推关系(1),可以得到计算积分序列的两种算法 算法1: (2)算法2: (3)实验要求:(1)分别用算法1、算法2并在计算中分别采用5位、6位和7位有效数字,请判断哪种算法能给出更精确的结果.(2)两种算

5、法的优劣,与你的第一感觉是否吻合.请从理论上证明你实验得出的结果,解释实验的结果.设算法1中的计算误差为,由递推计算的误差为;算法2中的误差为,由向前递推计算误差为.如果在上述两算法中都假定后面的计算不再引入其他误差,试给出与的关系和的关系.(3)算法1中通常会很小,当n增大时,的变化趋势如何?算法2中通常相对比较大,当n减小时,误差又是如何传播的?也就是说比较一下上述两个算法,当某一步产生误差后,该误差对后面的影响是衰减还是扩张的.(4)通过理论分析与计算实验,针对算法1和算法2的稳定性,给出你的结论.实验2 非线性方程(组)实验2.1 迭代法、初始值与收敛性实验目的:初步认识非线性问题的迭

6、代法与线性问题迭代法的差别,探讨迭代法及初始值与迭代收敛性的关系.问题提出:迭代法是求解非线性方程及方程组的基本思想方法,与线性方程的情况一样,其构造方法可以有多种多样,但关键是怎样才能使迭代收敛且有较快的收敛速度.实验内容:考虑一个简单的代数方程可以构造多种迭代法,如 (1) (2) (3)在实轴上取初始值,请分别用迭代(1)(3)做实验,记录各算法的迭代过程.实验要求:(1)取定某个初始值,分别计算(1)(3)迭代结果,收敛性如何?重复选取不同的初始值,反复实验,请读者自行设计一种比较形象的记录方式(如利用Matlab的图形功能),分析三种迭代法的收敛性与初值选取的关系?(2)对三个迭代法

7、中的某个,取不同的初始值进行迭代,结果如何?试分析迭代法对不同的初值是否有差异?(3)线性方程组迭代法的收敛性是不依赖初始值选取的,比较线性与非线性问题迭代的差异,有何结论与问题?实验2.2 迭代与混沌实验目的:研究一般迭代公式的复杂行为,初步看到混沌现象.实验内容:考虑迭代公式.实验要求:取中不同的值,并取进行迭代,画出不同情况下的的图形,并分析取值与图形的关系.你将对于迭代法有更深刻的理解.实验3 线性方程组实验3.1主元的选取与算法的稳定性问题提出:Gauss消去法是我们在线性代数中已经熟悉的,但由于计算机的数值运算是在一个有限的浮点数集合上进行的,如何才能确保Gauss消去法作为数值算

8、法的稳定性呢?Gauss消去法从理论上算法到数值算法,其关键是主元的选择.主元的选择从数学理论上看起来平凡,它却是数值分析中十分典型的问题.实验内容:考虑线性方程组.编制一个能自动选取主元,又能手动选取主元的求解线性代数方程组的Gauss消去法过程.实验要求: (1)取矩阵则方程有解.取计算矩阵的条件数.让程序自动选取主元,结果如何?(2)现选择程序中手动选取主元的功能.每步消去过程总选取按模最小或按模尽可能小的元素作为主元,观察并记录计算结果,若每步消去过程总选取按模最大的元素作为主元,结果又如何?分析实验的结果.(3)取矩阵阶数 或者更大,重复上述实验过程,观察记录并分析不同的问题及消去过

9、程中选择不同的主元时计算结果的差异,说明主元素的选取在消去过程中的作用.(4)选取其他你感兴趣的问题或者随机生成矩阵,计算其条件数.重复上述实验,观察记录并分析实验的结果.实验3.2 条件数与线性方程组的性态实验目的:理解条件数的意义和方程组的性态对解向量的影响.实验内容:设和,其中,.由相应矩阵的元素计算,其计算公式为.实验要求: 对取,下面均用Matlab函数求解方程组.(1)取=4,6,8,分别计算和,判断和是否为病态矩阵?随的增大,矩阵性态的变化如何?(2)取=6,分别求出两个方程组的解向量;(3)取=6,不变,对的元素和分别加一个摄动10-6,分别求出的解向量;(4)取=6,不变,对

10、的元素和分别加一个摄动10-7,分别求出的解向量;不变,对的元素加一个摄动10-4,求出的解向量;(5)观察和分析和的微小扰动对解向量的影响,得出你的结论;(6)求,和的计算结果和理论估计.实验3.3 迭代法初值、收敛性与收敛速度实验目的:理解迭代法收敛的含义以及迭代初值和方程组系数矩阵性质对收敛速度的影响.实验内容:用迭代法解方程组,其中实验要求:(1)选取不同的初始向量和不同的方程组右端向量,给定迭代误差要求,用雅可比迭代法与高斯塞德尔迭代法计算,观测得到的迭代向量序列是否收敛?若收敛,记录迭代次数,分析计算结果并得出你的结论;(2)取定初始向量和右端向量,将的主对角线元素成倍增长若干次,

11、非主对角线元素不变,每次用雅可比迭代法计算.要求迭代误差满足,比较收敛速度,分析现象并得出你的结论.实验3.4 病态线性方程组求解问题提出:理论的分析表明,求病态的线性方程组是困难的.实际情况是否如此,会出现怎样的现象呢?实验内容:考虑方程组=的求解,其中系数矩阵为Hilbert矩阵,.这是个著名的病态问题.通过首先给定解(例如取为各个分量均为1)再计算出右端的办法给出确定的问题.实验要求:(1)选择问题的维数为6,分别用Gauss消去法(即LU分解)、J迭代方法,GS迭代和SOR迭代求解方程组,其各自的结果如何?将计算结果与问题的解比较,结论如何.(2)逐步增大问题的维数,仍然用上述的方法来

12、解它们,计算的结果如何?计算的结果说明了什么?(3)讨论病态问题求解的算法.实验4 插值法实验4.1 多项式插值的振荡现象问题提出: 考虑在一个固定的区间上用插值逼近一个函数.显然拉格朗日插值中使用的节点越多,插值多项式的次数就越高.我们自然关心插值多项式的次数增加时,是否也更加靠近被逼近的函数.龙格给出的一个例子是极著名并富有启发性的.设区间上函数.实验内容:考虑区间的一个等距划分,分点为,则拉格朗日插值多项式为,其中是次拉格朗日插值基函数.实验要求:(1)选择不断增大的分点数目画出原函数及插值多项式函数在上的图像,比较并分析实验结果.(2)选择其他的函数,例如定义在区间上的函数 , 重复上

13、述的实验看其结果如何.(3)区间上切比雪夫点的定义为,以为插值节点构造上述各函数的拉格朗日插值多项式,比较其结果.实验4.2 样条插值的收敛性问题提出:多项式插值是不收敛的,即插值的节点多,效果不一定就好,对样条函数插值又如何呢?理论上证明样条插值的收敛性是比较困难的,也超出了本课程的内容.通过本实验可以验证这一理论结果.实验内容:请按一定的规划分别选择等距离或者非等距离的插值节点,并不断增加插值节点的个数.考虑实验4.1中的函数或者选择其它你有兴趣的函数,可以用matlab的函数“spline”作此函数的三次样条插值. matlab还提供有spline工具箱(toolbox).你可以找到极丰

14、富的样条工具,包括B-样条.实验要求:(1)随着节点个数的增加,比较被逼近函数和样条插值函数误差的变化情况.分析所得结果并与拉格朗日多项式插值比较.(2)样条插值的思想是最早产生 于工业部门.作为工业应用的例子考虑如下问题:某汽车制造商用三次样条插值设计车门的曲线,其中一段的数据如下:xk0 1 2 3 4 5 6 7 8 9 10ykyk0.0 0.79 1.53 2.19 2.71 3.03 3.27 2.89 3.06 3.19 3.290.8 0.2(3)对实验4.1中的问题,计算他们的B-样条插值.实验5 函数逼近实验5.1 最小二乘拟合实验目的:最小二乘拟合经验公式.实验内容:某类

15、疾病发病率为和年龄段(每五年为一段,例如05岁为第一段,610岁为第二段,)之间有形如的经验关系,观测得到的数据表如下1234567890.8982.383.071.842.021.942.222.774.02101112131415161718194.765.466.5310.916.522.535.750.661.681.8实验要求:(1)用最小二乘法确定模型中的参数和.(2)利用MATLAB画出离散数据及拟合函数图形.(3)利用MATLAB画出离散点处的误差图,并计算相应的均方误差.(4)谈一谈你对最小二乘拟合的理解,并举出一个应用此方法的例子.实验5.2 逼近方法比较实验目的:理解不同

16、的逼近方法.实验内容:对被逼近函数,在区间0,1上分别利用插值方法、最佳一致逼近以及最佳平方逼近三种方法求形如的逼近函数,并进行比较.再画出每种方法的逼近函数曲线以及误差图.实验5.3 最佳平方逼近多项式的收敛性实验目的:研究最佳平方逼近多项式的收敛性质.实验内容:取函数,在-1,1上以勒让德多项式为基函数,对于构造最佳平方逼近多项式,令,将的曲线画在一个图上.令,画出的曲线.做出之间的最小二乘曲线,能否提出关于收敛性的猜测.实验6 微积分实验6.1 高斯数值积分方法用于积分方程求解问题提出:线性的积分方程的数值求解,可以被转化为线性代数方程组的求解问题.而线性代数方程组所含未知数的个数,与用

17、来离散积分的数值方法的节点个数相同.在节点数相同的前提下,高斯数值积分方法有较高的代数精度,用它通常会得到较好的结果.实验内容:求解第二类Fredholm积分方程.首先将积分区间a,b等分成n份,在每个子区间上离散方程中的积分就得到线性代数方程组.实验要求:分别使用如下方法,离散积分方程中的积分. 复化梯形方法; 复化辛普森方法; 复化高斯方法.求解如下的积分方程.(1),方程的准确解为;(2),方程的准确解为;比较各方法的计算量和误差以分析它们的优劣.实验6.2 高斯积分数值计算的蒙特卡罗方法问题提出:高维空间中的积分,如果维数不很高且积分区域是规则的或者能等价地写成多重积分的形式,可以用一

18、元函数积分的数值方法来计算高维空间的积分,蒙特卡罗方法对计算复杂区域甚至不连通的区域上的积分并没有特殊的困难.实验内容:对于一般的区域,计算其测度(只要理解为平面上的面积或空间中的体积)的一般方法是:先找一个规则的区域A包含,且A的测度是已知的.生成区域A中m个均匀分布的随机点,如果其中有n个落在区域中,则区域的测度为n/m.函数在区域上的积分可以近似为:区域的测度与函数在中n个随机点平均值的乘积,即.实验要求:假设冰淇淋的下部为一锥体而上面为一半球,考虑冰淇淋锥体体积问题:计算锥面上方和球面内部区域的体积.如果使用球面坐标,该区域可以表示为如下的积分:.用蒙特卡罗方法可以计算该积分. 另一方

19、面,显然这样的冰淇淋可以装在如下立方体的盒子里 而该立方体的体积为8.只要生产这个盒子里均匀分布的随机点落入冰淇淋锥点的个数与总点数之比再乘以8就是冰淇淋锥的体积.比较两种方法所得到的结果.实验7 常微分方程实验7.1 Lorenz问题与混沌问题提出:考虑著名的Lorenz方程 (1)其中s,r,b为变化区域有一定限制的实参数.该方程形式简单,表面上看并无惊人之处,但由该方程揭示出的许多现象,促使“混沌”成为数学研究的崭新领域,在实际应用中也产生了巨大的影响.实验内容:计算可以直接使用下面的Matlab程序,其中方程的形式与(1)略有差异.% BLZ Plot the orbit around

20、 the Lorenz chaotic attractor.clf, clc% Solve the ordinary differential equation describing the Lorenz chaotic attractor.The equations % are defined in an M-file,blzeq.m. The values of the global parameters are global SIGMA RHO % BETASIGMA=10.; RHO=28.; BETA=8./3.;% The graphics axis limits are set

21、to values known to contain the solution.axis(10 40 -20 20 -20 20), view(3), hold on, title(Lorenz Attractor)y0=0 0 eps; tfinal=100; y=ode23(blzep,0,tfinal,y0)其中的函数blzeq.m定义为% BLZEQ Equation of the Lorenz chaotic attractor. ydot=lorenzeq(t,y).% The differential equation is written in almost linear fo

22、rm.Global SIGMA RHO BETAA=-BETA 0 y(2)0 -SIGMA SIGMA -y(2) RHO -1 ;Ydot=A*y;实验要求:(1)请找出(1)与上述程序中使用的方程间的关系.(2)对目前取定的参数值SIGMA、RHO和BETA,选取不同的初始值y0(当前的程序中的y0是坐标原点),运行上述的程序,观察计算的结果有什么特点?解的曲线是否有界?解的曲线是不是周期的或趋于某个固定的点?(3)在问题允许的范围内适当改变其中的参数值SIGMA、RHO和BETA,再选取不同的初始值y0,运行上述的程序,观察并记录计算的结果有什么特点?是否发现什么不同的现象?实验7.2 刚性问

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论