数值分析课程课程设计

上传人:共*** 文档编号:46021090 上传时间:2018-06-21 格式:DOC 页数:19 大小:337.50KB
返回 下载 相关 举报
数值分析课程课程设计_第1页
第1页 / 共19页
数值分析课程课程设计_第2页
第2页 / 共19页
数值分析课程课程设计_第3页
第3页 / 共19页
数值分析课程课程设计_第4页
第4页 / 共19页
数值分析课程课程设计_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《数值分析课程课程设计》由会员分享,可在线阅读,更多相关《数值分析课程课程设计(19页珍藏版)》请在金锄头文库上搜索。

1、- 1 -课 程 设 计设计题目     数值分析    学生姓名               学    号               专业班级   信息计班       指导教师               设 计 题 目共 15 题如下成绩- 2 -课 程 设 计 主 要 内 容设计

2、目的:设计目的: 通过不同题目的理解,进行算法分析。 通过 MATLAB 软件进行编程对题目进行解决。 个别题目设计验证,加深对数值分析的理解。 函数的图像绘制的运用 设计题目:设计题目: 题11   利用逆向递推的方法求解问题,通过条件终止地推1题12   从某个初始值开始,利用递推公式进行积分估值2题13   绘制 Koch 分形曲线,节点之间的关系与坐标变换3题21   用高斯消元法的消元过程作矩阵分解,LU 分解4题22   矩阵分解方法求上题中 A 的逆矩阵,针对不同的 b,而重复利用已知的 LU5题23   验证希尔伯特矩

3、阵的病态性,矩阵基本运算6题31   用泰勒级数的有限项逼近正弦函数,由图像观察逼近效果7题32   绘制飞机的降落曲线,线性方程组求解,与绘图8题41   线性拟合的函数表达式的推导,使用了两种代码方法9题51   用几种不同的方法求积分,观察数值积分的逼近效果10题55   求空间曲线 L 弧长。求导后使用符号函数积分计算11题61   用欧拉公式和四阶龙格-库塔法分别求解下列初值问题,代码搜索内容。12题64   常微分方程的解,dsolve()函数使用13题82   差分法解常微分方程边值问题,ode 函数

4、无能为力,Matlab 中提供 bvp14解算器。 solinit=bvpinit(x,yinit,params)sol= bvpsolver(odefun,bcfun,solinit,options)  题83   求解圆的半径,圆心。线性方程组解参数15设计总结:设计总结: (1)算法是题目的解题核心,好的算法可以使计算更加精确  (题 5.1) (2)图形绘制在今后的课程设计,或者是论文中可以用到。 (3)无法解决的问题,需要请教室友,或者上网查阅。 (4)MATLAB 是一个很强大的软件,提供了很多内置的数学函数,直接进行解题。 查阅资料时了解到一些 MA

5、TLAB 论坛。通过帖子阅读,了解到了 MATLAB 在科 学计算方面,模拟,图形,视频等起到的作用。增加了对“计算科学“的理解。指 导 老 师 评 语建议:从学生的工作态度、工作量、设计(论文的)创造性、学术性、使用性及书面表达能力等方面给出评价。签名:                 20    年    月    日  - 3 -数值分析课程设计数值分析课程设计1 11 1    水手、猴子和椰子问题:五个水手带了一只猴

6、子来到南太平洋 的一个荒岛上,发现那里有一大堆椰子。由于旅途的颠簸,大家都很 疲惫,很快就入睡了。第一个水手醒来后,把椰子平分成五堆,将多 余的一只给了猴子,他私藏了一堆后便又去睡了。第二、第三、第四、 第五个水手也陆续起来,和第一个水手一样,把椰子分成五堆,恰多 一只猴子,私藏一堆,再去入睡,天亮以后,大家把余下的椰子重新 等分成五堆,每人分一堆,正好余一只再给猴子,试问原先共有几只 椰子?(15621) 试分析椰子数目的变化规律,利用逆向递推的方法求解这一问题 解:解:算法分析:解该问题主要使用递推算法,关于椰子数目的变化规 律可以设起初的椰子数为,第一至五次猴子在夜里藏椰子后,椰子0p

7、的数目分别为再设最后每个人分得 x 个椰子,由题:01234,ppppp(k=0,1,2,3,4)14(1)5kkpp51(1)5xp所以,利用逆向递推方法求解551px11kkpp(k=0,1,2,3,4)151,4kkppMATLABMATLAB 代码代码: n=input('n= '); n= 15621 for x=1:np=5*x+1;for  k=1:5 p=5*p/4+1;endif p=fix(p), break end end disp(x,p)1 12 2   设,105nnxIdxx(1)从尽可能精确的近似值出发,利用递推公式:0I11

8、5(1,2,20)nnIInn 计算机从 到的近似值;1I20I输出结果 :     1023       15621结果分析:结果分析:此题的解题思想是在迭代 法中,判断 p 为整数时,输出与 p- 4 -(2)从较粗糙的估计值出发,用递推公式:30I111(30,29,3,2)55nnIInn 计算从 到的近似值;  1I20I解:解:首先第一步,估计和的值:0I30I syms x n;int (x0/(5+x),0,1) ans=log(2)+log(3)-log(5) eval(ans) ans= 0.1823 则取为 0.

9、180I syms x n; int(x30/(5+x),0,1) ans = 931322574615478515625*log(2)+931322574615478515625*log(3)- 931322574615478515625*log(5)- 79095966183067699902965545527073/465817912560 eval(ans) ans =0 MATLAB 中小数点后保留四位,由上面计算知道积分的值不为了零。                    所以的取值

10、为 0.00001-0.000130I MATLABMATLAB 代码代码: i=input('i='); i=0.18; >> if i>=0.1L(2,1)=A(2,1)/U(1,1);L(i,1)=A(i,1)/U(1,1);L(i,k)=(A(i,k)-L(i,1:k-1)*U(1:k- 1,k)/U(k,k);elseU(k,j)=A(k,j)-L(k,1:k-1)*U(1:k-1,j);endendendendRA,hl,U,Lend end 以上上代码保存为 M 文件,并在命令窗口输入 A=20 2 3;1 8 1; 2 -3 15; b=0 0

11、 0' h=zhjLU(A)2 22 2   用矩阵分解方法求上题中 A 的逆矩阵。记1231000 ,1 ,0001bbb 分别求解方程组     123,AXb AXb AXb 由于三个方程组系数矩阵相同,可以将分解后的矩阵重复使用。对第程序运行结果:程序运行结果: L =                                     U=1.0000  

12、       0         0              20.0000    2.0000    3.00000.0500     1.0000         0              0         7.9000   &

13、nbsp;0.85000.1000     -0.4051    1.0000              0              0   15.0443实验验证:实验验证:    可以直接使用 MATLAB 内置 LU 分解 A=20 2 3;1 8 1; 2 -3 15; L U=lu(A)    输出结果与上程序输出结果一致。- 9 -一个方程组,由于 A=

14、LU,所以先求解下三角方程组1bLY,再求解上 三角方程组UXY,则可得逆矩阵的第一列列向量;类似可解第二、第三方程组,得逆矩阵的第二列列向量的第三列列向量。由三个列向 量拼装可得逆矩阵1A。解解: :MATLAB 代码如下: b1=1;0;0; b2=0;1;0; b3=0;1;1; A=20,2,3;1,8,1;2,-3,15; L=1,0,0;0.05,1,0;0.1,-0.4051,1; U=20 2 3;0 7.9 0.85;0 0 15.0443; Y1=Lb1                 &nbs

15、p;  X1=UY1                           Y2=Lb2 X2=UY2 Y3=Lb3 X3=UY3 Y1 =1.0000-0.0500-0.1203 X1 =0.0517-0.0055-0.0080 Y2 =01.00000.4051 X2 =-0.01640.12370.0269 Y3 =01.00001.4051 X3 =-0.02570.1165 0.0934实验验证:实验验证:X1 X2 X3 ans =0.0517

16、  -0.0164   -0.0257-0.0055    0.1237    0.1165-0.0080    0.0269    0.0934 而:inv(A)=X1 X2 X3      得证- 10 -2 23 3    验证希尔伯特矩阵的病态性:对于三阶矩阵11/21/31/21/31/41/31/41/5H 取右端向量T11/613/1247/60b ,验证:(1)向量TT 1231 1 1Xxxx是方程组bHX的准确解;(2)取右端

17、向量 b 的三位有效数字得T1.83 1.080.783b ,求方程组的准确解X,并与 X 的数据作比较 。说明矩阵的病态性。1,1,1T解:解:(1)H=1 1/2 1/3;1/2 1/3 1/4;1/3 1/4 1/5; X=1;1;1; b=H*X b =1.83331.0833 0.7833 与题中相同(2) 先求出解 X,与数据作比较 。1,1,1TH=1 1/2 1/3;1/2 1/3 1/4;1/3 1/4 1/5; b=1.83;1.08;0.783; X=Hb X =1.08000.5400 1.4400 与相差较大,矩阵为病态矩阵1,1,1T3 31 1  用泰勒

18、级数的有限项逼近正弦函数- 11 -013 235 3( )sin ,0, ( ),0,/2( )/6,0,/2( )/6/120,0,/2yxx xy xx xyxxxxy xxxxx00.511.522.5300.250.50.7511.251.5用计算机绘出上面四个函数的图形。解:解:MATLABMATLAB 代码如下代码如下(1) syms x; taylor(sin(x) x=0:0.01*pi:pi plot(x,sin(x) (2)   syms x; taylor(x) x=0:0.01*pi:pi/2 plot(x)       &nb

19、sp;                                           (3)   syms x; taylor(x-x3/6) fplot('x-x3/6',0 pi/2)                        

20、             (4)   syms x; taylor(x-x3/6+x5/120) fplot('x-x3/6+x5/120',0 pi/2)                              结果图形右:                                                     x=0:0.1:pi; y=sin(x); plot(x,y,'-sk'); hold on x=0:0.1:pi/2; y=x;- 12 -plot(x,y,'-b*') hold on fplot('x-x.3/6',0,pi/2,0,2,2e-3,'-gx') hold

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

当前位置:首页 > 行业资料 > 其它行业文档

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