数值分析实验报告一.doc_第1页
数值分析实验报告一.doc_第2页
数值分析实验报告一.doc_第3页
数值分析实验报告一.doc_第4页
数值分析实验报告一.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数值分析课程实验报告 实验名称 数值计算的基本概念 班级动力实1201姓名李凯学号201202000511序号教师赵美玲地点数学实验中心评分一、 实验目的(1)、了解计算机中浮点数的有效数字;(2)、了解舍入误差产生的原因,知道截断误差和舍入误差的区别;(3)、了解算法“稳定性”的概念。二、用文字或图表记录实验过程和结果1、关于浮点数(1)令 在计算机中分别将它们定义成单精度型和双精度型,输出观察结果,并对结果进行分析。#include#includevoid main()float ff;double df;ff=0.1234567890123456789;df=0.1234567890123456789;coutsetiosflags(ios:fixed)setprecision(8)ffendlsetiosflags(ios:fixed)setprecision(16)dfendl;结果分析:Float内存中占4个字节,有效数位是7位;double占8个字节,有效数位是16位。所以输出结果不一样。(2)设,在单精度的变量环境下做以下操作:1)按以下两种算法计算a1与100个a3相加的结果。方法一:将100个a3逐个加到a1上;方法二:先将100个a3相加,再加到a1上;观察所得到的结果,写出你得到的结论。解:#includevoid main()float a1,a2,a3,y1,y2;int i;a1=1.000001;a2=1.000000;a3=0.0000001;y1=a1;y2=0;for(i=1;i=100;i+)y1=y1+a3;for(i=1;i=100;i+)y2=y2+a3;y2=y2+a1;cout方法一:y1endl;cout方法二:y2endl; 结果分析:由于单精度有效位数是7位,所以两种算法所得结果一样。2)计算,观察结果,并分析原因。3)计算a1-a2,观察有效数字的位数,从中你可以得到什么启示? 解:#includevoid main()float a1,a2,a3;a1=1.000001;a2=1.000000;a3=0.0000001;float a,b;a=a1/a3+a2;b=a1-a2;coutaendlbendl;结果分析:两个结果有效位数都是7位,可见单精度环境下有效位数为7位。2、舍入误差考虑计算一元可微函数f(x)在x0处导数的近似方法, (1) (2)取,分别用(1)、(2)计算f(x)在处的一阶导数的近似值,令h依次取值,观察所得结果并与精确值进行比较,结合本例叙述你对于截断误差和舍入误差的认识。方法一:#includefloat f(float x)float a;a=x*x*x;return a;void main()float h=1,b,f1,f2;int i;for(i=1;i=15;i+)f1=f(1+h);f2=f(1);b=(f1-f2)/h;h=h/10;couth=h时,f(x)=bendl;方法二:#includefloat f(float x)float a;a=x*x*x;return a;void main()float h=1,b,f1,f2;int i;for(i=1;i=15;i+)f1=f(1+h);f2=f(1-h);b=(f1-f2)/(2*h);h=h/10;couth=h时,f(x)=bendl;结果分析:因为=,所以随着h越来越小,倒数值越来越接近0,但不等于0,实验中两种方法中,当h为1e-008时,导数值就近似为0了,说明当数很小时,阶段误差和舍入误差还是有影响的。3、算法的稳定性考虑积分易见,且计算得到,从而可得如下递推算法: (1)对上述积分有估计式,我们取,可得另一个递推算法: (2)(已知 )分析算法(1)和(2),哪一个算法稳定,并编程验证你的结论!解:算法(2)稳定。方法一:#includevoid main()int i;float a=0.1823;coutI0=aendl;for(i=1;i=100;i+)a=1.0/i-5.0*a;coutIi=aendl;方法二:#includevoid main()int i;float a100;a100=0.001815;for(i=100;i=0;i-)ai-1=(1.0/i-ai)/5.0;for(i=0;i=100;i+)coutIi=aiendl;结果分析:由实验结果可见,迭代方法二要稳定的多。这是因为,对于迭代方法一,由于舍入误差引起的弟n步误差为,它随n的增加指数级增长的,所以算法不稳定。对于迭代方法二,因舍入误差引起的第n步误差为,随的减少而迅速减少,所以该算法稳定。三、练习与思考题分析解答在迭代法里,是从一个初值由迭代公式一步步迭代过来的,每步迭代都有一个近似的过程,都存在一定的误差。数值稳定是指某一步迭代有微小的扰动对后面的步骤影响很小;或者是舍入误差和截断误差不会积累到很大。反之则数值不稳定。四、本次实验的重点难点分析 本次实验主要是为了验

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论