欢迎来到天天文库
浏览记录
ID:44399220
大小:138.00 KB
页数:11页
时间:2019-10-21
《数值计算方法上机实习题集答案解析》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1.设,(1)由递推公式,从的几个近似值出发,计算;解:易得:ln6-ln5=0.1823,程序为:I=0.182;forn=1:20I=(-5)*I+1/n;endI输出结果为:=-3.0666e+010(2)粗糙估计,用,计算;因为所以取程序为:I=0.0087;forn=1:20I=(-1/5)*I+1/(5*n);endI=0.0083(3)分析结果的可靠性及产生此现象的原因(重点分析原因)。首先分析两种递推式的误差;设第一递推式中开始时的误差为,递推过程的舍入误差不计。并记,则有。因为,所此递推式
2、不可靠。而在第二种递推式中,误差在缩小,所以此递推式是可靠的。出现以上运行结果的主要原因是在构造递推式过程中,考虑误差是否得到控制,即算法是否数值稳定。2.求方程的近似根,要求,并比较计算量。(1)在[0,1]上用二分法;程序:a=0;b=1.0;whileabs(b-a)>5*1e-4c=(b+a)/2;ifexp(c)+10*c-2>0b=c;elsea=c;endendc结果:c=0.0903(1)取初值,并用迭代;程序:x=0;a=1;whileabs(x-a)>5*1e-4a=x;x=(2-exp
3、(x))/10;endx结果:x=0.0905(2)加速迭代的结果;程序:x=0;a=0;b=1;whileabs(b-a)>5*1e-4a=x;y=exp(x)+10*x-2;z=exp(y)+10*y-2;x=x-(y-x)^2/(z-2*y+x);b=x;endx结果:x=0.0995(3)取初值,并用牛顿迭代法;程序:x=0;a=0;b=1;whileabs(b-a)>5*1e-4a=x;x=x-(exp(x)+10*x-2)/(exp(x)+10);b=x;endx结果:x=0.0905(1)分析
4、绝对误差。solve('exp(x)+10*x-2=0')3.钢水包使用次数多以后,钢包的容积增大,数据如下:x23456789y6.428.29.589.59.7109.939.991011121314151610.4910.5910.6010.810.610.910.76试从中找出使用次数和容积之间的关系,计算均方差。(注:增速减少,用何种模型)设y=f(x)具有指数形式(a>0,b<0)。对此式两边取对数,得。记A=lna,B=b,并引入新变量z=lny,t=1/x。引入新变量后的数据表如下x2345
5、6789t=1/x0.50000.33330.25000.20000.16670.14290.12500.1111z=lny1.85942.10412.25972.25132.27212.30262.29562.3016101112131415160.10000.09090.08330.07690.07140.06670.06252.35042.35992.36092.37952.36092.38882.3758程序:t=[0.50000.33330.25000.20000.16670.14290.1250
6、0.11110.10000.09090.08330.07690.07140.06670.0625];z=[1.85942.10412.25972.25132.27212.30262.29562.30162.35042.35992.36092.37952.36092.38882.3758];polyfit(t,z,1)结果:ans=-1.11072.4578由此可得A=2.4578,B=-1.1107,,b=B=-1.1107方程即为计算均方差编程:x=[2:16];y=[6.428.29.589.59.71
7、09.939.9910.4910.5910.6010.810.610.910.76];f(x)=11.6791*exp(-1.1107./x);c=0;fori=1:15a=y(i);b=x(i);c=c+(a-f(b))^2;endaverge=c/15结果:averge=0.05944.设,,分析下列迭代法的收敛性,并求的近似解及相应的迭代次数。(1)JACOBI迭代;程序:functiony=jacobi(a,b,x0)D=diag(diag(a));U=-triu(a,1);L=-tril(a,-1
8、);B=D(L+U);f=Db;y=B*x0+f;n=1;whilenorm(y-x0)>1e-4x0=y;y=B*x0+f;n=n+1;endyn以文件名jacobi.m保存。程序:a=[4-10-100;-14-10-10;0-14-10-1;-10-14-10;0-10-14-1;00-10-14];b=[05-25-26]';x0=[000000]';jacobi(a,b,x0);运行结果为:y=1.
此文档下载收益归作者所有