大学计算方法(C)讲义课件.docx
《大学计算方法(C)讲义课件.docx》由会员分享,可在线阅读,更多相关《大学计算方法(C)讲义课件.docx(71页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、大学计算方法(C)讲义课件目录第1章绪论1.1 数值计算1.2 数值方法的分析1.2.1 计算机上数的运算1.2.2 算法分析第2章线性代数方程组2.1 Gauss消去法2.1.1 消去法2.1.2 主元消去法2.2 矩阵分解2.2.1 Gauss消去法的矩阵意义2.2.2 矩阵的LU分解及其应用2.2.3 其他类型矩阵的分解2.2.4 解三对角矩阵的追赶法2.3 线性方程组解的可靠性2.3.1 向量和矩阵范数2.3.2 残向量与误差的代数表征2.4 解线性方程组解的迭代法2.4.1 基本迭代法2.4.2 迭代法的矩阵表示2.4.3 收敛性第3章数据近似3.1 多项式插值3.1.1 插值多项式
2、3.1.2 Lagrange插值多项式3.1.3 Newton插值多项式3.1.4 带导数条件的插值多项式3.1.5 插值公式的余项3.2 最小二乘近似3.2.1 最小二乘问题的法方程3.2.2 正交化算法第4章数值微积分4.1 内插求积,Newton-Cotes公式4.1.1 Newton-Cotes 公式4.1.2 复化求积公式4.1.3 步长的选取4.1.4 Romberg 方法4.1.5 待定系数法4.2 数值微分4.2.1 2.1插值公式方法4.2.2 Taylor公式方法(待定系数法)4.2.3 外推法第5章非线性方程求解5.1 解一元方程的迭代法5.1.1 简单迭代法5.1.2
3、Newton 法5.1.3 割线法5.1.4 区间方法5.2 收敛性问题5.2.1 简单迭代一一不动点5.2.2 收敛性的改善5.2.3 Newton法的收敛性5.2.4 收敛速度第1章绪论1.1 数值计算现代科学的发展,已导致科学与技术的研究从定性前进到定量,尤其是现代数字计算机的出现及迅速发展,为复杂数学问题的定量研究与解决,提供了强有力的基础。通常我们面对的理论与技术问题,绝大多数都可以从其物理模型中抽象出数学模型,因此,求解这些数学模型已成为我们面临的重要任务。一、 本课程的任务:寻求解决各种数学问题的数值方法一一如何将高等数学的问题回归到初等数学(算术)的方法求解一一了解计算的基础方
4、法,基本结构(否则只须知道数值软件)一一并研究其性质。立足点:面向数学一一解决数学问题面向计算机一一利用计算机作为工具充分发挥计算机的功能,设计算法,解决数学问题例如:迭代法、并行算法二、 问题的类型1、离散问题:例如,求解线性方程组Ax = b 一一从离散数据:矩阵A和向量b,求解离散数据x;三、 连续问题的离散化处理:例如,数值积分、数值微分、微分方程数值解;四、 离散问题的连续化处理:例如,数据近似,统计分析计算;1.2 数值方法的分析在本章中我们不具体讨论算法,首先讨论算法分析的基础一一误差。一般来讲,误差主要有两类、三种(对科学计算):1)公式误差一一“截断误差”,数学c计算,算法形
5、成一一主观(人为):数学问题一数值方法的转换,用离散公式近似连续的数学函数进行计算时,一般都会发生误差,通常称之为“截断误差”;一一以后讨论2)舍入误差及输出入误差一一计算机,算法执行一一客观(机器):由于计算机的存储器、运算器的字长有限,在运算和存储中必然会发生最末若干位数字的舍入,形成舍入误差;在人机数据交换过程中,十进制数和二进制数的转换也会导致误差发生,这就是输入误差。这两种误差主要是由于计算机的字长有限,采用浮点数系所致。首先介绍浮点数系1.2.1计算机上的运算一一浮点运算面向计算机设计的算法,则先要讨论在计算机上数的表示。科学记数法浮点数:约定尾数中小数点之前的数全为零,小数点后第
6、一个数不能为零。目前,一般计算机都采用浮点数系,一个存储单元分成首数和尾数:XXXXXXX首数/尾数(t位)其中首数存放数的指数(或“阶”)部分,尾数存放有效数字。对于进制,尾数字长为t位的浮点数系F(p,f,L,U)中的(浮点)数,可以用以下形式表示:%d ,d. fJfl(x)= i(1-+ )X BC / J ,Q o q J P pl pt y Qdj =23、,I此处,指数/(称为阶)限制在L4/4U范围内。以下记实数系中的实数为xe R ,它在浮点数系F(0,t,L,U)中对应的浮点数记为fl(x)eF(j3,t,L,U)夕进制,尾数位数,阶的范围。几乎所有近代计算机都采用“二进制
7、(即尸=2):位、字节和字分别是指位数不同的二进制数。例如十进制转换二进制11=20000000122=20000001044=220000010088=230000100099=23+2000010011010=23+21000010102727=16+84-2+1=24+234-2+2000110111字节位是一个二进制数(即。或1);字节是8个二进制数字;上表的最后一列是字节。单精度浮点数(single precision)按32位存储,双精度浮点数(double precision)按64位存储。精度用于指明每个浮点数保留多少位以及尾数和阶数各分配多少位。单精度浮点数的尾数为23位、阶
8、数为8位;双精度浮点数的尾数为53位(包含符号位)、阶数为11位(包含符号位)。双精度浮点数的等价二进制数如下所示:64位f jdd gdddd111指数(含符看位】符日位52位尾数浮点数的特点:1、实数转换到浮点数浮点化,缺点:总会产生误差(除极个别的情况:x =2,,/=0,1,2,)按四舍五入,绝对误差:一(举例),优点:浮点化产生的相对误差有界(与数字本身的数量级无关)|不)卜三3x 2注:设实数XWR,则按夕进制可表达为:4八 d d A j d. fix =(+-4+,+1+)x八,一02.fI,2 pt pt 410 dj 。, j 2,3, ,, f 41,按四舍五入的原则,当
9、它进入浮点数系/时,若4+1尸,则4 d、d.jfl(x)=( H y HF -)x Pp俨x1 d d d +1若4+12彳/,则力(工)=(方y11丁)xP2 D 俨0对第一种情况:V-fl(刈=(需+pp 22对第二种情况:卜一以小年也一X, V(;)x=JpP 乙乙就是说总有:|x-/7(x)|42,T2另一方面,由浮点数要求的14d、0,有国之加,,将此两者相除,便得X一力(x)叁夕-,x 2P2、每一个浮点数系的数字有限:2(/3-l)/3-(U-L +)+3、浮点数系中的运算非自封闭,(因为数字有限、尾数字长有限、指数数字有限等)例:在尸(10,4,-5,5)中,x =.5420
10、 xl0-2,y =.2001 xlO3,运算 x*y 和 x/y,的结果显然已不在此浮点数系内,而x+y或x-y也不在此浮点数系内,需/7(x。y)结果才在此浮点数系内。浮点运算应注意:1)避免产生大结果的运算,尤其是避免小数作为除数参加运算;2)避免“大”“小”数相加减;3)避免相近数相减,防止大量有效数字损失;4)尽可能简化运算步骤,减少运算次数。原因:记= max|b(x)|= max ,由卜一力(刈44可,可得:|(x o y)- fl(xo y) A|x y(。表示任意一种四则运算)此处是由机器字长(实质上是尾数字长,的大小)确定的常数(它反映了实际运算的精度)。显然,若要求运算的
11、舍入误差小,应使运算结果(如:x土较小。尤其是小分母运算:-=e,小=大误差。y y y其次,当浮点数系中两个数量级相差较大的数相加(或减),注意到由于浮点数系中数字字长的有限性,可能导致“大数吃小数”。例如,F(10,4,-5,5)中 x =.8231xl03, y =.2317xlO-1,则x y =.8231 xlO3.2317 xlO-1=.8231xl03.0000xl03=x似乎y (|W|x|)没有参加运算。第三,同样,由于浮点数系中数字字长的有限性,当两个相近数相减时:例如,在尸(10,8,-5,5)中,x =.82317844xl03,y =.82317832x 103,两数
12、相减: x-y =.12000000x10-3,计算结果仅剩2位有效数字,而原来参加运算的数字有8位有效数字,这将严重影响最终计算结果的精度。1.2.2算法分析作为一个可用的算法,必须考虑其效率和可靠性,定义:计算机完成一个乘法和一个加法,称为一个浮点运算(记为flop);注:由于计算机在运算时,加(减)法所耗时间远少于乘(除)法,所以通常只须计算乘法的次数,因此也有“一个算法需要多少个乘法”这一提法。1、计算效率可计算性(计算复杂性空间、时间)例:解线性方程组Ax=6的Grammar方法:七八,其中是方程组系数矩阵A对应的行列式,而| A,|则是以右端向量6替代A的第i列所得矩阵对应的行列式
13、。由线性代数知识可知,若4=(%),则|a|=Z(t)J)的其中a国,i“)是由1,2,变换到 i,i2,。所需的置换次数。可见每计算一个行列式,需要(一1).!个浮点运算;因此,按Grammar方法解方程组约需N =(2一1).!个浮点运算。当=20时 N。9.70728x102。,用一个运算速度为IO*/秒的计算机进行求解,约需3.078x105年(日前报道我国计算机已达到3840x108/秒,这仍需近10年)。而n=20的方程组应该说是一个小型的方程组。因此Grammar方法是一个不能接受的算法,它缺乏可计算性。第二章将介绍的Gauss消去法和迭代法就有较高的效率,具有很好的可计算性。2
14、、计算可靠性作为算法,除了考虑其效率外,必须重视可靠性,它包括两方面:问题的性态和方法的稳定性问题的性态所计算的问题当原始数据发生小扰动时,问题的解一般也发生扰动。问题的性态一一问题的解对原始数据发生变化的敏感性。原始数据小扰动n问题解小扰动问题是良态的大变化问题是病态的例:线性方程组:U613一1247一60 若将方程组的系数改写成具有2位有效数字的小数:1 .OOxj + 0.50x2 + O.33x = 1.8计算结果/(X),扰动后的数据X n计算结果/(I),若对问题/存在常数m,满足关系式:f(x)-/(x)m xf(x)-f(x)十f(x)或m = supx-xx则称(相对误差之
15、比的上界)m为该问题的条件数,记作m = cond(f);由微积分中值定理知识容易计算出,当时,cod(f)=。f (x)|稍后我们在第二章将对线性方程组的性态作进一步的分析。算法的数值稳定性:1例:计算 I= e J xnexdx ,=0,1,8;o解:由微积分知识,可得计算公式,=1-射,/“_1=(/), n我们将准确值与计算结果列表如下:方法,01516A,8准确值.6321.3679.2642.2073.1709.1455.1268.1124.1010.6321.3679.2642.2074,1704.1480.1120.2160-.72802.6320.3680.2643.2073
16、.1709.1455.1268.1124.1010由上表可见,方法中,原始步的误差,随着计算步数的增加被严重地放大,特别是4竟变成负数(注意:被积函数是非负函数),而方法则相反;这是因为方法中,若前步有误差b:7j=/j+b,则Ik kl=1 klk-i kB =1卜一kB,说明/*T的误差b,经一步计算后被扩大了左倍,随着左的增大,误差将被大大地扩大;而通过同样的分析可知:方法中的误差则被缩小左倍。算法的数值稳定性:算法对初始误差导致的最终误差的可控性,如果最终误差被有效地控制,则称算法是稳定的,否则就是不稳定的。第二章线性方程组求解线性方程组:jX|+ CC2X2anxn = P(2.1)
17、.,一21xl +a22x2+-+ a2nxn = PlAx = b 。”内+an2x2+-+ annxn =pn其中2.1 Gauss 消去法2.1.1消去法设计方法原则:面向计算机(事先未知元素,编制程序),例:=x = 12x)+x2=3%1- x2=0基本思想:降维一一N维问题转化为N-1维问题一一逐次降维,依次进行消去过程一一对方程组(2.1)由上而下逐步消去对角元*=1,2,-1)以下的a*(i=k+使之转化为如下等价形式,达到目标:%内+/2七+%“七, a22x2+-+ a2nxn=p2.a,= pn从而,可进入回代过程,再由下而上,逐步解得(Z =,-1,2,1):这儿的%*
18、(%=1,2,-1)主元对问题(2.1)设a”#0,目标:将第2n方程的a的系数的1,,a”1转化为0;方法:“第个方程”-2生X “第1个方程(攵=2,3,),得到n%内+%29+%/=4。义巧+=新的第左行,元素变化:(tzu =0), a.= atj -1ikakj,=/3t -lik/3k,经过-1步消去(注意:以下无元可消),得到(2.2)式。注意:每计算1个/,%,a力分仅需1个浮点运算回代:第一步,第二步 x“t=一 a%,,第_%+1步4=乩一(%*+1+1+-,+即% k = n-l,-,2,1;运算量:消元:n元方程组:第1步消元:对第i(i =2,3,)行,共n-1行;每
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大学 计算方法 讲义 课件
限制150内