计算方法上机答案.doc





《计算方法上机答案.doc》由会员分享,可在线阅读,更多相关《计算方法上机答案.doc(17页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、上海电力学院数值分析上机实验报告 题目: 数值分析上机实验报告 学生姓名: 学 号: 1111 专 业: 1111 2013年12月30日数值计算方法上机实习题1 设,(1) 由递推公式,从的几个近似值出发,计算;(2) 粗糙估计,用,计算;(3) 分析结果的可靠性及产生此现象的原因(重点分析原因)。(1) 解答:n=0,这里可以用for循环,while循环,根据个人喜好与习惯:for循环程序: While 循环程序:I=0.1823; I=0.1823;for n=1:20 i=1; I=(-5)*I+1/n; while i II20=-. I = -2.0558e+009(2) 粗略估计
2、I20:Mathcad计算结果:for循环程序: While循环程序: I=0.; I=0.; for n=1:20 n=1;I=(-0.2)*I+1/(5*n); while n I n=n+1;I =0.0083 end II =0.0083(3) 算法误差分析:计算在递推过程中传递截断误差和舍入误差第一种算法:(从120) 误差放大了5n倍,算法稳定性很不好;第二种算法:(从201)误差在逐步缩小,算法趋近稳定,收敛。2 求方程的近似根,要求,并比较计算量。(1) 在0,1上用二分法;function t i=erfenfa(a,b)f=(x)( exp(x)+10*x-2)t=(a+b
3、)./2;i=0;while abs(f(t)0.001 if f(a)*f(t)0 b=t;t=(a+b)/2; elseif f(b)*f(t)0 a=t;t=(b+a)/2; end i=i+1;end 结果: t = 0.0906i = 11(2) 取初值,并用迭代;function x=diedai(x0) %x0初值x=x0;for i=1:10000y=(2-exp(x)./10;x=y;y=(2-exp(x)./10;if abs(x-y) 5*10(-4) p(m+1)=func(x(m); q(m+1)=func(p(m+1); x(m+1)=q(m+1)-(q(m+1)-
4、p(m+1)2)./(q(m+1)-2*p(m+1)+x(m); wucha=abs(x(m+1)-x(m); m=m+1; if m1000 break; end end format long y=x(m-1); m=m-1;运行结果y =0.3596m =2(4) 取初值,并用牛顿迭代法;function x=newtondiedai(x0)x=x0;for i=1:100y=x-(exp(x)+10*x-2)./(exp(x)+10);x=y;y=x-(exp(x)+10*x-2)./(exp(x)+10);if abs(x-y) solve(exp(x)+10*x-2=0) ans
5、=-lambertw(1/10*exp(1/5)+1/5 format long -lambertw(1/10*exp(1/5)+1/5ans = 0.725小结:所以我们可以看到,在要求同一运算精度的情况下,采用二分法运算了11次,采用题设的迭代方法运算了6次,采用加速迭代法只运算了2次,采用牛顿迭代法需运算2次。也就是说加速迭代速度都是超线性收敛的,而简单迭代法是线性收敛的。而二分法收敛速度较慢,所以在工程上不经常使用。3钢水包使用次数多以后,钢包的容积增大,数据如下:x2345678910111213141516y6.428.29.589.59.7109.939.9910.4910.59
6、10.6010.810.610.910.76试从中找出使用次数和容积之间的关系,计算均方差。(注:增速减少,用何种模型)解答:因为不知道其函数形式,可先plot而后确定使用哪种模型比较合适。函数图形程序:x=2 3 4 5 6 7 8 9 10 11 12 13 14 15 16;y=6.42 8.2 9.58 9.5 9.7 10 9.93 9.99 10.49 10.59 10.6 10.8 10.6 10.9 10.76;plot(x,y,b*)与指数函数趋势类似(但是趋势不同,一个趋于递减,一个趋于递增,使用倒数),故拟合模型为: 两边同时取对数: 用此模型进行数据拟合:x=2 3 4
7、 5 6 7 8 9 10 11 12 13 14 15 16;y=6.42 8.2 9.58 9.5 9.7 10 9.93 9.99 10.49 10.59 10.6 10.8 10.6 10.9 10.76;t=1./x;s=polyfit(t,log(y),1)s = -1.1107 2.4578即是: 最终拟合曲线为:将此拟合曲线和源数据进行对比:主程序:x=2 3 4 5 6 7 8 9 10 11 12 13 14 15 16;y=6.42 8.2 9.58 9.5 9.7 10 9.93 9.99 10.49 10.59 10.6 10.8 10.6 10.9 10.76;pl
8、ot(x,y,ro)hold onlims1=2,16;fplot(11.679*exp(-1.1107/x),lims1)hold off均方差的求解 x=2:16;y=6.42 8.2 9.58 9.5 9.7 10 9.93 9.99 10.49 10.59 10.60 10.8 10.6 10.9 10.76;f(x)=11.679*exp(-1.1107./x);c=0;for i=1:15 a=y(i); b=x(i); c=c+(a-f(b)2;endaverge=c/15averge = sqrt(averge) 0.24384设,分析下列迭代法的收敛性,并求的近似解及相应的迭
9、代次数。1) JACOBI迭代;2) GAUSS-SEIDEL迭代;3) SOR迭代()。解答:(1) JACOBI迭代;定义函数。function tx=jacobi(A,b,imax,x0,tol) %jacobi迭代 %初始值x0,次数imax,精度toldel=10-10;tx=x0;n=length(x0);for i=1:n dg=A(i,i); if abs(dg)del disp(对角元太小); return endendfor k=1:imax %jacobi循环 for i=1:n sm=b(i); for j=1:n if j=i sm=sm-A(i,j)*x0(j);
10、end end x(i)=sm/A(i,i); end tx=tx;x; if norm(x-x0)A=4 -1 0 -1 0 0;-1 4 -1 0 -1 0;0 -1 4 -1 0 -1;-1 0 -1 4 -1 0;0 -1 0 -1 4 -1;0 0 -1 0 -1 4;b=0 5 -2 5 -2 6;x0=0 0 0 0 0 0;imax=100;tol=10-4;tx=jacobi(A,b,imax,x0,tol);for j=1:size(tx,1)fprintf(%d %f %f %f %f %f %fn,j,tx(j,1),tx(j,2),tx(j,3),tx(j,4),tx
11、(j,5),tx(j,6);end运行结果:1 0. 0. 0. 0. 0. 0.2 0. 1. -0. 1. -0. 1.3 0. 1. 0. 1. 0. 1.4 0. 1. 0. 1. 0. 1.5 0. 1. 0. 1. 0. 1.6 0. 1. 0. 1. 0. 1.7 0. 1. 0. 1. 0. 1.8 0. 1. 0. 1. 0. 1.9 0. 1. 0. 1. 0. 1.10 0. 1. 0. 1. 0. 1.11 0. 1. 0. 1. 0. 1.12 0. 1. 0. 1. 0. 1.13 0. 1. 0. 1. 0. 1.14 0. 1. 0. 1. 0. 1.15 0.
12、 1. 0. 1. 0. 1.16 0. 1. 0. 1. 0. 1.17 0. 1. 0. 1. 0. 1.18 0. 1. 0. 1. 0. 1.19 0. 1. 0. 1. 0. 1.20 0. 1. 0. 1. 0. 1.21 0. 1. 0. 1. 0. 1.22 0. 1. 0. 1. 0. 1.23 0. 1. 0. 1. 0. 1.24 0. 1. 0. 1. 0. 1.25 0. 1. 0. 1. 0. 1.26 0. 1. 0. 1. 0. 1.27 0. 1. 0. 1. 0. 1.28 0. 1. 0. 1. 0. 1.29 0. 1. 0. 1. 0. 1.(2)GA
13、USS-SEIDEL迭代;function tx=gseidel(A,b,imax,x0,tol) %gseidel迭代 %初始值x0,次数imax,精度toldel=10-10;tx=x0;n=length(x0);for i=1:n dg=A(i,i); if abs(dg)del disp(对角元太小); return endend for k=1:imax %G-S循环 x=x0; for i=1:n sm=b(i); for j=1:n if j=i sm=sm-A(i,j)*x(j); end end x(i)=sm/A(i,i); end tx=tx;x; if norm(x-x
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算方法 上机 答案

限制150内