文档库 最新最全的文档下载
当前位置:文档库 › 西南交通大学数值分析上机实习报告要求

西南交通大学数值分析上机实习报告要求

西南交通大学数值分析上机实习报告要求
西南交通大学数值分析上机实习报告要求

数值分析2016上机实习报告要求

1.应提交一份完整的实习报告。具体要求如下:

(1) 报告要排版,美观漂亮;要标明姓名、学号、专业和联系电话;

(2) 要有目录,指明题目、程序、计算结果,图标和分析等内容所在位置,作

到信息简明而完全;

(3)要有总结,全方位总结机编程计算的心得体会;

(4)尽量使报告清晰明了,一般可将计算结果、图表及对比分析放在前面,程序

清单作为附录放在后面,程序中关键部分要有中文说明或标注,指明该部分的功能和作用。

2.程序需完好保存到期末考试后的一个星期,以便老师索取用于验证、询问或质疑部分内容。

3.认真完成实验内容,可以达到既学习计算方法又提高计算能力的目的,还可以切身体会书本内容之精妙所在,期间可以得到很多乐趣。

4.拷贝或抄袭他人结果是不良行为,将视为不合格。

5.请按任课老师要求的时间和载体(电子或纸质)提交给任课老师。

6.提交电子邮件请务必按述格式命名邮件主题和文档名,以方便统计

学号姓名2016_2上机实习报告

如:2015201597张帅哥数值分析2016-2计算报告

数值分析上机试题

1. 编程计算∑∞

=11n cn , 其中c= 4.4942?10307, 给出并观察计算结果,若有问题,分析之。

2. 利用牛顿法求方程ln 2x x -=于区间[2,4]的根,考虑不同初值下牛顿法的收敛情况。

3. 给出1

251

2+=x y 在xk=0+0.25k 处的值yk, k=0,1,2,3,4. 请给出由节点 xk 确定的三次样条插

值函数S(x), 使其满足条件:S /(0)=0, S /(1)=-0.074, 分析逼近效果如何?

4. 松弛因子对SOR 法收敛速度的影响。

用SOR 法求解方程组Ax =b ,其中

?????????

? ??=?????????? ??----3-2-.2-2-3-B 4114114114,...... 要求程序中不存系数矩阵A ,分别对不同的阶数取w=1.1, 1.2, ...,1.9进行迭代,记录近似解x (k)达到||x (k)-x (k-1)||<10-6时所用的迭代次数k ,观察松弛因子对收敛速度的影响,并观察当w ≤0或w ≥2会有什么影响?

5. 用Ru n ge-Kutt a 4阶算法对初值问题y /=-20*y ,y (0)=1按不同步长求解,用于观察稳定区间的

作用,推荐两种步长h=0.1,0.2。

注:此方程的精确解为:y =e -20x

西南交大 数值分析题库

考试目标及考试大纲 本题库的编纂目的旨在给出多套试题,每套试题的考查范围及难度配置均基于“水平测试”原则,按照教学大纲和教学内容的要求,通过对每套试题的解答,可以客观公正的评定出学生对本课程理论体系和应用方法等主要内容的掌握水平。通过它可以有效鉴别和分离不同层次的学习水平,从而可以对学生的学习成绩给出客观的综合评定结果。 本题库力求作到能够较为全面的覆盖教学内容,同时突显对重点概念、重点内容和重要方法的考查。考试内容包括以下部分: 绪论与误差:绝对误差与相对误差、有效数字、误差传播分析的全微分法、相对误差估计的条件数方法、数值运算的若干原则、数值稳定的算法、常用数值稳定技术。 非线性方程求解:方程的近似解之二分法、迭代法全局收敛性和局部收敛定理、迭代法误差的事前估计法和事后估计法、迭代过程的收敛速度、r 阶收敛定理、Aitken加速法、Ne w to n法与弦截法、牛顿局部收敛性、Ne w to n收敛的充分条件、单双点割线法(弦截法)、重根加速收敛法。 解线性方程组的直接法:高斯消元法极其充分条件、全主元消去法、列主元消去法、高斯-若当消元法、求逆阵、各种消元运算的数量级估计与比较、矩阵三角分解法、Doolittle 和Crout三角分解的充分条件、分解法的手工操作、平方根法、Cholesky分解、改进的平方根法(免去开方)、可追赶的充分条件及适用范围、计算复杂性比较、严格对角占优阵。 解线性方程组迭代法:向量和矩阵的范数、常用向量范数的计算、范数的等价性、矩阵的相容范数、诱导范数、常用范数的计算;方程组的性态和条件数、基于条件数误差估计与迭代精度改善方法;雅可比(Jacobi)迭代法、Gauss-Seidel迭代法、迭代收敛与谱半径的关系、谱判别法、基于范数的迭代判敛法和误差估计、迭代法误差的事前估计法和事后估计法;严格对角占优阵迭代收敛的有关结论;松弛法及其迭代判敛法。 插值法:插值问题和插值法概念、插值多项式的存在性和唯一性、插值余项定理;Lagrange插值多项式;差商的概念和性质、差商与导数之间的关系、差商表的计算、牛顿(Newton)插值多项式;差分、差分表、等距节点插值公式;Hermite插值及其插值基函数、误差估计、插值龙格(Runge)现象;分段线性插值、分段抛物插值、分段插值的余项及收敛性和稳定性;样条曲线与样条函数、三次样条插值函数的三转角法和三弯矩法。 曲线拟合和函数逼近:最小二乘法原理和多项式拟合、函数线性无关概念、法方程有唯一解的条件、一般最小二乘法问题、最小二乘拟合函数定理、可化为线性拟合问题的常见函数类;正交多项式曲线拟合、离散正交多项式的三项递推法。最佳一致逼近问题、最佳一致逼近多项式、切比雪夫多项式、切比雪夫最小偏差定理、切比雪夫多项式的应用(插值余项近似极小化、多项式降幂)。本段加黑斜体内容理论推导可以淡化,但概念需要理解。 数值积分与微分:求积公式代数精度、代数精度的简单判法、插值型求积公式、插值型求积公式的代数精度;牛顿一柯特斯(Newton-Cotes)公式、辛卜生(Simpson)公式、几种低价牛顿一柯特斯求积公式的余项;牛顿一柯特斯公式的和收敛性、复化梯形公式及其截断误差、复化Simpson公式及其截断误差、龙贝格(Romberg)求积法、外推加速法、高斯型求积公式、插值型求积公式的最高代数精度、高斯点的充分必要条件。正交多项式的构造方法、高斯公式权系数的建立、Gauss-Legendre公式的节点和系数。本段加黑斜体内容理论推导可以淡化,但概念需要理解。 常微分方程数值解:常微分方程初值问题数值解法之欧拉及其改进法、龙格—库塔法、阿当姆斯方法。

数值分析实验报告1

实验一误差分析 实验1.1(病态问题) 实验目的:算法有“优”与“劣”之分,问题也有“好”与“坏”之别。对数值方法的研究而言,所谓坏问题就是问题本身对扰动敏感者,反之属于好问题。通过本实验可获得一个初步体会。 数值分析的大部分研究课题中,如线性代数方程组、矩阵特征值问题、非线性方程及方程组等都存在病态的问题。病态问题要通过研究和构造特殊的算法来解决,当然一般要付出一些代价(如耗用更多的机器时间、占用更多的存储空间等)。 问题提出:考虑一个高次的代数多项式 显然该多项式的全部根为1,2,…,20共计20个,且每个根都是单重的。现考虑该多项式的一个扰动 其中ε(1.1)和(1.221,,,a a 的输出b ”和“poly ε。 (1(2 (3)写成展 关于α solve 来提高解的精确度,这需要用到将多项式转换为符号多项式的函数poly2sym,函数的具体使用方法可参考Matlab 的帮助。 实验过程: 程序: a=poly(1:20); rr=roots(a); forn=2:21 n form=1:9 ess=10^(-6-m);

ve=zeros(1,21); ve(n)=ess; r=roots(a+ve); -6-m s=max(abs(r-rr)) end end 利用符号函数:(思考题一)a=poly(1:20); y=poly2sym(a); rr=solve(y) n

很容易的得出对一个多次的代数多项式的其中某一项进行很小的扰动,对其多项式的根会有一定的扰动的,所以对于这类病态问题可以借助于MATLAB来进行问题的分析。 学号:06450210 姓名:万轩 实验二插值法

西南交大数值分析题库填空

一. 填空 2.Gauss型求积公式不是插值型求积公式。(限填“是”或“不是”) 3. 设l k(x)是关于互异节点x0, x1,…, x n, 的Lagrange 插值基函数,则 0 m=1,2,…,n 5.用个不同节点作不超过次的多项式插值,分别采用Lagrange插值方法与Newton插值方法所得多项式相等(相等, 不相等)。 。 7. n个不同节点的插值型求积公式的代数精度一定会超过n-1次 8.f(x)=ax7+x4+3x+1,f[20, 21,…,27]= a,f [20, 21,…,28]= 0 10设 (i=0,1,…,n),则= _x_ , 这里(x i x j,ij, n2)11.设称为柯特斯系数 则=______1____ 12采用正交多项式拟合可避免最小二乘或最佳平方逼近中常见的_法方程组病态___问题。 13辛卜生(Simpson)公式具有___3____次代数精度。 14 牛顿插商与导数之间的关系式为: 15试确定[0,1]区间上2x3的不超过二次的最佳一致逼近多项式p(x), 该多项式唯一否?答:p(x)=(3/2)x, ; 唯一。 17.给定方程组记此方程组的Jacobi迭代矩阵为B J=(a ij)33,则a23= -1; ,且相应的Jacobi迭代序列是__发散_____的。 18.欧拉预报--校正公式求解初值问题的迭代格式(步长为h) ,此方法是阶方法。 ,此方法是 2阶方法。 19. 2n阶Newton-Cotes公式至少具有2n+1次代数精度。 20.设,则关于的 ||f|| =1 21矩阵的LU分解中L是一个 _为单位下三角阵,而U是一个上三角阵____。 22.设y=f (x1,x2) 若x1,x2,的近似值分别为x1*, x2*,令y*=f(x1*,x2*)作为y的近似值,其绝对误差限的估计式为: ||f(x1*,x2*)|x1-x*1|+ |f(x1*,x2*)|x2- x*2| 23设迭代函数(x)在x*邻近有r(1)阶连续导数,且x* = (x*),并且有(k) (x*)=0 (k=1,…,r-1),但(r) (x*)0,则x n+1=(x n)产生的序列{ x n }的收敛阶数为___r___ 24设公式为插值型求积公式,则, 且=b-a 25称微分方程的某种数值解法为p阶方法指的是其局部截断误差 为O(h p+1)。 26.设x0, x1,x2是区间[a, b]上的互异节点,f(x)在[a, b]上具有各阶导数,过

数值计算实验报告

(此文档为word格式,下载后您可任意编辑修改!) 2012级6班###(学号)计算机数值方法 实验报告成绩册 姓名:宋元台 学号: 成绩:

数值计算方法与算法实验报告 学期: 2014 至 2015 第 1 学期 2014年 12月1日课程名称: 数值计算方法与算法专业:信息与计算科学班级 12级5班 实验编号: 1实验项目Neton插值多项式指导教师:孙峪怀 姓名:宋元台学号:实验成绩: 一、实验目的及要求 实验目的: 掌握Newton插值多项式的算法,理解Newton插值多项式构造过程中基函数的继承特点,掌握差商表的计算特点。 实验要求: 1. 给出Newton插值算法 2. 用C语言实现算法 二、实验内容 三、实验步骤(该部分不够填写.请填写附页)

1.算法分析: 下面用伪码描述Newton插值多项式的算法: Step1 输入插值节点数n,插值点序列{x(i),f(i)},i=1,2,……,n,要计算的插值点x. Step2 形成差商表 for i=0 to n for j=n to i f(j)=((f(j)-f(j-1)(x(j)-x(j-1-i)); Step3 置初始值temp=1,newton=f(0) Step4 for i=1 to n temp=(x-x(i-1))*temp*由temp(k)=(x-x(k-1))*temp(k-1)形成 (x-x(0).....(x-x(i-1)* Newton=newton+temp*f(i); Step5 输出f(x)的近似数值newton(x)=newton. 2.用C语言实现算法的程序代码 #includeMAX_N) { printf("the input n is larger than MAX_N,please redefine the MAX_N.\n"); return 1; } if(n<=0) { printf("please input a number between 1 and %d.\n",MAX_N); return 1; } printf("now input the (x_i,y_i)i=0,...%d\n",n); for(i=0;i<=n;i++) { printf("please input x(%d) y(%d)\n",i,i);

数值分析上机实验报告

数值分析上机实验报告

《数值分析》上机实验报告 1.用Newton 法求方程 X 7-X 4+14=0 在(0.1,1.9)中的近似根(初始近似值取为区间端点,迭代6次或误差小于0.00001)。 1.1 理论依据: 设函数在有限区间[a ,b]上二阶导数存在,且满足条件 {}α?上的惟一解在区间平方收敛于方程所生的迭代序列 迭代过程由则对任意初始近似值达到的一个中使是其中上不变号 在区间],[0)(3,2,1,0,) (') ()(],,[x |))(),((|,|,)(||)(|.4;0)(.3],[)(.20 )()(.110......b a x f x k x f x f x x x Newton b a b f a f mir b a c x f a b c f x f b a x f b f x f k k k k k k ==- ==∈≤-≠>+ 令 )9.1()9.1(0)8(4233642)(0)16(71127)(0)9.1(,0)1.0(,1428)(3 2 2 5 333647>?''<-=-=''<-=-='<>+-=f f x x x x x f x x x x x f f f x x x f 故以1.9为起点 ?? ?? ? ='- =+9.1)()(01x x f x f x x k k k k 如此一次一次的迭代,逼近x 的真实根。当前后两个的差<=ε时,就认为求出了近似的根。本程序用Newton 法求代数方程(最高次数不大于10)在(a,b )区间的根。

1.2 C语言程序原代码: #include #include main() {double x2,f,f1; double x1=1.9; //取初值为1.9 do {x2=x1; f=pow(x2,7)-28*pow(x2,4)+14; f1=7*pow(x2,6)-4*28*pow(x2,3); x1=x2-f/f1;} while(fabs(x1-x2)>=0.00001||x1<0.1); //限制循环次数printf("计算结果:x=%f\n",x1);} 1.3 运行结果: 1.4 MATLAB上机程序 function y=Newton(f,df,x0,eps,M) d=0; for k=1:M if feval(df,x0)==0 d=2;break else x1=x0-feval(f,x0)/feval(df,x0); end e=abs(x1-x0); x0=x1; if e<=eps&&abs(feval(f,x1))<=eps d=1;break end end

西南交大数值分析题库积分微分方程

用复化梯形公式计算积分 1 ()f x dx ?,要把区间[0,1]一般要等分 41 份才能保 证满足误差小于0.00005的要求(这里(2) () 1f x ∞ ≤) ;如果知道(2) ()0f x >,则 用复化梯形公式计算积分1 ()f x dx ? 此实际值 大 (大,小)。 在以1 0((),())()(),(),()[0,1]g x f x xf x g x dx f x g x C = ∈?为内积的空间C[0,1] 中,与非零常数正交的最高项系数为1的一次多项式是 2 3 x - 3. (15分)导出用Euler 法求解 (0)1y y y λ'=??=? 的公式, 并证明它收敛于初值问题的精确解 解 Euler 公式 11,1,,,k k k x y y h y k n h n λ--=+== L -----------(5分) ()()1011k k k y h y h y λλ-=+==+L ------------------- (10分) 若用复化梯形求积公式计算积分1 x I e dx = ? 区间[0,1]应分 2129 等分,即要 计算个 2130 点的函数值才能使截断误差不超过 71 102 -?;若改用复化Simpson 公式,要达到同样精度区间[0,1]应分12 等分,即要计算个 25 点的函数值 1.用Romberg 法计算积分 2 3 2 x e dx -? 解 []02()()2b a T f a f b -= += 9.6410430E-003 10221()222 b a a b T T f -+=+= 5.1319070E-003 10 022243 T T S -= = 4.6288616E-003 22T = 4.4998E-003 21 122243 T T S -= = 4.E-003 10 02221615 S S C -= = 4.6588636E-003 32T = 4.7817699E-003 32 222243 T T S -= = 4.1067038E-003

(完整版)哈工大-数值分析上机实验报告

实验报告一 题目:非线性方程求解 摘要:非线性方程的解析解通常很难给出,因此线性方程的数值解法就尤为重要。本实验采用两种常见的求解方法二分法和Newton法及改进的Newton法。 前言:(目的和意义) 掌握二分法与Newton法的基本原理和应用。 数学原理: 对于一个非线性方程的数值解法很多。在此介绍两种最常见的方法:二分法和Newton法。 对于二分法,其数学实质就是说对于给定的待求解的方程f(x),其在[a,b]上连续,f(a)f(b)<0,且f(x)在[a,b]内仅有一个实根x*,取区间中点c,若,则c恰为其根,否则根据f(a)f(c)<0是否成立判断根在区间[a,c]和[c,b]中的哪一个,从而得出新区间,仍称为[a,b]。重复运行计算,直至满足精度为止。这就是二分法的计算思想。

Newton法通常预先要给出一个猜测初值x0,然后根据其迭代公式 产生逼近解x*的迭代数列{x k},这就是Newton法的思想。当x0接近x*时收敛很快,但是当x0选择不好时,可能会发散,因此初值的选取很重要。另外,若将该迭代公式改进为 其中r为要求的方程的根的重数,这就是改进的Newton法,当求解已知重数的方程的根时,在同种条件下其收敛速度要比Newton法快的多。 程序设计: 本实验采用Matlab的M文件编写。其中待求解的方程写成function的方式,如下 function y=f(x); y=-x*x-sin(x); 写成如上形式即可,下面给出主程序。 二分法源程序: clear %%%给定求解区间 b=1.5; a=0;

%%%误差 R=1; k=0;%迭代次数初值 while (R>5e-6) ; c=(a+b)/2; if f12(a)*f12(c)>0; a=c; else b=c; end R=b-a;%求出误差 k=k+1; end x=c%给出解 Newton法及改进的Newton法源程序:clear %%%% 输入函数 f=input('请输入需要求解函数>>','s') %%%求解f(x)的导数 df=diff(f);

数值分析上机报告

数值分析上机报告 班级:20级学隧2班 姓名:000000000 学号:00000000000

目录 1 序言 (6) 2 题目 (7) 2.1 题2 (7) 2.1.1 题目内容 (7) 2.1.2 MATLAB程序 (8) 2.1.3 计算结果 (8) 2.1.4 图形 (9) 2.1.5 分析 (14) 2.2 题3 (14) 2.2.1 题目内容 (14) 2.2.2 程序 (14) 2.2.3 计算结果 (14) 2.2.4 图形 (15) 2.2.5 分析 (16) 2.3 选做题5 (16) 2.3.1方法介绍 (17) 2.3.2计算结果及分析 (17) 3总结 (18) 4.附录 (19) 4.1 题1程序代码 (19) 4.2 题2程序代码 (22) 4.3 题3程序代码 (26)

数值分析2015上机实习报告要求 1.应提交一份完整的实习报告。具体要求如下: (1)报告要排版,美观漂亮(若是纸质要有封面,封面上)要标明姓名、学号、专业和联系电话; (2)要有序言,说明所用语言及简要优、特点,说明选用的考量; (3)要有目录,指明题目、程序、计算结果,图标和分析等内容所在位置,作到信息简明而完全; (4)要有总结,全方位总结机编程计算的心得体会; (5)尽量使报告清晰明了,一般可将计算结果、图表及对比分析放在前面,程序清单作为附录放在后面,程序中关键部分要有中文说明或标注, 指明该部分的功能和作用。 2.程序需完好保存到期末考试后的一个星期,以便老师索取用于验证、询问或质疑部分内容。 3.认真完成实验内容,可以达到既学习计算方法又提高计算能力的目的,还可以切身体会书本内容之精妙所在,期间可以得到很多乐趣。 4.拷贝或抄袭他人结果是不良行为,将视为不合格。 5.请按任课老师要求的时间和载体(电子或纸质)提交给任课老师。

矩阵与数值分析上机实验题及程序

1.给定n 阶方程组Ax b =,其中 6186186186A ?? ? ? ?= ? ? ??? ,7151514b ?? ? ? ?= ? ? ??? 则方程组有解(1,1,,1)T x = 。对10n =和84n =,分别用Gauss 消去法和列主元消去法解方程组,并比较计算结果。 Gauss 消去法: Matlab 编程(建立GS.m 文件): function x=GS(n) A=[];b=[]; for i=1:n-1 A(i,i)=6; A(i,i+1)=1; A(i+1,i)=8; b(i)=15; end A(n,n)=6;b(1)=7;b(n)=14;b=b'; for k=1:n-1 for i=k+1:n m(i,k)=A(i,k)/A(k,k); A(i,k:n)=A(i,k:n)-m(i,k)*A(k,k:n); b(i)=b(i)-m(i,k)*b(k); end end b(n)=b(n)/A(n,n); for i=n-1:-1:1 b(i)=(b(i)-sum(A(i,i+1:n).*b(i+1:n)'))/A(i,i); end clear x; x=b; disp( 'AX=b 的解x 是') end 计算结果: 在matlab 命令框里输出GS (10)得: >> GS(10) AX=b 的解x 是 ans = 1.0000 1.0000

1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 在matlab命令框里输出GS(84)得:>> GS(84) AX=b的解x是 ans = 1.0e+008 * 0.0000 … … … 0.0000 -0.0000 0.0000 -0.0000 0.0000 -0.0000 0.0000 -0.0000 0.0000 -0.0000 0.0000 -0.0000 0.0000 -0.0001 0.0002 -0.0003 0.0007 -0.0013 0.0026 -0.0052 0.0105 -0.0209 0.0419 -0.0836 0.1665 -0.3303

数值分析实验报告

实验一、误差分析 一、实验目的 1.通过上机编程,复习巩固以前所学程序设计语言及上机操作指令; 2.通过上机计算,了解误差、绝对误差、误差界、相对误差界的有关概念; 3.通过上机计算,了解舍入误差所引起的数值不稳定性。 二.实验原理 误差问题是数值分析的基础,又是数值分析中一个困难的课题。在实际计算中,如果选用了不同的算法,由于舍入误差的影响,将会得到截然不同的结果。因此,选取算法时注重分析舍入误差的影响,在实际计算中是十分重要的。同时,由于在数值求解过程中用有限的过程代替无限的过程会产生截断误差,因此算法的好坏会影响到数值结果的精度。 三.实验内容 对20,,2,1,0 =n ,计算定积分 ?+=10 5dx x x y n n . 算法1:利用递推公式 151--=n n y n y , 20,,2,1 =n , 取 ?≈-=+=1 00182322.05ln 6ln 51dx x y . 算法2:利用递推公式 n n y n y 51511-= - 1,,19,20 =n . 注意到 ???=≤+≤=10 10202010201051515611261dx x dx x x dx x , 取 008730.0)12611051(20120≈+≈y .: 四.实验程序及运行结果 程序一: t=log(6)-log(5);

n=1; y(1)=t; for k=2:1:20 y(k)=1/k-5*y(k-1); n=n+1; end y y =0.0884 y =0.0581 y =0.0431 y =0.0346 y =0.0271 y =0.0313 y =-0.0134 y =0.1920 y =-0.8487 y =4.3436 y =-21.6268 y =108.2176 y =-541.0110 y =2.7051e+003 y =-1.3526e+004 y =6.7628e+004 y =-3.3814e+005 y =1.6907e+006 y =-8.4535e+006 y =4.2267e+007 程序2: y=zeros(20,1); n=1; y1=(1/105+1/126)/2;y(20)=y1; for k=20:-1:2 y(k-1)=1/(5*k)-(1/5)*y(k); n=n+1; end 运行结果:y = 0.0884 0.0580 0.0431 0.0343 0.0285 0.0212 0.0188 0.0169

西南交通大学2018-2019数值分析Matlab上机实习题

数值分析2018-2019第1学期上机实习题 f x,隔根第1题.给出牛顿法求函数零点的程序。调用条件:输入函数表达式() a b,输出结果:零点的值x和精度e,试取函数 区间[,] ,用牛顿法计算附近的根,判断相应的收敛速度,并给出数学解释。 1.1程序代码: f=input('输入函数表达式:y=','s'); a=input('输入迭代初始值:a='); delta=input('输入截止误差:delta='); f=sym(f); f_=diff(f); %求导 f=inline(f); f_=inline(f_); c0=a; c=c0-f(c0)/f_(c0); n=1; while abs(c-c0)>delta c0=c; c=c0-f(c0)/f_(c0); n=n+1; end err=abs(c-c0); yc=f(c); disp(strcat('用牛顿法求得零点为',num2str(c))); disp(strcat('迭代次数为',num2str(n))); disp(strcat('精度为',num2str(err))); 1.2运行结果: run('H:\Adocument\matlab\1牛顿迭代法求零点\newtondiedai.m') 输入函数表达式:y=x^4-1.4*x^3-0.48*x^2+1.408*x-0.512 输入迭代初始值:a=1 输入截止误差:delta=0.0005 用牛顿法求得零点为0.80072 迭代次数为14 精度为0.00036062 牛顿迭代法通过一系列的迭代操作使得到的结果不断逼近方程的实根,给定一个初值,每经过一次牛顿迭代,曲线上一点的切线与x轴交点就会在区间[a,b]上逐步逼近于根。上述例子中,通过给定初值x=1,经过14次迭代后,得到根为0.80072,精度为0.00036062。

数值分析2016上机实验报告

序言 数值分析是计算数学的范畴,有时也称它为计算数学、计算方法、数值方法等,其研究对象是各种数学问题的数值方法的设计、分析及其有关的数学理论和具体实现的一门学科,它是一个数学分支。是科学与工程计算(科学计算)的理论支持。许多科学与工程实际问题(核武器的研制、导弹的发射、气象预报)的解决都离不开科学计算。目前,试验、理论、计算已成为人类进行科学活动的三大方法。 数值分析是计算数学的一个主要部分,计算数学是数学科学的一个分支,它研究用计算机求解各种数学问题的数值计算方法及其理论与软件实现。现在面向数值分析问题的计算机软件有:C,C++,MATLAB,Python,Fortran等。 MATLAB是matrix laboratory的英文缩写,它是由美国Mathwork公司于1967年推出的适合用于不同规格计算机和各种操纵系统的数学软件包,现已发展成为一种功能强大的计算机语言,特别适合用于科学和工程计算。目前,MATLAB应用非常广泛,主要用于算法开发、数据可视化、数值计算和数据分析等,除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。 本实验报告使用了MATLAB软件。对不动点迭代,函数逼近(lagrange插值,三次样条插值,最小二乘拟合),追赶法求解矩阵的解,4RungeKutta方法求解,欧拉法及改进欧拉法等算法做了简单的计算模拟实践。并比较了各种算法的优劣性,得到了对数值分析这们学科良好的理解,对以后的科研数值分析能力有了极大的提高。

目录 序言 (1) 问题一非线性方程数值解法 (3) 1.1 计算题目 (3) 1.2 迭代法分析 (3) 1.3计算结果分析及结论 (4) 问题二追赶法解三对角矩阵 (5) 2.1 问题 (5) 2.2 问题分析(追赶法) (6) 2.3 计算结果 (7) 问题三函数拟合 (7) 3.1 计算题目 (7) 3.2 题目分析 (7) 3.3 结果比较 (12) 问题四欧拉法解微分方程 (14) 4.1 计算题目 (14) 4.2.1 方程的准确解 (14) 4.2.2 Euler方法求解 (14) 4.2.3改进欧拉方法 (16) 问题五四阶龙格-库塔计算常微分方程初值问题 (17) 5.1 计算题目 (17) 5.2 四阶龙格-库塔方法分析 (18) 5.3 程序流程图 (18) 5.4 标准四阶Runge-Kutta法Matlab实现 (19) 5.5 计算结果及比较 (20) 问题六舍入误差观察 (22) 6.1 计算题目 (22) 6.2 计算结果 (22) 6.3 结论 (23) 7 总结 (24) 附录

数值分析实验报告资料

机电工程学院 机械工程 陈星星 6720150109 《数值分析》课程设计实验报告 实验一 函数插值方法 一、问题提出 对于给定的一元函数)(x f y =的n+1个节点值(),0,1,,j j y f x j n ==。试用Lagrange 公式求其插值多项式或分段二次Lagrange 插值多项式。 数据如下: (1 求五次Lagrange 多项式5L ()x ,计算(0.596)f ,(0.99)f 的值。(提示:结果为(0.596)0.625732f ≈, (0.99) 1.05423f ≈) 实验步骤: 第一步:先在matlab 中定义lagran 的M 文件为拉格朗日函数 代码为: function[c,l]=lagran(x,y) w=length(x); n=w-1; l=zeros(w,w); for k=1:n+1 v=1; for j=1:n+1 if(k~=j) v=conv(v,poly(x(j)))/(x(k)-x(j)); end end l(k,:)=v; end c=y*l; end

第二步:然后在matlab命令窗口输入: >>>> x=[0.4 0.55 0.65 0.80,0.95 1.05];y=[0.41075 0.57815 0.69675 0.90 1.00 1.25382]; >>p = lagran(x,y) 回车得到: P = 121.6264 -422.7503 572.5667 -377.2549 121.9718 -15.0845 由此得出所求拉格朗日多项式为 p(x)=121.6264x5-422.7503x4+572.5667x3-377.2549x2+121.9718x-15.0845 第三步:在编辑窗口输入如下命令: >> x=[0.4 0.55 0.65 0.80,0.95 1.05]; >> y=121.6264*x.^5-422.7503*x.^4+572.5667*x.^3-377.2549*x.^2+121.9718 *x-15.0845; >> plot(x,y) 命令执行后得到如下图所示图形,然后 >> x=0.596; >> y=121.6264*x.^5-422.7503*x.^4+572.5667*x.^3-377.2549*x.^2+121.9718 *x-15.084 y =0.6257 得到f(0.596)=0.6257 同理得到f(0.99)=1.0542

数值分析西南交通大学

1.填空 (1). 在等式∑== n k k k n x f a x x x f 0 10)(],,,[ 中, 系数a k 与函数f (x ) 无 关。 (限填“有”或“无”) (2). Gauss 型求积公式不是 插值型求积公式。(限填“是”或“不是”) 或“无”) (3). 设l k (x )是关于互异节点x 0, x 1,…, x n , 的Lagrange 插值基函数,则 ∑=-n k k m k x l x x 0 )()(≡0 m=1,2,…,n (4). ? ? ? ? ??-=3211A ,则=1||||A 4 ,=2||||A 3.6180340 ,=∞||||A 5 ; (5). 用1n +个不同节点作不超过n 次的多项式插值,分别采用Lagrange 插值方法与Newton 插值方法所得多项式 相等 (相等, 不相等)。 (6). 函数3 320, 10(),01(1),12x f x x x x x x -≤=B ρ,故Jacobi 方法发散。 (2)对Gauss-Seidel 方法,迭代矩阵为

数值分析上机实验最小二乘法

---------------------------------------------------------------最新资料推荐------------------------------------------------------ 数值分析上机实验最小二乘法 数值分析实验报告五最小二乘法一、数值分析实验报告五最 小二乘法一、题目设有如下数据题目设有如下数据 xj -3 -2 -1 0 1 2 3 -3 -2 -1 0 1 2 3 ( )jf x -1.76 0.42 1.2 1.34 1.43 2.25 4.38 -1.76 0.42 1.2 1.34 1.43 2.25 4.38 用三次多项式拟 合这组数据,并绘出图形。 二、用三次多项式拟合这组数据,并绘出图形。 二、方法最小二t(f,[xx(1),xx(n)]) 四、结果 save and run 之后: 请输入插值节点 as [x1,x2...] [-3 -2 -1 0 1 2 3] 请输入插 值节点处对应的函数值 as [f1,f2...] [-1.76 0.42 1.2 1.34 1.43 2.25 4.38] 请输入要求的插值次数m =3 f = 133/100+121469856021/35184372088832*x-8042142191733/450359 结果 save and run 之后: 请输入插值节点 as [x1,x2...] [-3 -2 -1 0 1 2 3] 请输入插 值节点处对应的函数值 as [f1,f2...] [-1.76 0.42 1.2 1.34 1.43 2.25 4.38] 请输入要求的插值次数m =3 f = 133/100+121469856021/35184372088832*x-8042142191733/4503599 627370496*x+1020815915537309/9007199254740992*x 9627370496*x+1020815915537309/9007199254740992*x五、拓展: 1 / 2

数值分析上机实验——解线性方程组

实验报告 课程名称数值分析 实验项目名称解线性方程组 实验类型上机实验学时 4 班级20111131 学号2011113130 姓名张振指导教师沈艳 实验室名称理学楼407 实验时间2013.12.9 实验成绩预习部分 实验过程 表现 实验报告 部分 总成绩 教师签字日期 哈尔滨工程大学教务处制

实验四 解线性方程组 一.解线性方程组的基本思想 1.直接三角分解法: 将系数矩阵A 转变成等价两个矩阵L 和U 的乘积 ,其中L 和U 分别是下三角和上三角矩阵。当A 的所有顺序主子式都不为0时,矩阵A 可以分解为A=LU ,且分解唯一。其中L 是单位下三角矩阵,U 是上三角矩阵。 2.平方根法: 如果矩阵A 为n 阶对称正定矩阵,则存在一个对角元素为正数的下三角实矩阵L ,使得:A=LL^T 。当限定L 的对角元素为正时,这种分解是唯一的,称为平方根法(Cholesky )分解。 3.追赶法: 设系数矩阵为三对角矩阵 112223311 10000000000000000 n n n n n b c a b c a b A a b c a b ---?? ? ? ?= ? ? ? ? ?? ? 则方程组Ax=f 称为三对角方程组。 设矩阵A 非奇异,A 有Crout 分解A=LU ,其中L 为下三角矩阵,U 为单位上三角矩阵,记 1122 23311000010 000001000 0000100,0000000000 0001n n n n b L U γαβγββγβ--???? ? ? ? ? ? ? ?== ? ? ? ? ? ? ? ? ? ??? ? ? ? 可先依次求出L ,U 中的元素后,令Ux=y ,先求解下三角方程组Ly=f 得出y ,再求解上三 角方程组Ux=y 。 4.雅克比迭代法: 首先将方程组中的系数矩阵A 分解成三部分,即:A = L+D+U ,如图1所示,其中D 为对角阵,L 为下三角矩阵,U 为上三角矩阵。

数值分析上机实验

目录 1 绪论 (1) 2 实验题目(一) (2) 2.1 题目要求 (2) 2.2 NEWTON插值多项式 (3) 2.3 数据分析 (4) 2.3.1 NEWTON插值多项式数据分析 (4) 2.3.2 NEWTON插值多项式数据分析 (6) 2.4 问答题 (6) 2.5 总结 (7) 3 实验题目(二) (8) 3.1 题目要求 (8) 3.2 高斯-塞德尔迭代法 (8) 3.3 高斯-塞德尔改进法—松弛法 (9) 3.4 松弛法的程序设计与分析 (9) 3.4.1 算法实现 (9) 3.4.2 运算结果 (9) 3.4.3 数据分析 (11) 4 实验题目(三) (13) 4.1 题目要求 (13) 4.2 RUNGE-KUTTA 4阶算法 (13) 4.3 RUNGE-KUTTA 4阶算法运算结果及数值分析 (14) 总结 (16) 附录A (17)

1绪论 数值分析是计算数学的一个主要部分,它主要研究各类数学问题的数值解法,以及分析所用数值解法在理论上的合理性。实际工程中的数学问题非常复杂,所以往往需要借助计算机进行计算。运用数值分析解决问题的过程:分析实际问题,构建数学模型,运用数值计算方法,进行程序设计,最后上机计算求出结果。 数值分析这门学科具有面向计算机、可靠的理论分析、好的计算复杂性、数值实验、对算法进行误差分析等特点。 本学期开设了数值分析课程,该课程讲授了数值分析绪论、非线性方程的求解、线性方程组的直接接法、线性方程组的迭代法、插值法、函数逼近与曲线拟合、数值积分和数值微分、常微分方程初值问题的数值解法等内容。其为我们解决实际数学问题提供了理论基础,同时我们也发现课程中很多问题的求解必须借助计算机运算,人工计算量太大甚至无法操作。所以学好数值分析的关键是要加强上机操作,即利用计算机程序语言实现数值分析的算法。本报告就是基于此目的完成的。 本上机实验是通过用计算机来解答数值分析问题的过程,所用的计算工具是比较成熟的数学软件MATLAB。MATLAB是Matrix Laboratory的缩写,是以矩阵为基础的交互式程序计算语言。MATLAB是一款具有强大的矩阵运算、数据处理和图形显示功能的软件,其输出结果可视化,编程效率极高,用极少的代码即可实现复杂的运行,因此它使工程技术人员摆脱了繁琐的程序代码,以便快速地验证自己的模型和算法。其主要特点包括:强大的数值运算功能;先进的资料视觉化功能高阶但简单的程序环境;开方及可延展的构架;丰富的程式工具箱。 在科学研究和工程计算领域经常会遇到一些非常复杂的计算问题,利用计算器或手工计算是相当困难或无法实现的,只能借助计算机编程来实现。MATLAB将高性能的数值计算和可视化的图形工具集成在一起,提供了大量的内置函数,使其在科学计算领域具有独特的优势。 最后感谢数值分析课程任课教师赵海良老师的悉心指导!

数值分析实验报告

实验五 解线性方程组的直接方法 实验5.1 (主元的选取与算法的稳定性) 问题提出:Gauss 消去法是我们在线性代数中已经熟悉的。但由于计算机的数值运算是在一个有限的浮点数集合上进行的,如何才能确保Gauss 消去法作为数值算法的稳定性呢?Gauss 消去法从理论算法到数值算法,其关键是主元的选择。主元的选择从数学理论上看起来平凡,它却是数值分析中十分典型的问题。 实验内容:考虑线性方程组 编制一个能自动选取主元,又能手动选取主元的求解线性方程组的Gauss 消去过程。 实验要求: (1)取矩阵?? ? ?? ?? ?????????=????????????????=1415157,6816816816 b A ,则方程有解T x )1,,1,1(* =。取n=10计算矩阵的 条件数。让程序自动选取主元,结果如何? (2)现选择程序中手动选取主元的功能。每步消去过程总选取按模最小或按模尽可能小的元素作为主元,观察并记录计算结果。若每步消去过程总选取按模最大的元素作为主元,结果又如何?分析实验的结果。 (3)取矩阵阶数n=20或者更大,重复上述实验过程,观察记录并分析不同的问题及消去过程中选择不同的主元时计算结果的差异,说明主元素的选取在消去过程中的作用。 (4)选取其他你感兴趣的问题或者随机生成矩阵,计算其条件数。重复上述实验,观察记录并分析实验结果。 思考题一:(Vadermonde 矩阵)设 ?? ??????????????????????=? ? ? ?????????????=∑∑∑∑====n i i n n i i n i i n i i n n n n n n n x x x x b x x x x x x x x x x x x A 0020 10022222121102001111 ,, 其中,n k k x k ,,1,0,1.01 =+=, (1)对n=2,5,8,计算A 的条件数;随n 增大,矩阵性态如何变化? (2)对n=5,解方程组Ax=b ;设A 的最后一个元素有扰动10-4,再求解Ax=b (3)计算(2)扰动相对误差与解的相对偏差,分析它们与条件数的关系。 (4)你能由此解释为什么不用插值函数存在定理直接求插值函数而要用拉格朗日或牛顿插值法的原因吗? 相关MATLAB 函数提示: zeros(m,n) 生成m 行,n 列的零矩阵 ones(m,n) 生成m 行,n 列的元素全为1的矩阵 eye(n) 生成n 阶单位矩阵 rand(m,n) 生成m 行,n 列(0,1)上均匀分布的随机矩阵 diag(x) 返回由向量x 的元素构成的对角矩阵 tril(A) 提取矩阵A 的下三角部分生成下三角矩阵

相关文档