东北大学理学院数学系2017年12月13日计算数学教研室东北大学第二章解线性方程组的直接方法目录Contents第一章绪论1253第三章解线性方程组的迭代法4第四章非线性方程组求根第五章插值与逼近67第七章常微分方程数值解法第六章数值积分与数值微分东北大学01绪论东北大学模型分类观测误差截断误差舍入误差误差分类模型误差绪论实例分析数值分析研究的对象和内容数值分析是研究科学计算中各种数学问题求解的数值计算方法.20世纪数学最大的变化是数学应用,美国科学工程和公共事务政策委员会报告《美国的现在和未来》(1986年)指出:“今天,在技术科学中最有用的数学领域是数值分析和数学建模”。东北大学模型分类观测误差截断误差舍入误差误差分类模型误差绪论实例分析天气预报:天气会受各种因素的影响,稍微一些因素发生改变就会产生很大的变化,所以天气预报其实是一件比较困难的工作,古代人们用占卜或者经验总结等方式来预计天气状况,这是统计学。有了计算机,可以通过数值模拟来预报天气。具体过程:1.根据大气运动列出数学物理方程;2.对空间进行网格划分;3.通过观测数据给出初值条件,通过数值方法求解这些方程得到网格点处的数值解。这也是为什么主持人总是说大概在...地区大致在...时段,可能有...量级的降水...因为时空是连续的,而网格划分不可能无限密,所得的数值解也存在误差。东北大学模型分类观测误差截断误差舍入误差误差分类模型误差绪论对象内容表12000-2006年1月某城市的总用水量(万吨/日)年份2000200120022003200420052006用水量4032.414186.0254296.9864374.8524435.2344505.4274517.699供水计划和生产调度计划的制定如何充分地利用这些数据建立数学模型,预测2007年1月份城市的用水量,以制定相应的供水计划和生产调度计划?如果能建立该城市的日用水量随时间变化的函数关系,则用该函数来进行预测非常方便。但是这一函数关系的解析表达式是没办法求出来的,那么能否根据历史数据求出该函数的近似函数呢?根据未知函数的已有数据信息求出其近似函数的常用方法有插值法和数据拟合。实例分析东北大学模型分类观测误差截断误差舍入误差误差分类模型误差绪论对象内容实例分析湘江水流量估计的实际意义水流量是水文特征值的一个重要指标,而水文特征值对于水资源的合理利用,防洪以及抗旱具有指导性的作用,因此湘江水流量估计对于湘江流域的社会经济和人民生活具有重大的影响。现根据实际测量得到湘江某处河宽700m,其横截面不同位置某一时刻的水深如表2所示。若此刻湘江的流速为0.5m/s,试估计湘江此刻的流量。要计算湘江水流量就需要知道其横截面面积,如果知道此处江的水深曲线函数,则其横截面面积为。但是在实际中是不可能精确得到的,那么怎样求出足够高精度的横截面面积的近似值。表2湘江某处横截面不同位置的水深数据单位:mx050100150200250300350400450500550600650700h(x)4.25.95.85.24.55.755.54.85.94.15.14.65.74.7()bahxdx东北大学模型分类观测误差截断误差舍入误差误差分类模型误差绪论用计算机进行科学计算解决实际问题的过程如下:对象内容实际问题数学模型数值计算方法程序设计计算机计算求出结果对数学模型建立数值计算方法,并对方法进行理论分析,直到编程上机计算出结果,以及对结果的分析,这就是数值分析研究的对象和任务。东北大学好算法应具有的特点123结构简单,易于计算机实现理论上要保证方法的收敛性和数值稳定性计算效率高:计算速度快,节省存储量4经过数值实验检验,证明行之有效Tip:学习中,要注意掌握数值方法的基本原理和思想,要注意方法处理的技巧及其与计算机的结合,要重视误差分析、收敛性和稳定性的基本理论。东北大学数值分析应用范畴随着计算机的飞速发展,数值分析方法已深入到计算物理、计算力学、计算化学、计算生物学、计算经济学等各个领域。本课仅限介绍最常用的数学模型的最基本的数值分析方法。东北大学模型分类观测误差截断误差舍入误差误差分类模型误差误差的来源和分类误差是描述数值计算之中近似值的精确程度,在数值计算中十分重要,误差按来源可分为模型误差、观测误差、截断误差和舍入误差四种。1.模型误差数学模型通常是由实际问题抽象得到的,一般带有误差,这种误差称为模型误差。模型误差东北大学模型误差观测误差截断误差舍入误差误差分类观测误差误差的来源和分类2.观测误差数学模型中包含的一些物理参数通常是通过观测和实验得到的,难免带有误差,这种误差称为观测误差。东北大学模型误差观测误差截断误差舍入误差误差分类截断误差误差的来源和分类3.截断误差求解数学模型所用的数值方法通常是一种近似方法,这种因方法产生的误差称为截断误差或方法误差。例如,利用ln(x+1)的Taylor公式:...)1(...)1ln(11441331221nnnxxxxxx实际计算时只能截取有限项代数和计算,如取前5项有:5141312112ln这里产生误差(记作R5)...101918171615R东北大学模型分类观测误差截断误差舍入误差误差分类舍入误差误差的来源和分类4.舍入误差由于计算机只能对有限位数进行运算,在运算中像等都要按舍入原则保留有限位,这时产生的误差称为舍入误差或计算误差。31,2,e在数值分析中,我们总假定数学模型是准确的,因而不考虑模型误差和观测误差,主要研究截断误差和舍入误差对计算结果的影响。东北大学截断误差相对误差绝对误差误差的来源和分类设x是精确值x*的一个近似值,记e=x*-x称e为近似值x的绝对误差,简称误差。如果满足|e|≤则称为近似值x的绝对误差限,简称误差限。精确值x*、近似值x和误差限之间满足:x-≤x*≤x+通常记为x*=x±绝对误差有时并不能很好地反映近似程度的好坏,如x*=10,x=1,y*=10000,y=5虽然y是x的5倍,但在10000内差5显然比10内差1好。东北大学绝对误差相对误差相对误差误差的来源和分类记***xxxxeer称er为近似值x的相对误差。由于x*未知,实际使用时总是将x的相对误差取为xxxxeer*称为近似值x的相对误差限。|er|≤r.||rx东北大学误差的来源和分类例1设x=1.24是由精确值x*经过四舍五入得到的近似值,求x的绝对误差限和相对误差限。解由已知可得:1.235≤x*1.245所以=0.005,r=0.005÷1.24≈0.4%Tip:一般地,凡是由精确值经过四舍五入得到的近似值,其绝对误差限等于该近似值末位的半个单位东北大学有效数字定义1设数x是数x*的近似值,如果x的绝对误差限是它的某一数位的半个单位,并且从x左起第一个非零数字到该数位共有n位,则称这n个数字为x的有效数字,也称用x近似x*时具有n位有效数字。例2已知下列近似值的绝对误差限都是0.005,问它们具有几位有效数字?a=12.175,b=-0.10,c=0.1,d=0.0032解由于0.005是小数点后第2数位的半个单位,所以a有4位有效数字1、2、1、7,b有2位有效数字1、0,c有1位有效数字1,d没有有效数字。东北大学有效数字x作为x*的近似值,具有n位(n≤k)有效数字当且仅当nmxx1021*120.10mkxaaa数x总可以写成如下形式ka10.a其中m是整数,是0到9中的一个数字,注:近似值的有效数字越多,其绝对误差越小。东北大学有效数字510例1为了使的近似值的绝对误差小于,问应取几位有效数字?解:由于,则近似值x可写为21.414...*2x11210.10,10.kxaaaa151210102nx令故取n=6,即取6位有效数字。此时x=1.41421。注:精确值的有效数字可认为有无限多位。东北大学有效数字与相对误差的关系反之,若x的相对误差限则x至少有n位有效数字.若x有n位有效数字,则其相对误差限为11110.2nra1110)1(21nra东北大学数值计算中的若干原则为了减少舍入误差的影响,设计算法时应遵循如下的一些原则。1.避免两个相近的数相减。如果x*,y*的近似值分别为x,y,则z=x-y是z*=x*-y*的近似值.此时,相对误差满足估计式)()()(*yeyxyxeyxxzzzzerrr可见,当x与y很接近时,z的相对误差有可能很大。在数值计算中,如果遇到两个相近的数相减运算,可考虑改变一下算法以避免两数相减。例如:2121loglogxxxx时,有当21logxx东北大学数值计算中的若干原则xxcos10时,有当2sin22xxxx11时,有当xx11例4求方程x2-64x+1=0的两个根,使它们至少具有四位有效数字()984.311023解由求根公式有984.631023321x,仅有两位有效数字。若由016.01023322x对两个相近的数相减,若找不到适当方法代替,只能在计算机上采用双倍字长计算,以提高精度。。则有四位有效数字。再由根与系数的关系得01563.0/112xx东北大学数值计算中的若干原则2.防止大数“吃掉”小数因为计算机上只能采用有限位数计算,若参加运算的数量级差很大,在它们的加、减运算中,绝对值很小的数往往被绝对值较大的数“吃掉”,造成计算结果失真。例如,用八位十进制浮点计算A=26358713+0.8+0.2按照加法浮点运算的对阶规则,应有A=0.26358713×108+0.000000008×108+0.000000002×108由于采用八位数运算,于是有A=26358713若改变计算顺序,计算0.2+0.8+26358713,则有A=0.00000001×108+0.26358713×108=26358714可见,在求和或差的过程中应采用由小到大的运算过程。东北大学数值计算中的若干原则3.绝对值太小的数不宜作除数由于除数很小,将导致商很大,有可能出现“溢出”现象.另外,设x*,y*的近似值分别为x,y,则z=x÷y是z*=x*÷y*的近似值.此时,z的绝对误差满足估计式2****)()()()()(yyexxeyyyyyxyxxzzze可见,若除数太小,则可能导致商的绝对误差很大。东北大学数值计算中的若干原则4.注意简化计算程序,减少计算次数首先,若算法计算量太大,实际计算无法完成,例如用Cramer法则求n元线性方程组Ax=b的解,需要计算n+1个n阶行列式,而每个n阶行列式按定义:要计算(n-1)n!次乘法,则Cramer法则至少需要(n2-1)n!次乘法,当n=20时,有(202-1)20!9.7×1020次乘法运算。如果用每秒钟计算1百万次乘除运算的计算机,约需要:121212...(1)...nntppnppppaDaa东北大学数值计算中的若干原则其次,即使是可行算法,则计算量越大积累的误差也越大。例如计算n次多项式:若直接逐项计算,大约需要乘法运算次数为0111...)(axaxaxaxpnnnnn次2)1(12...)1(nnnn若将多项式改写为:则只需n次乘法和n次加法运算。021...)))(...(()(axxaxaxaxpnnnn东北大学数值计算中的若干原则5.选用数值稳定性好的算法一种数值算法,如果其计算舍入误差积累是可控制的,则称其为数值稳定的,反之称为数值不稳定的。例如积分利用分部积分法可得计算In的递推公式由于,n=0时,取I0具有四位有效数字的近似值I0≈0.6321,递推可得:101dxexIxnnIn=1-nIn-1,n=1,2...10110......632120558.01edxeIx东北大学数值计算中的若干原则对任何n都应有In0,但计算结果