计算方法实习报告(共7页).doc
《计算方法实习报告(共7页).doc》由会员分享,可在线阅读,更多相关《计算方法实习报告(共7页).doc(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上一给出一个有效的算法和无效的算法计算积分y(n)=(xn)/(4x+1)dx,n=0,1,2,10,积分限为(0,1) 1 有效算法利用递推公式y(n)=-y(n-1)/4+1/(4n),取y0=(log5)/4程序为:#include#includevoid main() double y0,y1; y0=1/4.0*log(5.0); couty0=y0 ; for(int n=1;n=10;n+) y1=-1.0/4.0*y0+1.0/(4.0*n); coutyn=y1 ; y0=y1; if(n%3=0) coutendl; 其结果为: y0=0. y1=0
2、.14941 y2=0. y3=0.y4=0. y5=0. y6=0.y7=0. y8=0. y9=0.y10=0. Press any key to continue2 无效算法利用递推公式y(n-1)=-4y(n)+1/n, 又由广义积分中值定理可得y(n)=1/(4n+1)(4+1), (0,1),则1/(5(n+1)y(n)1/(n+1), 所以可取y(n)1/(5(n+1)+ 1/(n+1)/2=3/(5(n+1)程序为:#include #includevoid main() float y9,y10; y10=3.0 /55.0; couty10=y10=0;n-) y9=-4.
3、0*y10+1.0/(n+1); coutyn=y9 ; y10=y9; if(n%3=0) coutendl; 其结果为:y10=0. y9=-0.y8=0. y7=-2.21035 y6=8.98427y5=-35.7704 y4=143.282 y3=-572.877y2=2291.84 y1=-9166.86 y0=36668.43 心得体会由有效算法与无效算法的结果可以知道:有效算法的误差的传递是逐步缩小的,而无效算法的误差的传递是逐步扩大的。因此有效算法是数值稳定的算法。二用牛顿法求下列方程lnx+x-2=0的根。1算法 给定初值X0,为根的容许误差,为|F(X)|的容许误差,N为
4、迭代次数的容许值。(1).如果F(X0)的导数等于零或者迭代次数大于N,则算法失败,结束;否则执行2。(2).计算X1=X0-F(X0)/F(X0)。(3).若|X1-X0|,或者|F(X1)|,则输出X1,程序结束,否则执行4。(4).令X0=X1,转向1。2.程序#include#include#define EPS 1e-8#define ETA 1e-8#define N 100float f(float x)return log(x)+x-2;float f1(float x) return 1+1/x;void main()float x1,x0=1.5,d;coutx0=x0 ;
5、for(int i=0;i=N;)if(f1(x0)=0) break;else x1=x0-f(x0)/f1(x0);d=(x1-x0);if(fabs(f(x1)ETA&fabs(d)EPS)coutx1endl; break;elsex0=x1;i+;coutxi=x0 ;while(i%3=0) coutendl;coutThe root of the equation is x=x0endl;3.结果x0=1.5 x1=1.55672x2=1.557151.55715The root of the equation is x=1.557154心得体会通过牛顿迭代算法的编程实习,我了解
6、到牛顿法把非线性方程线性化,加快了收敛速度。三 编写一个用牛顿前插公式计算函数值的程序,要求先输出差分表,再计算x点的函数值,并应用于下面的问题: xi 20 21 22 23 24 yi 1.30103 1.32222 1.34242 1.36173 1.38021求x=21.4时的插值多项式的值。1 算法(1).输入n=4,xi,yi(i=0,1,2,3,4).(2).计算各阶差分f00,f10,f20,f30,f40。(3).计算函数值:f00+f10*t+f20*t*(t-1)/2+f30*t*(t-1)*(t-2)/6+f40*t*(t-1)*(t-2)*(t-3)/24;2 程序#
7、includefloat NewTon(float f00,float f10,float f20,float f30,float f40,float t) return f00+f10*t+f20*t*(t-1)/2+f30*t*(t-1)*(t-2)/6+f40*t*(t-1)*(t-2)*(t-3)/24;void main()float f14,f23,f32,f4; float f05=1.30103,1.32222,1.34242,1.36173,1.38021; float x5=20,21,22,23,24;cout 差分表endl;for(int i=0;i=4;i+)cou
8、t xi=xi;coutendl ; for(i=0;i=4;i+)cout f0i;coutendl1阶差分 ;for(i=0;i=3;i+)f1i=f0i+1-f0i;coutf1i ;coutendl2阶差分 ; for(i=0;i=2;i+)f2i=f1i+1-f1i;coutf2i ;coutendl3阶差分 ; for(i=0;i=1;i+)f3i=f2i+1-f2i;coutf3i ;coutendl4阶差分 ;f4=f31-f30;coutf4endl;float t=21.4-x0;float N4=NewTon(f00,f01,f02,f03,f04,t);coutN(21
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算方法 实习 报告
限制150内