数值计算方法实验指导(Matlab版).doc

数值计算方法实验指导(Matlab版).doc

ID:51443630

大小:583.50 KB

页数:42页

时间:2020-03-24

数值计算方法实验指导(Matlab版).doc_第1页
数值计算方法实验指导(Matlab版).doc_第2页
数值计算方法实验指导(Matlab版).doc_第3页
数值计算方法实验指导(Matlab版).doc_第4页
数值计算方法实验指导(Matlab版).doc_第5页
资源描述:

《数值计算方法实验指导(Matlab版).doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、《数值计算方法》实验指导(Matlab版)肇庆学院数学与统计学学院计算方法课程组42《数值计算方法》实验1报告班级:20xx级XXXXx班学号:20xx2409xxxx姓名:XXX成绩:1.实验名称实验1算法设计原则验证(之相近数相减、大数吃小数和简化计算步骤)2.实验题目(1)取,计算和,验证两个相近的数相减会造成有效数字的损失.(2)按不同顺序求一个较大的数(123)与1000个较小的数()的和,验证大数吃小数的现象.(3)分别用直接法和秦九韶算法计算多项式在x=1.00037处的值.验证简化计算步骤能减

2、少运算时间.对于第(3)题中的多项式P(x),直接逐项计算需要次乘法和n次加法,使用秦九韶算法则只需要n次乘法和n次加法.3.实验目的验证数值算法需遵循的若干规则.4.基础理论设计数值算法时,应避免两个相近的数相减、防止大数吃小数、简化计算步骤减少运算次数以减少运算时间并降低舍入误差的积累.两相近的数相减会损失有效数字的个数,用一个大数依次加小数,小数会被大数吃掉,乘法运算次数太多会增加运算时间.5.实验环境操作系统:Windowsxp;程序设计语言:Matlab6.实验过程(1)直接计算并比较;(2)法1:

3、大数逐个加1000个小数,法2:先把1000个小数相加再与大数加;(3)将由高次项到低次项的系数保存到数组A[n]中,其中n为多项式次数.7.结果与分析(1)计算的=,.分析:42(2)123逐次加1000个的和是,先将1000个相加,再用这个和与123相加得.分析:(3)计算次的多项式:直接计算的结果是,用时;用秦九韶算法计算的结果是,用时.分析:8.附录:程序清单(1)两个相近的数相减.%***********************************************************

4、**%*程序名:ex1_1.m*%*程序功能:验证两个相近的数相减会损失有效数字个数*%*************************************************************%x=;%y=;z=1e16;x,y======================================================================(2)大数吃小数%*******************************************************

5、******%*程序名:ex1_2.m*%*程序功能:验证大数吃小数的现象.*%*************************************************************clc;%清屏clearall;%释放所有内存变量formatlong;%按双精度显示浮点数z=123;%大数t=3e-15;%小数x=z;%大数依次加小数%重复1000次给x中加上t42y=0;%先累加小数%重复1000次给y中加上ty=z+y;%再加到大数x,y=======================

6、===============================================(3)秦九韶算法%*************************************************************%*程序名:ex1_3.m*%*程序功能:验证秦九韶算法可节省运行时间.*%*************************************************************clc;%清屏clearall;%释放所有内存变量formatlong;%按双精度

7、显示浮点数A=[8,4,-1,-3,6,5,3,2,1,3,2,-1,4,3,1,-2,4,6,8,9,50,-80,12,35,7,-6,42,5,6,23,74,65,55,80,78,77,98,56];A(10001)=0;%扩展到10001项,后面的都是分量0%A为多项式系数,从高次项到低次项x=1.00037;n=9000;%n为多项式次数%直接计算begintime=clock;%开始执行的时间%求x的i次幂%累加多项式的i次项endtime=clock;%结束执行的时间time1=etime(

8、endtime,begintime);%运行时间disp('直接计算');42disp(['p(',num2str(x),')=',num2str(p)]);disp(['运行时间:',num2str(time1),'秒']);%秦九韶算法计算begintime=clock;%开始执行的时间%累加秦九韶算法中的一项endtime=clock;%结束执行的时间time2=etime(endtime,b

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。