数值计算方法实验指导讲解

上传人:公**** 文档编号:488319293 上传时间:2022-11-26 格式:DOCX 页数:49 大小:179.24KB
返回 下载 相关 举报
数值计算方法实验指导讲解_第1页
第1页 / 共49页
数值计算方法实验指导讲解_第2页
第2页 / 共49页
数值计算方法实验指导讲解_第3页
第3页 / 共49页
数值计算方法实验指导讲解_第4页
第4页 / 共49页
数值计算方法实验指导讲解_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《数值计算方法实验指导讲解》由会员分享,可在线阅读,更多相关《数值计算方法实验指导讲解(49页珍藏版)》请在金锄头文库上搜索。

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

2、1n-1n在 x=1.00037 处的值验证简化计算步骤能减少运算时间对于第(3)题中的多项式P(x),直接逐项计算需要n + (n -1) + 2 +1 =与1次乘法和 n 次加法,使用秦九韶算法P (x) = (ax + a ) x + a ) x + a ) x + a012n -1n则只需要n次乘法和n次加法.3. 实验目的验证数值算法需遵循的若干规则4. 基础理论设计数值算法时,应避免两个相近的数相减、防止大数吃小数、简化计算步骤减少运算 次数以减少运算时间并降低舍入误差的积累两相近的数相减会损失有效数字的个数,用一 个大数依次加小数,小数会被大数吃掉,乘法运算次数太多会增加运算时间

3、5. 实验环境操作系统:Windows xp;程序设计语言:Matlab6. 实验过程(1) 直接计算并比较;(2) 法1:大数逐个加1000个小数,法2:先把1000个小数相加再与大数加;(3) 将由高次项到低次项的系数保存到数组An中,其中n为多项式次数.7. 结果与分析(1) 计算的z + 1 x: z = , 1/(富 Z + 1 + : Z ).分析:123逐次加1000个3 X10-6的和是 ,先将1000个3 x10-6相加,再用这个和与123相加得.分析:(3)计算次的多项式:直接计算的结果是,用时用秦九韶算法计算的结果是,用时分析:8. 附录:程序清单(1) 两个相近的数相减

4、*i*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t* *i*1*rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT*%* 程 序 名:

5、 ex1_1.m*%* 程序功能:验证两个相近的数相减会损失有效数字个数*/*rX*1*i*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t* *i*1*rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* r

6、T* rT* rT* rT* rT* rT* rT* rT* rT*z=1e16; % x =、Z + 1 P Z ; % y = 1心Z + 1 + Jz);x,y(2) 大数吃小数/*rX*1*i*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*i*1*rT*rT* rT*rT* rT* rT*rT* rT*rT* rT*rT* rT*rT* rT*rT*rT* rT*rT* rT*rT* rT*rT* rT*rT*rT* rT*rT* rT*rT* rT*rT* rT*rT*rT* rT*rT* rT*rT* rT*rT* rT*rT* rT* rT*rT*

7、 rT*rT* rT*rT* rT*rT* rT*rT*rT* rT*rT* rT*rT* rT*rT* rT*%*程 序 名: ex1_2.m*%*程序功能:验证大数吃小数的现象./*rX*1*i*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*i*1*rT*rT* rT*rT* rT* rT*rT* rT*rT* rT*rT* rT*rT* rT*rT*rT* rT*rT* rT*rT* rT*rT* rT*rT*rT* rT*rT* rT*rT* rT*rT* rT*rT*rT* rT*rT* rT*rT* rT*rT* rT*rT* rT* rT*rT*

8、rT*rT* rT*rT* rT*rT* rT*rT*rT* rT*rT* rT*rT* rT*rT* rT*clc; clear all; format long;% 清屏% 释放所有内存变量z=123; t=3e-15;% 大数% 小数x=z;% 大数依次加小数% 按双精度显示浮点数%重复1000次给x中加上ty=0;%先累加小数%重复1000次给y中加上ty=z + y;%再加到大数x,y%开始执行的时间%求x的i次幕%累加多项式的i次项%结束执行的时间%运行时间(3)秦九韶算法*i*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t* *i*1*rT* rT*

9、 rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT*%* 程序名:exl_3.m*%*程序功能:验证秦九韶算法可节省运行时间.*/*rX*1*i*、t*、t*、t*、t*、t*、t

10、*、t*、t*、t*、t*、t*、t*、t* *i*1*rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT*clc;clear all; format long;%清

11、屏%释放所有内存变量%按双精度显示浮点数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;P=0:敷i = n:-l TT= 1 :Mk=l:i t = t*endp = p-A(n- i-叮i;end.endtime=clock; time1=etime(e

12、ndtime,begintime); disp(直接计算);disp(p(,num2str(x),)=,num2str(p);disp(运行时间:,num2str(time1), 秒);%秦九韶算法计算%开始执行的时间%累加秦九韶算法中的一项begmtime=clock;for i = 0 ;p- = p-Ai - 1):endendtime=clock;%结束执行的时间 time2=etime(endtime,begintime);%运行时间disp(); disp(秦九韶算法计算); disp(p(,num2str(x),)=,num2str(p);disp( 运行时间:,num2str(

13、time2), 秒);数值计算方法实验 1 报告班级:姓名:20xx 级 XXXXx 班学号:20xx2409xxxxXXX成绩:1. 实验名称实验 1 算法设计原则验证(之数值稳定性)2. 实验题目计算定积分1n其中:=J1 xnex-idx, n = 0,1,010,分别用教材例1-7推导出的算法A和B,算法 A:I =1- nInn -1I 沁 0.63210” II =_(1 -1 )算法 B: n-1n nI010验证算法不稳定时误差会扩大3. 实验目的验证数值算法需遵循的若干规则4. 基础理论设计数值算法时,应采用数值稳定性好的算法数值稳定的算法,误差不会放大,甚至 会缩小;而数值

14、不稳定的算法会放大误差5. 实验环境操作系统: Windows xp; 程序设计语言: Matlab 6. 实验过程分别用数组IA和IB保存两种算法计算的结果.7. 结果与分析8.附录:程序清单*i*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t* *i*1*rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT*%* 程序名:exl_4.m*%*程序功能:验证数值稳定性算法可控制误差.*/*rX*1*i*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t*、t* *i*1*rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* rT* r

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

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