计算方法上机答案计算方法上机答案.docVIP

  • 122
  • 0
  • 约1.39万字
  • 约 17页
  • 2017-04-23 发布于贵州
  • 举报

计算方法上机答案计算方法上机答案.doc

[键入文字][键入文字][键入文字] [键入文字][键入文字][键入文字] 上海电力学院 数值分析上机实验报告 题  目:  数值分析上机实验报告 学生姓名:    11111111111      学 号:   111111111111111 专 业: 1111 2013年12月30日 数值计算方法上机实习题 设, 由递推公式,从的几个近似值出发,计算; 粗糙估计,用,计算; 分析结果的可靠性及产生此现象的原因(重点分析原因)。 解答:n=0, 这里可以用for循环,while循环,根据个人喜好与习惯: for循环程序: While 循环程序: I=0.1823; I=0.1823; for n=1:20 i=1; I=(-5)*I+1/n; while i21 End I=(-5)*I+1/i; I i=i+1; fprintf(I20=%f,I) end ? I = -2.0558e+009 I I20=-2055816073.851284 I = -2.0558e+009 粗略估计I20: Mathcad计算结果: for循环程序: While循环程序: I=0.007998; I=0.007998; for n=1:20 n=1; I=(-0.2)*I+1/(5*n); while n21 End I=(-0.2)*I+1/(5*n); I n=n+1; I =0.0083 end I I =0.0083 算法误差分析: 计算在递推过程中传递截断误差和舍入误差 第一种算法:(从1——20) 误差放大了5n倍,算法稳定性很不好; 第二种算法:(从20——1) 误差在逐步缩小,算法趋近稳定,收敛。 求方程的近似根,要求,并比较计算量。 在[0,1]上用二分法; function [t i]=erfenfa(a,b) f=@(x)( exp(x)+10*x-2) t=(a+b)./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.0906 i = 11 取初值,并用迭代; function x=diedai(x0) %x0初值 x=x0; for i=1:10000 y=(2-exp(x))./10;x=y;y=(2-exp(x))./10; if abs(x-y)5*10^(-4) disp(迭代次数); 2*i break; end end 结果: ans = 6 x = 0.090639135859584 加速迭代的结果(艾特肯Aitken加速方法); function [y m]=aitken(a) func=@(x)(( 2-exp(x))./10) x(1)=a; wucha=1;m=1; while wucha 5*10^

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档