东南大学数值分析上机作业汇总(共13页).doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《东南大学数值分析上机作业汇总(共13页).doc》由会员分享,可在线阅读,更多相关《东南大学数值分析上机作业汇总(共13页).doc(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上 数值分析上机报告院系:学号:姓名: 专心-专注-专业目录作业1、舍入误差与有效数设,其精确值为.(1) 编制按从小到大的顺序,计算的通用程序;(2) 编制按从大到小的顺序,计算的通用程序;(3) 按两种顺序分别计算,并指出有效位数;(4) 通过本上机你明白了什么?程序:1、函数文件cxdd.mfunction S=cxdd(N)S=0;i=2.0;while(i):S=cxdd(80)S= 0.2、函数文件cddx.mfunction S=cddx (N)S=0;for i=N:-1:2 S=S+1/(i*i-1);endscript运行结果(省略):S=cddx(
2、80)S=0.3、两种方法有效位数对比精确值函数:function S=jqz(N)S=0.5*(1.5-1.0/N-1.0/(N+1);script运行结果(省略)NS精确值从小到大从大到小值有效位数值有效位数1000.0.60.6100000.0.40.40.0.60.34、心得本题重点体现了数值计算中“大数吃小数”的问题,由于计算机计算的截断特点,从大到小的计算会导致小数的有效数被忽略掉。从题中可以看出,看出按不同的顺序计算的结果是不相同的,按从小到大的顺序计算的值与精确值吻合,而按从大到小的顺序计算的值与精确值有较大的误差。计算机在进行数值计算时会出现“大数吃小数”的现象,导致计算结果
3、的精度有所降低。作业2、Newton迭代法(1) 给定初值x0及容许误差,编制Newton法解方程f(x)=0根的通用程序。(2) 给定方程f(x)=x3/3-x=0,易知其有三个根x1=,x2=0,x3=。由Newton方法的局部收敛性可知存在0,当x0(,),Newton迭代序列收敛于根x2 ,试确定尽可能大的;试取若干个初始值,观察当x0(-,-1),(-1,),(,),(,1),(1,+)时,Newton序列是否收敛以及收敛于哪一个根。(3) 通过本上机题,你明白了什么?1、通用程序函数文件定义f(x)函数function f=fun(x)f=x3/3-x;end定义f(x)导函数fu
4、nction f=dfun(x)f=x*x-1;end定义求近似解函数function f,n=newton(x0,ep)flag=1;n=0;while(flag=1) x1=x0-fun(x0)/dfun(x0); n=n+1; if(abs(x1-x0) flag=0; end x0=x1;endf=x1;end script运行结果clear;x0=input(请输入初始值x0:);ep=input(请输入容许误差:);f,n=newton(x0,ep);fprintf(方程的一个近似解为:%fn,x1);2、局部收敛性(1)最大值文件flag=1;k=1;x0=0;while fla
5、g=1 sigma=k*10-6; x0=sigma; k=k+1; m=0; flag1=1; while flag1=1 & m=103 x1=x0-fun(x0)/dfun(x0); if abs(x1-x0)=10-6) flag=0; endendfprintf(最大值为: %fn,sigma); 运行结果为:最大值为:0.即得最大的为0.,Newton迭代序列收敛于根=0的最大区间为(-0.,0.)。(2)验证局部收敛性l 在x0(-,-1)区间,取以下初值,分别调用newton.m函数文件,得到结果如下:X0X1迭代次数-100-1.15-20-1.11-5-1.8-1.5-1.
6、5结果显示,以上初值迭代序列均收敛于-1.,即根。显然,迭代格式初值的选择对于迭代的收敛速度是至关重要的,当初值接近真实值的时候,迭代次数减少。l 在x0(-1,)区间,取以下初值,分别调用newton.m函数文件,得到结果如下:X0X1迭代次数-0.951.9-0.851.6-0.801.10-0.781.15计算结果显示,迭代序列局部收敛于1.,即根。l 在x0(,)区间,取以下初值,分别调用newton.m函数文件,得到结果如下:X0X1迭代次数-0.700.5-0.200.3-0.050.30.050.30.200.30.700.5由newton1.m的运行过程表明,在整个区间上均收敛
7、于0,即根。l 在x0(,1)区间,取以下初值,分别调用newton.m函数文件,得到结果如下:X0X1迭代次数0.80-1.100.90-1.70.95-1.90.98-1.12计算结果显示,迭代序列局部收敛于-1.,即根。l 在x0(1,+)区间,取以下初值,分别调用newton.m函数文件,得到结果如下:X0X1迭代次数1.51.551.8201.111001.15结果显示,以上初值迭代序列均收敛于1.,即根。综上所述:(-,-1)区间收敛于-1.73205,(-1,)区间局部收敛于1.73205,局部收敛于-1.73205,(-,)区间收敛于0,(,1)区间类似于(-1,)区间,(1,
8、)收敛于1.73205。3、心得牛顿迭代法对于初值的选择要求较高,因此,在牛顿迭代时可现通过简单迭代法寻找相对准确一些的值来进行牛顿迭代。对于方程有多解的问题,Newton法求方程根时,牛顿迭代要考虑局部收敛的问题,迭代序列收敛于某一个根有一定的区间限制,在一个区间上,可能会局部收敛于不同的根。作业3、列主元素Gauss消去法对于某电路的分析,归结为求解线性方程组RI=V。 32 -13 0 0 0 -10 0 0 0 -13 35 -9 0 -11 0 0 0 0 0 -9 31 -10 0 0 0 0 0R= 0 0 0 -30 57 -7 0 -5 0 0 0 0 0 -7 47 -30
9、 0 0 0 0 0 0 0 -30 41 0 0 0 0 0 0 -5 0 0 27 -2 0 0 0 -9 0 0 0 -2 29VT=-15,27,-23,0,-20,12,-7,7,10T(1) 编制解n阶线性方程组Ax=b的列主元Gauss消去法的通用程序;(2) 用所编程序解线性方程组RI=V,并打印出解向量,保留5位有效数字;(3) 在本编程之中,你提高了那些编程能力。1、列主元Gauss消去法的通用程序函数:找每列的主元的函数function B=zhuyuan(B,t,N,M)for i=0:N-1-t if B(N-i,t)B(N-i-1,t) c=zeros(1,M);
10、for j=1:M c(j)=B(N-i,j); B(N-i,j)=B(N-i-1,j); B(N-i-1,j)=c(j); end endend 进行列消去的函数function B=xiaoqu(B,t,N,M)for i=t+1:N l=B(i,t)/B(t,t); for j=t:M B(i,j)=B(i,j)-l*B(t,j); endend进行三角矩阵下的解函数function X=jie(X,B,N,M)for i=1:N-1 s=B(N-i,M); for j=N-i+1:N s=s-B(N-i,j)*X(j); end X(N-i)=s/B(N-i,N-i);end执行主程序
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 东南大学 数值 分析 上机 作业 汇总 13
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内