数值分析课程设计报告书.doc_第1页
数值分析课程设计报告书.doc_第2页
数值分析课程设计报告书.doc_第3页
数值分析课程设计报告书.doc_第4页
数值分析课程设计报告书.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

西安郵電學院数值分析课程设计报告书院系名称:理学院应用数学系学生姓名:伍选华专业名称:信息与计算科学班 级:信息0902时间:2011年6月20日至2011年7月1日实验一 三次样条插值的三弯矩法 一、实验内容1.用三次样条插值的三弯矩法,编制第一与第二种边界条件的程序.已知数据如下:0.20.40.60.81.00.97986520.91777100.80803480.63860930.38433735求的三次样条插值函数满足:(1)自然边界条件(2)第一种边界条件要求输出用追赶法解出的弯矩向量(,)及(i=0,1,2,3,4,5,6,7,8)的值.并画出的图形.二、实验原理在计算过程中,因为三次样条插值的函数是三次的,对它求二阶导数就得到一个线性函数,因此只要知道的值,及知道弯距量,就可以表示出,对进行两次积分就得到的表达式。1。若给出的是第一类边界条件,及给出的是端点出的一阶导数。则根据下列公式利用追赶法可解出。用,其中 2若给出的是自然边界条件,则 , 根据下列公式利用追赶法求出。二、实验结果1给出自然边界条件:用追赶法求得的弯矩量为:m0=0m1=-1.4513m2=-0.67057m3=-3.0127m4=0要计算的九个节点处的值为: ans= 0.9798652, 0.9541227, 0.9177710, 0.8721112, 0.8080348, 0.7308539, 0.6386093, 0.5114914, 0.3843735 2给出第一种边界条件用追赶法求得的弯矩量为:m0=-7.4996m1=-0.39631m2=1.9385m3=-16.3111m4=50.5844要计算的九个节点出的值为: ans= 0.9798652, 0.9685578, 0.9177710, 0.8590474, 0.8080348, 0.7592536, 0.6386093, 0.4258082, 0.3843735 实验二 最小二乘法的曲线拟合一、实验内容2.编制以离散点的正交多项式为基的最小二乘拟合程序,并用于对下列数据做三次多项式最小二乘拟合.-0.1-0.50.00.51.01.52.0-4.447-0.4520.5510.048-0.4470.5494.552取权1,求出拟合曲线,输出,及平方误差,并画出的图形.二、实验原理对于给定的数据,选取线性无关的函数族,以及权函数,求一个函数使得在给定点的函数值与给定点的值误差最小。系数及为所求解的系数.用正交多项式拟合时,用施密特正交化法选取一组正交函数族用同样的方法进行拟合。三、实验结果1.用拟合平方误差:2.1762e-005参数:1.9991 -2.9977 -3.9683e-005 0.549122.用正交多项式拟合平方误差:2.1762e-005参数:1.9991 -2.9977 -3.9683e-005 0.54912三项递推公式的系数为:p1= 0 1.00000000000000 0.75000000000000 p1= 0.50000000000000 0.50000000000000 0.50000000000000 p3=0.05057142857143 2.00007142857143 0.00100000000000 1.99911111111111. 实验三 用龙贝格5点高斯及复化3点高斯求积分值一、实验内容3.给出积分, , (1)运用龙贝格求积公式计算上述积分i的值,要求到时结束,输出t表及i的近似值.(2)用5点高斯求积公式及复化3点高斯求积公式计算上述积分,并输出i的近似值.(3)分析比较各种计算结果.二、实验原理1.romberg求积算法的计算过程。(1)取,求,令记k为区间 的二分次数。(2).按公式求梯形值,及计算,(3).求加速值。及求(4).若,则在终止计算,并;否则令转2继续计算。其中, 2.gauss五点求积算法的计算过程运用gauss_legendre求积公式。以legendre多项式的零点为高斯点计算。,其中的可用已知表中给出的数据直接带入公式求解。对于任意区间上的guass公式,可以作变量置换将任意区间化为区间。则有3.对于复化的gauss三点,将区间等分,在每一个小区间上用gauss三点求积公式。gauss三点与gauss五点同理。三、实验结果1.第一个积分过程用龙贝格法求积分t =columns 1 through 30.07326255555494 0 0 0.40451071894891 0.51492677341357 0 0.41817958499048 0.42273587367100 0.41658981368816 0.42158203719810 0.42271618793398 0.42271487555151 0.42243897582396 0.42272462203258 0.42272518430582 0.42265351726695 0.42272503108128 0.42272505835119 columns 4 through 6 0 0 0 0 0 0 0 0 0 0.42281209875569 0 0 0.42272534793684 0.42272500773755 0 0.42272505635191 0.42272505520844 0.42272505525485用龙贝格法求积分:i =0.42272505525485用五点gauss求积分: g5 = 0.42272077520260用复化三点gauss求积法: g3 =0.422725056028722.第二个积分过程用龙贝格法求积分:t =columns 1 through 3 -0.39269908169872 0 0 -0.35901082642043 -0.34778140799434 0 -0.34975833397528 -0.34667416982689 -0.34660035394906 -0.34737498886669 -0.34658054049715 -0.34657429854184 -0.34677427522895 -0.34657403734971 -0.34657360380655columns 4 through 5 0 0 0 0 0 0 -0.34657388496395 0 -0.34657359277900 -0.34657359163318用龙贝格法求积分i =-0.34657359163318用五点gauss求积分: g5 = -0.34657373704616用复化三点gauss求积法: g3 =-0.346573590223053第三个积分过程用龙贝格法求积分:t= columns 1 through 3 0.22916666666667 0 0 0.20982142857143 0.20337301587302 0 0.20454441391941 0.20278540903541 0.20274623524624 0.20318824967775 0.20273619493053 0.20273291399021 0.20284665344961 0.20273278804022 0.20273256091420columns 4 through 5 0 0 0 0 0 0 0.20273270254170 0 0.20273255530982 0.20273255473244用龙贝格法求积分:i =0.20273255473244用五点gauss求积分: g5 =0.20273264180051用复化三点gauss求积法: g3 = 0.20273255402523实验四 比较一阶导数的数值方法一、实验内容4.比较求一阶导数的数值方法,给出函数.利用某距离点函数值,必要时给定端点导数值,分别用中心差分,理查森外推计算的一阶导数,分析,比较各种方法的效果,说明精度与步长h的关系。二、实验原理1中心差分式利用中点公式求得导数的近似值,2。理查森外推法式利用中点公式计算导数时,然后利用理查森外推法,对逐次二分,记,则有。三、实验结果所取的求导点:x = 0.5000 0.8000 1.1000 1.4000 1.7000 2.0000准确解为:y =-29.5562 -5.4537 -2.0513 -1.0422 -0.6231 -0.4122理查森求导:y=-29.5562 -5.4537 -2.0513 -1.0422 -0.6231 -0.4122中心差分求导:h =0.0200y = -29.5562 -5.4622 -2.0527 -1.0426 -0.6233 -0.4122h =0.0100y = -29.5562 -5.4558 -2.0516 -1.0423 -0.6232 -0.4122h = 0.0050y = -29.5562 -5.4542 -2.0514 -1.0422 -0.6231 -0.4122四、实验结果分析从以上数据可以看出来,理查森外推求导的精确度相当的高。对于中心差分求导法。取不同的步长,解的精确度不一样,可以看出来,步长越小精度越高。这是因为,时,用这个公式求得的解就等于真实值。所以步长越小,精度越高。实验五 高斯列主元消去法和lu分解求方程组的解一、实验内容5. 给定方程组1 2.用lu分解和列主元高斯消去法求解上述两个方程组,输出ax=b中矩阵a及向量,分解的与,及解向量.(1) 用lu分结合列主元高斯消去法求解上述两个方程组.输出ax=b中矩阵a及向量b,a=lu分解的l,u,deta及解向量x.(2) 将方程组中系数3.01改为3.00,0.987改为0.990.用列主元高斯消去法求解,输出列主元行交换次序、解向量x及deta,并与(1)中结果比较.将方程组中的2.099999改为2.1,5.900001改为5.9.用列主元高斯消去法求解,输出解向量x及deta,并与(1)中结果比较.二 实验原理1高斯列主元消去法求解方程的解高斯列主元消去法首先在增广矩阵的第一列个元素中选取绝对值最大的值一个作为主元素,并把此元素所在的行与第一行进行交换,然后通过初等行变换把第一列后的个元素消为0,得到增广矩阵;其次,在矩阵的第二列后个与元素中选取绝对值最大的一个作为主元素,并把它所在的行与第二行元素进行交换,然后通过初等行变换把第二行后的个元素消为0,得到增广矩阵,按此方法做下去,只要,消元过程就能进行到底,最后得到一个与原方程同解的上三角方程组,最后回代求解。2.lu分解求方程组的解lu分解法是将非奇异矩阵a分解为其中为单位下三角矩阵,为下三角矩阵。求出的第一行,再求出的第一列,求出的第二行,再求出的第二列,这样依次进行下去,求出的各个元素。则方程组就变成,求解的前推公式,解出的值,然后再求解的回代过程,解出。三 实验结果1.求解方程组一(1)高斯列主元消去法解方程组x = 1.0e+003 * 1.59259962484138 -0.63191137620255-0.49361772475939(2)用lu分解法解方程组l =1.00000000000000 0 0 0.42192691029900 1.00000000000000 0 0.32790697674419 -4.20061889585689 1.00000000000000u =3.01000000000000 6.03000000000000 1.99000000000000 0 1.61578073089701 -2.06963455149502 0 0 -0.00628088824920det(a)=-0.03054710000000用lu分解求解方程的解为:x =1.0e+003 *1.59259962484138 -0.63191137620255 -0.493617724759392.求解方程组二(1)高斯列主元消去法解方程组x =0.00000000000000 -1.00000000000000 1.00000000000000 1.00000000000000(2)用lu分解法解方程组l =1.0e+006 * columns 1 through 3 0.00000100000000 0 0 -0.00000030000000 0.00000100000000 0 0.00000050000000 -2.49999999965056 0.00000100000000 0.00000020000000 -2.39999999966453 0.00000095999968column 4 0 0 0 0.00000100000000u =1.0e+007 *columns 1 through 3 0.00000100000000 -0.00000070000000 0 0 -0.00000000000010 0.00000060000000 0 0 1.50000049979033 0 0 0column 4 0.00000010000000 0.00000023000000 0.57499984991963 0.00000050799989det(a)= -7.620000900000001e+002用lu分解求解方程的解为:x =-0.00000000060339 -1.00000000088818 1.00000000007028 0.999999999816673.对方称组的元素进行修改后所的到的解(1)对方程一的元素进行修改后的系数及所求的解x为x =1.0e+002 * 1.19527338125959 -0.47142604431296 -0.36840256109126(2)对方程二的元素进行修改后的系数及所求的解x为 x =0.00000000000000 -1.00000000000000 1.00000000000000 1.00000000000000四、实验结果分析从实验结果3中的结果可以看出,对方程组一,与方程组二的部分元素进行修改后,方程组一的结果变化比较明显,而方程组二的解变化不大。误差分析:对于方程组,我们知道右端项和系数矩阵的扰动对方程解的影响与矩阵的条件数有关,方程组一的 为 5.675080428255772e+004,而方程组二的为12.40157333839685,可以看出来方程组一的条件数是方程组二的条件数的4000多倍,因而方程组一的扰动比方程组二的解的扰动要大很多。 实验六 研究线性代数方程组的迭代法收敛速度一、实验内容6. 研究解线性方程方程组迭代法收敛速度,给定为五对角矩阵(1)选取不同的初始向量及右端项向量,给定迭代误差要求,用雅可比迭代和 法求解,观察得到的序列是否收敛?若收敛,记录迭代次数,分析计算结果并得出你的结论.(2)用迭代法求上述方程组的解,松弛系数取12的不同值,在时停止迭代.记录迭代次数,分析计算结果并得出你的结论.二、实验原理1jacobi迭代原理是从方程组的第个方程中分离出来若,则将它改写为的迭代形式,若给定一组初值,则可以带入迭代公式进行迭代求解,直到它的精度满足要求为止。2gaussseidel迭代与雅克比迭代同理,只是迭代过程中若求出了某个变元的新值,则用新值代替它的老值,进行这一步剩下的计算。从而较快收敛。3sor方法,实质上是gauss-seidel迭代的一种加速方法,这种方法将前一步的结果与后一步的结果适当的加权平均,期望的到更好的近似值。然后再带入公式进行下一次迭代。三、实验结果jacobbi迭代次数为:10迭代求得的解为;ans =0.1934 0.2103 0.2200 0.2215 0.2221 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2221 0.2215 0.2200 0.2103 0.1934gauss_seidel迭代次数为:8迭代求得的解为;ans =0.1934 0.2103 0.2200 0.2215 0.2221 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.22220.2222 0.2221 0.2215 0.2200 0.2103 0.1934sor松弛系数为:1;迭代次数为:8迭代求得的解为:ans=0.1934 0.2103 0.2200 0.2215 0.2221 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2221 0.2215 0.2200 0.2103 0.1934sor松弛系数为:1.2; 迭代次数为:10迭代求得的解为:ans = 0.1934 0.2103 0.2200 0.2215 0.2221 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2221 0.2215 0.2200 0.2103 0.1934sor松弛系数为:1.4; 迭代次数为:16迭代求得的解为:ans = 0.1934 0.2103 0.2200 0.2215 0.2221 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2222 0.2221 0.2215 0.2200 0.2103 0.1934sor松弛系数为:1.6 ;迭代次数为:28sor松弛系数为:1.8; 迭代次数为:64四、实验结果分析从上面的数据可以看出来gauss_seidel迭代比jacobbi迭代的迭代次数更少,而对于sor迭代过程不同的松弛系数迭代的次数不同,选取适当的松弛系数,可以减少迭代的次数。若选取不当,则会使得迭代次数更多。实验七 用迭代法解非线性方程及方程组的根一、实验内容7. 求非线性方程及方程组的根,精确到,给定方程分别为:(i) (ii) .(1) 用你自己设计出的一种线性收敛迭代法求方程(i)的根,然后再用斯蒂芬森加速迭代计算.(2) 用牛顿法求方程(i)的根,输出迭代初值,各次迭代值及迭代次数,并与(1)的结果比较.(3) 用牛顿法求(ii)的解,输出迭代次数及解向量的近似值.二、实验原理1.线性迭代原理通常,用迭代法求的近似根时,将方程转化为的形式,给出根的某一个猜测值,及初值。代入的右端,转化为,再取为猜测值,反复计算,直到则就是方程的解。2.斯蒂芬森加速是用下列的迭代公式,同理迭代,3.牛顿迭代法时用下列牛顿公式同理迭代4.解非线性方程组用矩阵的迭代公式计算。三、实验结果1.用线性收敛迭代法求的根为:0.25753迭代次数为:11用斯蒂芬森加速法求的根为:0.25753迭代次数为:3用牛顿迭代法求的过程值为:0.25 0.25752 0.25753 0.25753迭代次数为:42.用牛顿法解方程组的解方程组的解为:0.5 0.86603迭代次数为:5四、实验结果分析从上述数据可以看出来,用三种迭代求方程的根,迭代次数不同。斯蒂芬森加速法和牛顿迭代法比线性收敛的迭代收敛效果更好。实验八 用qr法求矩阵的特征值一、实验内容8. 用qr算法求矩阵特征值:(i) (ii)(1) 根据qr算法原理编制求(i)及(ii)中矩阵全部特征值的程序并输出计算结果(要求误差.(2) 直接用现有数学软件求(i),(ii)的全部特征值,并与(1)的结果比较.二、实验原理qr方法是求一般矩阵的全部特征值和特征向量的一种迭代方法,通过迭代方法产生序列,我们可以推算得到与是相似的,它们有共同的特征值。在一定的条件下,上式产生的序列是收敛于上三角矩阵的,其主对角显上的元素就是矩阵的特征值,如果收敛于分块上三角形,则主对角线上各个子块的特征值就是矩阵的特征值。三、实验结果(1)求a的特征值数学软件求的特征值为:t =0.5789 2.1331 7.2880用qr算法求的特征值为:l =7.2880 2.1331 0.5789(2)求h的特征值数学软件求的特征值为:t =13.1724 6.5519 1.5957 -0.3908 -0.9291用qr算法求的特征值为:l = 13.1723 6.5519 1.5957 -0.9291 -0.3908实验九 改进的欧拉法和经典四阶p_k法求初值解一、实验内容9.求初值问题的数值解,给定初值问题为(i) (ii) (1)用改进欧拉法(取h=0.05)及四阶r-k.方法(取h=0.1)求(i)的数值解,并输出的数值解(2)用经典四阶r-k方法解(ii),步长h 分别取为h=0.1,0.025,0.01计算,并输出各点的数值解,并分析结果.(初值问题(ii)的准确解)二、实验原理改进的欧拉法是结合显式欧拉与梯形公式,将梯形公式显示化,从而迭代求

温馨提示

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

评论

0/150

提交评论