na-1-1序

上传人:xh****66 文档编号:61788897 上传时间:2018-12-12 格式:PPT 页数:60 大小:2.65MB
返回 下载 相关 举报
na-1-1序_第1页
第1页 / 共60页
na-1-1序_第2页
第2页 / 共60页
na-1-1序_第3页
第3页 / 共60页
na-1-1序_第4页
第4页 / 共60页
na-1-1序_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《na-1-1序》由会员分享,可在线阅读,更多相关《na-1-1序(60页珍藏版)》请在金锄头文库上搜索。

1、1,数值计算方法,主讲:常迎香,兰洲交通大学数理学院,2,引言 数值计算方法是指面向数学问题适合计算机使用的数值计算方法,是计算科学的公共基础和通用的数值方法,本课程的内容是介绍数值计算方法及其理论 求数学问题的数值解称为数值问题. 一、学习本课程的必要性和重要性 现代科学的三个组成部分:,科学理论,科学实验,科学计算,3,学习本课程的必要性和重要性 科学计算与科学理论、科学实验一起被称为 三大科学研究手段; 科学计算的核心内容是以现代化的计算机及数 学软件为工具,以数学模型为基础进行模拟研究 现代科学研究往往是非线性的,大系统的复杂问题,其量化处理必须用计算机,离不开数值计算(科学计算);

2、传统的学科领域与计算技术相结合,产生了诸多,4,新兴交叉学科,计算物理、计算力学、计算化学、计算流体力学、计算生物学、计算经济学等等。 工程科学中提出的数学问题,往往不能求出精确解,而数值计算方法将提供求解满足要求的数值近似解。 因而本课程是工科硕士研究生的一门很重要的学位课程 二、本课程的特点 (1)数值计算方法是一门与计算机应用密切结合 的实用性很强的学科; 思维方法是归纳法,核心问题是“误差” (2) 数值计算方法这门课程是建立在离散的基础上,很多连续问题首先要离散化,其结果是数值解。,5,(3)数值计算方法这门课程已成为近代数学的 一个重要分支,专门研究数学问题的数值解法 三、本课程的

3、学习要点 1. 构造数值方法的原理(支撑理论) 2. 评价数值方法的好坏 (研究数值方法的性态、可靠性、效率),6,本课程的学习要点 3. 数值方法的计算机实现(计算机实习) 本课程的基本目的,是使学生通过学习和实践,理解和掌握这些数值计算方法的理论和应用,为今后进一步深入的学习和科学计算打下坚实的基础。,7,四、基本要求与参考教材 要掌握高级编程语言: FORTRAN, C , Matlab Matlab几个显著特点 1 用Matlab处理矩阵容易 2 用Matlab绘图轻松 3 用Matlab编程简洁 4 Matlab具有丰富的工具箱 课后要尽可能多上机做练习 成绩评定 平时成绩与期末考试

4、成绩综合评定,8,Text Book,Numerical Analysis (Seventh Edition) 数值分析 (第七版 影印版) Richard L. Burden & J. Douglas Faires,9,第一章 数值计算与误差分析 第一节 数值算法 算法:从给定的已知量出发,经过有限次四则 运算及规定的运算顺序,最后求出未知量的数 值解,这样构成的完整计算步骤称为算法。 评价算法的两个主要标准:速度和精度,10,一个面向计算机,计算复杂性好,又有可靠 理论分析的算法就是一个好算法 时间复杂性即计算量:一个算法所需四则运算总次数. 一个算法所需的乘除运算总次数,单位是flop.

5、 空间复杂性即存储量,11,(输入x, 输出y),例1 计算,存储量=4,12,需乘法5次,加法3次,存储单元7个。,需乘法3次,加法3次,存储单元6个。,一般地,计算n次多项式的值,13,算法2、秦九韶算法,需乘法n次,加法n次,存储单元n+3个。,有递推公式,算法1、需乘法2n-1次,加法n次,存储单元n+4个。,14,算法1 (输入a(i)(i=0,1,,n),x;输出y),注意,15,其原理为,算法2 (秦九韶算法) (输入a(i)(i=0,1,,n),x;输出y),注意,16,例3 :求解n元线性方程组 a11x1+a12x2+ +a1nxn=b1 (1) an11+an2x2+ +

6、annxn=bn,由线性方程组的克莱姆(Cramer)规则可知,如果方程组(1)的系数矩阵A的行列式(一般记为D=|A|)不等于零,那末,这个方程组有唯一解,而且它们可以表示为 xi=Di/D (i=1,n) 这里,Di是指D中第i列元素用右端(b1, bn)代替构成的行列式。,Ax=b A可逆,17,克莱姆算法步骤,N=(n2-1)n!+nflop,n=20, N= 9.7071020 flop,18,19,用计算机解决科学计算问题时,需要经历以下几个环节:,实际问题的精确解与用计算机计算出来的数值结果之间是有差异,这种差异在数学上称为误差。,数值结果是指在选择某种数值方法之后,编制程序正确

7、,输入初始数据正确的情形下所获得的数值结果。,第二节 数值计算的误差分析,20,一、误差的来源与分析,1、数学模型,21,一、误差的来源与分析,2、误差的种类,模型误差 数学模型与实际问题之间出现的这种误 差称为 模型误差 在例1中, 就是模型误差。 观测误差 通过仪器确定数学模型中的参数所引起的误差成为 观测误差。如自由落体运动中的重力加速度,22,2、误差的种类,23,例1:(截断误差),解:利用展开式的前三项,取n=2,,截断误差,3、截断误差分析,24,25,例1:舍入误差,设在一台虚构的4位数字的计算机上计算,舍入误差为 0.000472,4、舍入误差分析,26,舍入误差对计算的结果

8、影响,27,在实数系中,每一个实数可以有无穷位,不同的 实数代表数轴上不同的点;,在计算机数系中,每一个数只有有限位,只有部分 有理数能被计算机数系中的数精确表示。,浮点数:,36.83=0.3683102=0.03683103,这种允许小数点位置浮动的表示法称为数的 浮点形式。,实数x的十进制浮点形式为 x= 0.a1 a2. ak 10c,尾数,阶码,ai0,1,2,9, cZ,基数,a10, (1)称为x 的 规格化的浮点形式,(1),二、计算机数系,28,x的k位十进制机器数fl(x)可用两种方法定义:(1)截断式 fl(x)= 0. a1 a2. ak 10c,(2)四舍五入式,x

9、的k位规格化十进制机器数 y= 0. a1 a2. ak10c, y=fl(x) ai0,1,2,9, a10,Lc U, k是机器数的字长; L、U 是常数。,29,一般数制情况: k位规格化机器数 y= 0. a1 a2. akc , =2,8,10,16, ai0,1,2, -1, Lc U,a10,F(,k.L,U)表示以上数集全体加数0,它是计算机中 使用的有限离散数集(机器数系)。,F(,k,L,U)中的数称为机器数。,F(10,4,-33,33), y= 0.a1a2a3a410c,30,例5 在机器数系 F(10,4,-33,33)中表示 fl().,若浮点数的阶码不在L,U内

10、,则出现上溢或下溢。,采用截断式 fl( )=0.314110 采用四舍五入式 fl( )=0.314210,但是,例如 在4位机器数系 F(10,4,-33,33)中输入 出现下溢,输入 出现上溢。,31,三、绝对误差和相对误差 定义: 设数a是精确值,x是a的一个近似值,记,32,例6 已知准确值a=3.1415926是一个无限不循环小数,求截取不同位数后的近似值和误差界。,解:,四、有效数字,33,34,即,35,例7: 设 x1=1.73, x2=1.7321, x3=1.7320是其近似值, 问它们分别有几位有效数字?,3位 5位 4位,36,例:考虑 1.x =11, a=10 ,

11、 e=1, er=0.1 2. x =1001, a=1000, e=1, er=0.001 3. x =1001, a =1101, e=100, er=0.1,当某个量的准确值很小或很大时,相对误差比绝对 误差更能反映准确数与近似数的差异。,一个近似值的准确程度,不仅与绝对误差的大小有关,而且与准确值本身的大小有关。,37,例8:设计算机数系为F(10,t,L,U),将实数 x=0.a1a2atat+110c,(a10),用四舍五入法表为机 器数fl(x);求其有效数字、绝对误差限、相对误差限。,解:,相对误差为,绝对误差为:,机器数的相对误差与x无关,只与字长t有关。 定义 eps=0.

12、510-t+1为机器精度。,fl(x)有t位有效数字。,38,注 (1)在数值计算中,尽可能多地保留近似数 的有效数字,有效数字越多, 相对误差越小, 计算结果越精确。,(2)对IEEE国际通用标准双精度数系 机器精度 Eps=2.2204e-16 最小实数 Realmin=2.2251e-308 最大实数 Realmin=1.7977e+308,39,(1) 加减法先对阶,后运算,再舍入 fl(x) fl (y)= fl (fl(x) fl (y),例9:在F(10,4,-33,33)的计算机上计算1+ 104 解: 1+ 104 =0.1000 101+ 0.1000 105 = 0.00

13、001 105 + 0.1000 105 (对阶,靠高阶) = 0.10001 105 = 0.1000 105 = 104,(2)乘除法先运算,再舍入 fl (x) fl (y)= fl (fl(x) fl (y), fl (x) fl (y)= fl (fl(x) fl (y) (3) 不在计算机数系中的数做四舍五入处理,注:浮点数加法 不满足结合律,五、计算机中数的计算特点:,40,六、数值运算中的误差估计 1、数值运算的绝对误差和相对误差,41,42,六、数值运算中的误差估计 2、和、差、积、商的误差估计式,43,(1) 防止相近的两数相减,例1:当x较大时,计算,例2 计算,解:当x

14、很小时,分子出现相近数相减,将以上算式变形,七、减少误差的措施,44,(2) 防止大数吃小数 当两个绝对值相差很大的数进行加法或减法运算时,绝对值小的数有可能被绝对值大的数“吃掉“从而引起计算结果很不可靠.,在上式中,重新排序计算 上式= 0.2+0.4+0.4+ 23456=1+ 23456= 0.00001 105+ 0.23456105=23457,例3:在F(10,5,-119,119)中,计算 23456+0.2+0.4+0.4 上式=0.23456105+0.000002 105+ 0.000004 105+ 0.000004 105 =23456,45,(3) 防止接近零的数做除

15、数 分母接近零的数会产生溢出错误,因而产生大的误差,此时可以用数学公式化简后再做. 多个数相乘时,从其中有效位数最多的数乘起,46,(4) 注意计算步骤的简化,减小运算次数,简化计算步骤是提高程序执行速度的关键,它不仅可以节省时间,还能减少舍入误差累加。,例4:设A、B、C、D分别是1020、 2050、 501、 1100的矩阵,试按不同的算法求矩阵乘积E=ABCD. 解:由矩阵乘法的结合律,可有如下算法 1. E=(AB)C)D. 计算量N=11500flop 2. E=A(B(CD). 计算量N=125000flop 3. E=(A(BC)D. 计算量N=2200flop,47,误差的定性分析法:即研究算法的数值稳定性。,误差的定量分析法:,定义:一个算法如果输入数据有扰动(即 有误差),而计算过程中舍入误差不增长,则 称此算法是数值稳定的,否则称此算法为不稳 定的。,八、算法的数值稳定性,48,49,此算法是不稳定的,50,51,52,无条件稳定与条件稳定,对任何输入数据都是稳定的算法称为无条件稳定。,对

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

当前位置:首页 > 生活休闲 > 科普知识

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