数值分析大作业(牛顿下山法-拉格朗日法-切比雪夫法)及Matlab程序

上传人:日度 文档编号:145971200 上传时间:2020-09-25 格式:DOC 页数:19 大小:461.50KB
返回 下载 相关 举报
数值分析大作业(牛顿下山法-拉格朗日法-切比雪夫法)及Matlab程序_第1页
第1页 / 共19页
数值分析大作业(牛顿下山法-拉格朗日法-切比雪夫法)及Matlab程序_第2页
第2页 / 共19页
数值分析大作业(牛顿下山法-拉格朗日法-切比雪夫法)及Matlab程序_第3页
第3页 / 共19页
数值分析大作业(牛顿下山法-拉格朗日法-切比雪夫法)及Matlab程序_第4页
第4页 / 共19页
数值分析大作业(牛顿下山法-拉格朗日法-切比雪夫法)及Matlab程序_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《数值分析大作业(牛顿下山法-拉格朗日法-切比雪夫法)及Matlab程序》由会员分享,可在线阅读,更多相关《数值分析大作业(牛顿下山法-拉格朗日法-切比雪夫法)及Matlab程序(19页珍藏版)》请在金锄头文库上搜索。

1、课 程 设 计课程名称: 数值分析 设计题目: 学 号: 姓 名: 完成时间: 2014.11.18 题目一: 解线性方程组的直接法设方程组,其中,矩阵中,由相应的矩阵元素计算,使解向量。(1) 不变,对的元素加一个扰动,求解方程组;(2) 不变,对的元素和分别加一个扰动,求解方程组;(3) 对上述两种扰动方程组的解做误差分析。一.数学原理: 本计算采用直接法中的列主元高斯消元法,高斯列主元消元法原理如下:1、设有n元线性方程组如下:2、第一步:如果a11!=0, 令li1= ai1/a11, I= 2,3,n用(-li1)乘第一个方程加到第i个方程上,得同解方程组:a(1)11 a(1)12

2、 . . . a(1)1n x1 b(1)1a(1)21 a(1)22 . . . a(1)2n x2 b(1)2 . . . . . . . = .a(1)n-11 a(1)n-12 . . a(1)n-1n xn-1 b(1)n-1a(1)n1 a(1)n2 . . . a(1)nn xn b(1)n简记为: A(2) x = b(2)其中 a(2)ij = a(1)ij li1 * a(1)1j , I ,j = 2,3,.,n b(2)I = b(1)I li1 * b(1)1 , I = 2,3,.,n第二步:如果a(2)22 != 0,令li2= a(2)i2/a(2)22, I=

3、 3,n依据同样的原理,对矩阵进行化间(省略),依次下去,直到完成!最后,得到上三角方程组: a(1)11 a(1)12 . . . a(1)1n x1 b(1)10 a(1)22 . . . a(1)2n x2 b(1)2 . . . . . . . = .0 0 . . a(n-1)n-1n xn-1 b(n-1)n-10 0 . . . a(n)nn xn b(n)n简记为: A(n) x = b(n)最后从方程组的最后一个方程进行回代求解为: Xn = b(n) / a(n)nn Xi = ( b(k)k - a(k)kjxj ) / a(k)kk二解题过程:1.由题中所给条件可求出b

4、。B = 6.0000 7.7156 9.9299 12.7560 16.3238 20.7813(1) 不变,对的元素加一个扰动,求解方程组。B =6.0000 7.7156 9.9299 12.7560 16.3238 20.7813+0.0001解得x =0.5997 2.6920 -1.8500 3.3917 0.0000 1.1667(2)不变,对的元素和分别加一个的扰动,求解方程组。 A = 1.000000000000000 1.000000000000000 1.000000000000000 1.000000000000000 1.000000000000000 1.0000

5、00000000000 1.000000000000000 1.100001000000000 1.210000000000000 1.331000000000000 1.464100000000001 1.610510000000001 1.000000000000000 1.200000000000000 1.440000000000000 1.728000000000000 2.073600000000000 2.488319999999999 1.000000000000000 1.300000000000000 1.690000000000000 2.197000000000000

6、2.856100000000001 3.712930000000001 1.000000000000000 1.400000000000000 1.960000000000000 2.743999999999999 3.841599999999999 5.378239999999998 1.000000000000000 1.500000000000000 2.250000000000000 3.375000000000000 5.062500000000000 7.593751000000000x =0.825832305593523 1.742109746543727 -0.2595378

7、80024995 2.064585114452380 0.551832152872303 1.075178560563062三、误差分析:从上面计算结果可以看出,当系数矩阵或右端向量发生极小的扰动,方程组的解也会产生很大的误差,产生的原因是范德蒙阵为变态阵。由数值计算知识可知 其中 为条件数,从上式看到,当A的条件数很大时,解的相对误差也很大,此时的对应的线性方程为病态线性方程组。计算条件数时,取矩阵的无穷范数,经计算得矩阵、受扰动后的矩阵和的条件数为;可以看到三个矩阵的条件数非常大,即使系数矩阵或右端向量发生很小的变化,也会导致解产生很大的误差。四、收获与体会:运用matlab编程解决数学问

8、题很方便,病态阵的条件数非常大,给系数矩阵或者右端向量一个很微小的扰动,方程组的解也会产生很大的变动。通过做这个题目,我对让课上抽象病态现象有了直观的认识。题目二:多项式插值在区间上对龙格函数做插值,分别用等距节点(节点步长)和切比雪夫多项式的零点做插值节点,画出原函数和两个插值函数的图像进行比较,并利用对两种插值方法做误差分析。一.数学原理:1.拉格朗日等距节点插值拉格朗日插值多项式为 其中 余项为 与有关。2.拉格朗日以切比雪夫零点为节点插值切比雪夫多项式 在区间 上有 个零点,为 由上式得到切比雪夫多项式的个零点,并作为插值节点做拉格朗日插值,得到多项式。一.计算过程:原函数为y=1./

9、(1+x.2),通过matlab绘图得到原函数图像为:1. 利用拉格朗日差分(等距节点):x =(-5 -4 -3 -2 -1 0 1 2 3 4 5)y=1./(1+x.2)= (0.0385 0.0588 0.1000 0.2000 0.5000 1.0000 0.5000 0.2000 0.1000 0.0588 0.0385)拉格朗日插值多项式为:=(t*(t/8 + 5/8)*(t - 1)*(t - 2)*(t + 2)*(t - 3)*(t + 3)*(t - 4)*(t + 4)*(t - 5)/4320 - (t*(t/15 + 1/3)*(t - 1)*(t + 1)*(t

10、 - 2)*(t - 3)*(t + 3)*(t - 4)*(t + 4)*(t - 5)/10080 - (t/5 + 1)*(t - 1)*(t + 1)*(t - 2)*(t + 2)*(t - 3)*(t + 3)*(t - 4)*(t + 4)*(t - 5)/2880 + (t*(t/20 + 1/4)*(t - 1)*(t + 1)*(t - 2)*(t + 2)*(t - 3)*(t - 4)*(t + 4)*(t - 5)/40320 + (t*(t/12 + 5/12)*(t + 1)*(t - 2)*(t + 2)*(t - 3)*(t + 3)*(t - 4)*(t +

11、 4)*(t - 5)/2880 - (t*(t/17 + 5/17)*(t - 1)*(t + 1)*(t - 2)*(t + 2)*(t - 3)*(t + 3)*(t - 4)*(t - 5)/362880 + (t*(t/26 + 2/13)*(t - 1)*(t + 1)*(t - 2)*(t + 2)*(t - 3)*(t + 3)*(t - 4)*(t - 5)/3628800 - (t*(t/35 + 1/7)*(t - 1)*(t + 1)*(t + 2)*(t - 3)*(t + 3)*(t - 4)*(t + 4)*(t - 5)/4320 + (t*(t/80 + 1/

12、16)*(t - 1)*(t + 1)*(t - 2)*(t + 2)*(t + 3)*(t - 4)*(t + 4)*(t - 5)/10080 - (t*(t/153 + 5/153)*(t - 1)*(t + 1)*(t - 2)*(t + 2)*(t - 3)*(t + 3)*(t + 4)*(t - 5)/40320 + (t*(t/260 + 1/52)*(t - 1)*(t + 1)*(t - 2)*(t + 2)*(t - 3)*(t + 3)*(t - 4)*(t + 4)/362880注:Matlab中用t表示变量x通过matlab绘图的插值后多项式曲线为:2切比雪夫零点插值:在-1,1上有11个不同零点: ,=(0.9898 0.9096 0.7557 0.5406 0.2817 0.0000 -0.2817 -0.5406 -0.7557 -0.9096 -0.9898)将-1,1区间到-5,5区间进行转化得:x=5*=(4.9491 4.5482 3.7787 2.7032 1.4087 0.0000 -1.4087 -2.7032 -3.7787 -4.5482 -4.9491)y=1./(1+x.2)=( 0.0392 0.0461 0.0654 0.1204 0.3351 1.0000

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号