数值分析上机题(matlab版)(东南大学)教学教案

上传人:youn****329 文档编号:132309135 上传时间:2020-05-14 格式:DOC 页数:24 大小:1.26MB
返回 下载 相关 举报
数值分析上机题(matlab版)(东南大学)教学教案_第1页
第1页 / 共24页
数值分析上机题(matlab版)(东南大学)教学教案_第2页
第2页 / 共24页
数值分析上机题(matlab版)(东南大学)教学教案_第3页
第3页 / 共24页
数值分析上机题(matlab版)(东南大学)教学教案_第4页
第4页 / 共24页
数值分析上机题(matlab版)(东南大学)教学教案_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《数值分析上机题(matlab版)(东南大学)教学教案》由会员分享,可在线阅读,更多相关《数值分析上机题(matlab版)(东南大学)教学教案(24页珍藏版)》请在金锄头文库上搜索。

1、 数值分析上机报告第一章一、题目精确值为。1) 编制按从大到小的顺序,计算SN的通用程序。2) 编制按从小到大的顺序,计算SN的通用程序。3) 按两种顺序分别计算,并指出有效位数。(编制程序时用单精度)4) 通过本次上机题,你明白了什么?二、通用程序clearN=input(Please Input an N (N1):);AccurateValue=single(0-1/(N+1)-1/N+3/2)/2);Sn1=single(0);for a=2:N; Sn1=Sn1+1/(a2-1);endSn2=single(0);for a=2:N; Sn2=Sn2+1/(N-a+2)2-1);en

2、dfprintf(The value of Sn using different algorithms (N=%d)n,N);disp(_)fprintf(Accurate Calculation %fn,AccurateValue);fprintf(Caculate from large to small %fn,Sn1);fprintf(Caculate from small to large %fn,Sn2);disp(_)三、求解结果Please Input an N (N1):102The value of Sn using different algorithms (N=100)_

3、Accurate Calculation 0.740049Caculate from large to small 0.740049Caculate from small to large 0.740050_Please Input an N (N1):104The value of Sn using different algorithms (N=10000)_Accurate Calculation 0.749900Caculate from large to small 0.749852Caculate from small to large 0.749900_Please Input

4、an N (N1):106The value of Sn using different algorithms (N=1000000)_Accurate Calculation 0.749999Caculate from large to small 0.749852Caculate from small to large 0.749999_ 四、结果分析 有效位数 n 顺序 100 10000 1000000从大到小633从小到大566可以得出,算法对误差的传播又一定的影响,在计算时选一种好的算法可以使结果更为精确。从以上的结果可以看到从大到小的顺序导致大数吃小数的现象,容易产生较大的误差,

5、求和运算从小数到大数算所得到的结果才比较准确。 第二章一、题目(1)给定初值及容许误差,编制牛顿法解方程f(x)=0的通用程序。(2)给定方程,易知其有三个根a) 由牛顿方法的局部收敛性可知存在当时,Newton迭代序列收敛于根x2*。试确定尽可能大的。b)试取若干初始值,观察当时Newton序列的收敛性以及收敛于哪一个根。(3)通过本上机题,你明白了什么?二、通用程序文件search.m%寻找最大的delta值%clear%flag=1;k=1;x0=0;while flag=1 delta=k*10-6; x0=delta; k=k+1; m=0; flag1=1; while flag1

6、=1 & m=103 x1=x0-fx(x0)/dfx(x0); if abs(x1-x0)=10-6 flag=0; endendfprintf(The maximun delta is %fn,delta); 文件fx.m% 定义函数f(x)function Fx=fx(x) Fx=x3/3-x;文件dfx.m% 定义导函数df(x)function Fx=dfx(x) Fx=x2-1;文件Newton.m% Newton法求方程的根%clear%ef=10-6; %给定容许误差10-6k=0;x0=input(Please input initial value Xo:);disp(k

7、Xk);fprintf(0 %fn,x0); flag=1;while flag=1 & k=103 x1=x0-fx(x0)/dfx(x0); if abs(x1-x0)ef flag=0; end k=k+1; x0=x1;fprintf(%d %fn,k,x0); end 三、求解结果1.运行search.m文件结果为: The maximum delta is 0.774597即得最大的为0.774597,Newton迭代序列收敛于根=0的最大区间为(-0.774597,0.774597)。2.运行Newton.m文件在区间上各输入若干个数,计算结果如下:区间上取-1000,-100,

8、-50,-30,-10,-8,-7,-5,-3,-1.513 -1.732051Please input initial value Xo:-30k Xk0 -30.0000001 -20.0222472 -13.3815443 -8.9711294 -6.0560005 -4.1505036 -2.9375247 -2.2150468 -1.8547149 -1.74323610 -1.73215811 -1.73205112 -1.732051Please input initial value Xo:-10k Xk0 -10.0000001 -6.7340072 -4.5905703 -

9、3.2128404 -2.3716535 -1.9229816 -1.7571757 -1.7325808 -1.7320519 -1.732051Please input initial value Xo:-10000k Xk0 -10000.0000001 -6666.6667332 -4444.4445893 -2962.9632094 -1975.3090315 -1316.8730256 -877.9158567 -585.2779978 -390.1864709 -260.12602210 -173.41991111 -115.61711812 -77.08384513 -51.39788014 -34.27822915 -22.87161816 -15.27694917 -10.22845918 -6.88478019 -4.68877220 -3.27480721 -2.40771422 -1.93975023 -1.76125924 -1.73276225 -1.73205126 -1.732051Please input initial value Xo:-100k Xk0 -100.0000001 -66.6733342 -44.4588913 -29.6542634 -19.7920165 -13.2

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号