《山东大学数值分析课现代数值分析第1章引论.ppt》由会员分享,可在线阅读,更多相关《山东大学数值分析课现代数值分析第1章引论.ppt(30页珍藏版)》请在金锄头文库上搜索。
1、&教材教材 (Text Book) 现代数值分析现代数值分析 蔺小林、蒋耀林蔺小林、蒋耀林 编著(国防工业出版社)编著(国防工业出版社)&参考书目参考书目 (Reference) Numerical Analysis:Mathematics of Scientific Computing (Third Edition) 数值分析数值分析 (英文版(英文版 第第3版版 ) David Kincaid & Ward Cheney(机械工业出版社机械工业出版社) Numerical Analysis (Seventh Edition) 数值分析数值分析 (第七版(第七版 影印版)影印版) Richa
2、rd L. Burden & J. Douglas Faires (高等教育出版社)高等教育出版社) 工程数值分析工程数值分析 王立秋等编著(山东大学出版社)王立秋等编著(山东大学出版社) 工程数值分析题解工程数值分析题解学习方法学习方法1.注意掌握各种方法的基本原理注意掌握各种方法的基本原理2.注意各种方法的构造手法注意各种方法的构造手法3.重视各种方法的误差分析重视各种方法的误差分析4.做一定量的习题做一定量的习题5.注意与实际问题相联系注意与实际问题相联系学习和了解科学计算的桥梁学习和了解科学计算的桥梁数值分析数值分析 能够做什么?IntroductionIntroduction 研究使
3、用计算机求解各种数学问题的研究使用计算机求解各种数学问题的数值方法(近似方法),对求得的解的数值方法(近似方法),对求得的解的精度进行评估,以及如何在计算机上实精度进行评估,以及如何在计算机上实现求解等现求解等一、一、 计算机解决实际问题的步骤计算机解决实际问题的步骤建立数学模型建立数学模型选择数值方法选择数值方法编写程序编写程序上机计算上机计算 现代数值分析是一门内容丰富、研究方法现代数值分析是一门内容丰富、研究方法深刻、实用性较强的深刻、实用性较强的数学课程数学课程。 研究对象:研究对象:从科学与工程问题中抽象归纳从科学与工程问题中抽象归纳出来的数学问题。出来的数学问题。通信卫星覆盖地球面
4、积通信卫星覆盖地球面积数学模型数学模型实际问题实际问题获取数据获取数据数值方法、程序数值方法、程序数据结果数据结果将地球考虑成将地球考虑成一个球体一个球体, 设设R为地球半为地球半径径,h为为卫星高卫星高度度,D为覆盖面为覆盖面在平面的投影在平面的投影举例1。求下列方程的根或零点:(第四章的内容:非线性方程的数值解法)Can you solve:Can you solve:2。怎么求解下列积分?(第八章的内容:数值积分)三种常用的技术三种常用的技术:(1)求未知数据的迭代计算技术)求未知数据的迭代计算技术 (2)连续模型离散化处理技术)连续模型离散化处理技术 (3)离散数据的连续化处理技术)离
5、散数据的连续化处理技术Def : (算法算法) 为了用计算机解决数学问题而构造的为了用计算机解决数学问题而构造的能够用数值计算的实施方法。即把对数学问题的解能够用数值计算的实施方法。即把对数学问题的解法归结为只有加、减、乘、除等基本运算,并有确法归结为只有加、减、乘、除等基本运算,并有确定运算次序的完整而准确的描述。定运算次序的完整而准确的描述。算法的特点:算法的特点: 构造性构造性 能够通过数值演算能够通过数值演算 一种实施方法一种实施方法算法的可用性(算法的稳定性):算法的可用性(算法的稳定性):理论上很完美的算法,在计算机上未必可用。理论上很完美的算法,在计算机上未必可用。例例1:Gra
6、mer 法则解线性方程组:法则解线性方程组:n 阶方程组需计阶方程组需计 算算 n + 1 个行列式的值,每一个行列式的值需个行列式的值,每一个行列式的值需 次乘法,共需次乘法,共需 次次 乘法。乘法。例例2:如建立如建立的递推公式并作实际计算。的递推公式并作实际计算。解解: (1) 易知易知所以所以(方法不可用方法不可用)(2) 因为因为当当 n = 9 时,有时,有取取算法的优劣:算法的优劣:评价标准评价标准:(1) 计算量的大小计算量的大小例例:计算计算直接计算:需直接计算:需 n ( n +1)/2 次乘法和次乘法和 n 次加法。次加法。迭代计算:迭代计算:按下列迭代公式计算按下列迭代
7、公式计算只需只需 n 次乘法和次乘法和 n 次加法。次加法。(2) 存储量的多少存储量的多少(3) 逻辑结构是否简单逻辑结构是否简单二、数值分析的特点二、数值分析的特点1. 近似:由此产生“误差”在计算数学和应用数学中一个有趣的问题:在计算数学和应用数学中一个有趣的问题:什么是什么是零零?原点附近原点附近在纯数学中,认为此矩阵为满秩矩阵,但在计算数学中,它却是降秩矩阵。?2. 与计算机不能分离:上机实习(掌握一门语言:C语言,会用Matlab)1.2 误差误差 ( Error )1 误差的背景介绍误差的背景介绍 ( Introduction )1. 来源与分类来源与分类 ( Source &
8、Classification )u模型误差模型误差 ( Modeling Error ): 从实际问题中抽象出数学模型从实际问题中抽象出数学模型 u观测误差观测误差 ( Measurement Error ): 通过测量得到模型中参数通过测量得到模型中参数的值的值 u方法误差方法误差 (截断误差截断误差 Truncation Error): 求近似解。求近似解。求解数求解数学模型时,用简单代替复杂学模型时,用简单代替复杂, ,或者用有限过程代替无限过程所引或者用有限过程代替无限过程所引起的误差起的误差u舍入误差舍入误差 ( Roundoff Error ): 机器字长有限,机器字长有限,通常用
9、四舍五通常用四舍五入的办法取近似值,由此引起的误差入的办法取近似值,由此引起的误差. . 1.2.4 误差与有效数字误差与有效数字 (Error and Significant Digits)u 绝对误差绝对误差 ( absolute error )其中其中 x*为精确值,为精确值,x为为x*的近似值。的近似值。例如:例如:工程上常记为工程上常记为的上限记为的上限记为 , , 称为称为绝对误差限绝对误差限( accuracy ) u 相对误差相对误差 ( relative error ) 称称r( (x) )为为相对误差限相对误差限。由于精确值 x*一般是未知的 如果存在一个适当小的正数如果存
10、在一个适当小的正数r r ,使得使得 x 的的相对误差限相对误差限常定义为常定义为u有效数字有效数字 (significant digits )用科学计数法,记用科学计数法,记 ( (其中其中 )若若 (即(即 的截取按四舍五入规的截取按四舍五入规则),则称则),则称 为有为有n 位有效数字,精确到位有效数字,精确到 。例:例:问:问: 有几位有效数字?请证明你的结论。有几位有效数字?请证明你的结论。证明证明:有有4 位有效数字位有效数字,精确到小数点后第精确到小数点后第 3 位位.有效数字有效数字和相对误差的关系和相对误差的关系Th1. 若近似数若近似数 x 有有n 位有效数值,则其相对误差
11、限为位有效数值,则其相对误差限为反之,若反之,若x 的相对误差限满足:的相对误差限满足:则则x 至少有至少有n 位有效数字。位有效数字。证:证:记记则则所以所以反之易得。反之易得。注:注:定理表明,有效数字的位数越多,相对误差越小定理表明,有效数字的位数越多,相对误差越小1. 一元函数一元函数 y= f (x)误差分析误差分析 ( 准确值准确值 y*=f (x*) ) 由由Taylor 公式公式同同理理: :所以所以反反问题问题: : 估计估计2. 多元函数多元函数 z = f (x1, x2, xn) 误差分析误差分析 (1) (3) (2)数据误差对算术运算影响数据误差对算术运算影响例例.
12、 二次方程二次方程 x2 16 x + 1 = 0, 取取求求 使具有使具有4 位有效数位有效数解解: :直接计算直接计算 x18 7.937 = 0.063计算出的计算出的x1 具有两位有效数字具有两位有效数字修改算法修改算法4 4位位有效数有效数例例2. 圆面积计算的误差估计圆面积计算的误差估计圆面积计算公式圆面积计算公式:全微分近似全微分近似:取取 r = 50 cm, 则有则有 cm21%=2%150 cm2,反反问题问题: 估计估计 数值计算中的基本原则数值计算中的基本原则(1)(1)避免绝对值小的数做除数避免绝对值小的数做除数; ;(2)(2)避免两相近数相减避免两相近数相减; ;
13、(3)(3)防止大数防止大数“吃吃”小数现象小数现象a = 109,b = 9,设想在设想在8位浮点数系中相加位浮点数系中相加a + b =1.0000000 109+ 0.000000009 109由于只保留由于只保留8位有效数,数据位有效数,数据09被舍去被舍去,实际加法实际加法操作操作 a + b计算结果是计算结果是 将将 a 的数据作为计算结果的数据作为计算结果赋值给赋值给 a+ b.(4)尽量减少计算工作量尽量减少计算工作量(乘、除法次数乘、除法次数)例例 计算计算 P(x) = 1+ 2 x +3 x2 + 4 x3 + 5 x4 的值的值 P(x)=1+ x (2 + x ( 3
14、 + x (4+ 5 x)一个应用一个应用: 2进制数转换为进制数转换为10进制数进制数 (1 1 1 0 1 1 1 0)2 = 27+26 +25 +0 +23 +22 +2 +0 =(12+1)2+1)2+0)2+1)2+1)2+1)2+0=238求多项式值的秦九韶算法求多项式值的秦九韶算法 输入输入 x;a0,a1,an S a0;u1k 从从 1 到到 n 循循环环uxuSS + ak u输出数据输出数据S ;结束结束输入输入 x;a0,a1,an S ank 从从 n 到到 1 循环循环Sak1+ xS输出数据输出数据S ;结束结束秦九韶秦九韶算法算法P(x)=a0+ a1x + a2 x2 + + an xn注注:初初值值误误差差在在算算法法执执行行过过程程中中不不断断增增大大, ,这这种种算算法法称称为为数数值值不不稳稳定定算算法法。初初始始误误差差在在算算法法执执行行过过程程中中不不断减小断减小, ,这种算法称为这种算法称为数值稳定算法数值稳定算法。注:注:在算法执行过程中在算法执行过程中, ,舍入误差对计算结果影响舍入误差对计算结果影响不大的一类算法被称为数值稳定算法不大的一类算法被称为数值稳定算法; ;否则称为不否则称为不稳定算法稳定算法. .