数值计算方法的意义内容与方法-课件_第1页
数值计算方法的意义内容与方法-课件_第2页
数值计算方法的意义内容与方法-课件_第3页
数值计算方法的意义内容与方法-课件_第4页
数值计算方法的意义内容与方法-课件_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数值计算方法陈研

Tel:62732959

新学科综合楼4-201

中国农业大学资源和环境学院

2019年9月数值计算方法陈研.1§1数值计算方法的意义、内容与方法软件的核心就是算法。20世纪最伟大的科学技术发明---计算机计算机是对人脑的模拟,它强化了人的思维智能;计算机的发展和应用,已不仅仅是一种科学技术现象,而且成了一种政治、军事、经济和社会现象;没有软件的支持,超级计算机只是一堆废铁而已;算法犹如乐谱,软件犹如CD盘片,而硬件如同CD唱机。§1数值计算方法的意义、内容与方法软件的核心就是算法。22算法的研究和应用正是本课程的主题!现代科学研究的三大支柱理论研究科学实验科学计算计算数学算法的研究和应用正是本课程的主题!现代科学研究的三大支柱理321世纪信息社会的两个主要特征:“计算机无处不在”“数学无处不在”21世纪信息社会对科技人才的要求:--会“用数学”解决实际问题--会用计算机进行科学计算21世纪信息社会的两个主要特征:21世纪信息社会对科技人才的4建立数学模型选取计算方法编写上机程序计算得出结果科学计算解题过程建立数学模型选取计算方法编写上机程序计算得出结果科学计算解题5一、计算数学的产生和早期发展计算数学是数学的一个古老的分支,虽然数学不仅仅是计算,但推动数学产生和发展的最直接原因还是计算问题。

二、二十世纪计算数学的发展数值代数

最优化计算

数值逼近

计算几何

概率统计计算

蒙特卡罗方法

微分方程的数值解法

微分方程的反演问题

一、计算数学的产生和早期发展计算数学是数学的一个古老的分支,6数值计算的主要内容数值代数:方程求根、线性方程组求解、特征值和特征向量的计算、非线性方程组的求解;数值逼近:插值、数值微分和积分、最小二乘法;微分方程数值解:常微分方程数值解;偏微分方程数值解:差分法有限元法有限体积法数值计算的主要内容数值代数:方程求根、线性方程组求解、数值逼7教材

数值计算方法徐涛

编著(吉林科学技术出版社)参考书目

应用数值方法使用MATLAB和C语言

RobertJ.Schilling&SandraL.Harris(机械工业出版社)

NumericalRecipesinC++TheArtofScientificComputingSecondEdition

WilliamH.Press

等著

(电子工业出版社)

现代数值分析

李庆扬、易大义、王能超

编著(高等教育出版社)

教材参考书目8§2算法一、算法的概念描述算法可以有不同的方式。例如,可以用日常语言和数学语言加以叙述,也可以借助形式语言(算法语言)给出精确的说明,也可以用框图直观地显示算法的全貌。

定义:由基本运算及运算顺序的规定所构成的完整的解题步骤,称为算法。§2算法一、算法的概念描述算法可以有不同的方9例1:一群小兔一群鸡,两群合到一群里,要数腿共48,要数脑袋整17,多少小兔多少鸡?算术方法:若没有小兔,则鸡应是17只总腿数:2*17=34一只小兔增加2条腿,应该有只小兔10只小鸡代数方法:设有x只小鸡,y只小兔,(-2)*(i)+(ii),得只小兔高斯消去法例1:一群小兔一群鸡,两群合到一群里,要数10例:求解二元一次联立方程组用行列式解法:首先判别

(1)如果,则令计算机计算

输出计算的结果x1,x2。(2)如果D=0,则或是无解,或有无穷多组解。是否为零,存在两种可能:例:求解二元一次联立方程组用行列式解法:首先判别(1)11令通过求解过程,可以总结出算法步骤如下:S2计算S3如果则输出原方程无解或有无穷多组解的信息;否则S1输入S4输出计算的结果令通过求解过程,可以总结出算法步骤如下:S2计算S312输入D=a11a22-a12a21D=0开始输出

x1,x2

结束

No输出无解信息Yes输入D=a11a22-a12a21D=0开始输出x1,13二、算法的优劣计算量小存贮量少逻辑结构简单例:用行列式解法求解线性方程组:n阶方程组,要计算n+1个n阶行列式的值,总共需要做n!(n-1)(n+1)次乘法运算。

n=20需要运算多少次?n=100?二、算法的优劣计算量小存贮量少逻辑结构简单例:用14一、误差的背景介绍1.来源与分类从实际问题中抽象出数学模型

——模型误差§3数值计算中的误差例1:质量为m的物体,在重力作用下,自由下落,其下落距离s与时间t的关系是:(1.1)其中g为重力加速度。一、误差的背景介绍1.来源与分类从实际问题中抽象出15通过测量得到模型中参数的值——观测误差求近似解——方法误差(截断误差)机器字长有限——舍入误差

用计算机、计算器和笔算,都只能用有限位小数来代替无穷小数或用位数较少的小数来代替位数较多的有限小数,如:=3.1415926… x=8.12345通过测量得到模型中参数的值求近似解——方法误差(16四舍五入后……在数值计算方法中,主要研究截断误差和舍入误差(包括初始数据的误差)对计算结果的影响!四舍五入后……在数值计算方法中,主要研究截断误差和舍入误差17二、绝对误差、相对误差和有效数字1.绝对误差与绝对误差限例2:若用以厘米为最小刻度的尺去量桌子的长,大约为1.45米,求1.45米的绝对误差。1.45米的绝对误差=?不知道!定义1:设x是准确值,x*为x的一个近似值,称

是近似值x的绝对误差,简称为误差。

(1.5)二、绝对误差、相对误差和有效数字1.绝对误差与绝对误差限例18但实际问题往往可以估计出不超过某个正数,即,,则称

为绝对误差限,有了绝对误差限就可以知道x范围为即x落在内。在应用上,常常采用下列写法来刻划x*的精度。但实际问题往往可以估计出不超过某个正数,即,即x192.相对误差和相对误差限(1.6)定义2:设x是准确值,x*是近似值,称满足 为近似值x的相对误差,相应地,若正数,则称为x的相对误差限。2.相对误差和相对误差限(1.6)定义2:设x是准确值,x*203.有效数字则说x*近似表示x准确到小数后第n位,并从这第n位起直到最左边的非零数字之间的一切数字都称为有效数字,并把有效数字的位数称为有效位数。定义3:如果

(1.7)由上述定义有效数位为3位有效数位为5位有效数位为4位3.有效数字则说x*近似表示x准确到小数后第n位,并从这第n21误差的传播与积累例3:蝴蝶效应——纽约的一只蝴蝶翅膀一拍,风和日丽的北京就刮起台风来了?!NYBJ以上是一个病态问题误差的传播与积累例3:蝴蝶效应——纽约的一只蝴蝶翅膀一拍22§4数值计算中应该注意的一些原则

1.要使用数值稳定的算法例4:求

(n=0,1,2,…,8)的值。解:由于初值§4数值计算中应该注意的一些原则1.要使用数值稳定的算法23递推公式(1.8)注意此公式精确成立按(1.8)式就可以逐步算出Whathappened?!不稳定的算法!递推公式(1.8)注意此公式精确成立按(1.8)式就可以24由递推公式(1.8)可看出,In-1的误差扩大了5倍后传给In,因而初值I0的误差对以后各步计算结果的影响,随着n的增大愈来愈严重。这就造成I4的计算结果严重失真。这就是误差传播所引起的危害!

改变公式:将公式变为不妨设I9

I10,于是由可求得I90.017,按公式(1.9)可逐次求得(1.9)由递推公式(1.8)可看出,In-1的误差扩大了5倍后传给I25

I80.019I70.021

I60.024I80.028

I40.034I30.043

I20.058I10.088

I00.182

稳定的算法!

在我们今后的讨论中,误差将不可回避,算法的稳定性会是一个非常重要的话题。 I80.019I70.021稳定262.要避免两个相似数相减在数值计算中,两个相近的数作减法时有效数字会损失。(1.10)的值。当x=1000,y的准确值为0.01580

1、直接相减2、将(1.10)改写为则y=0.01581例5:求2.要避免两个相似数相减在数值计算中,两个相近的数作减法时有27类似地

2.绝对值太小的数不宜作除数例6:如分母变为0.0011,也即分母只有0.0001的变化时类似地2.绝对值太小的数不宜作除数例6:如分母变为0.0283.避免大数吃小数例7:用单精度计算的根。精确解为算法1:利用求根公式在计算机内,109存为0.11010,1存为0.1101。做加法时,两加数的指数先向大指数对齐,再将浮点部分相加。即1的指数部分须变为1010,则:1=0.00000000011010,取单精度时就成为:109+1=0.100000001010+0.000000001010=0.1000000010103.避免大数吃小数例7:用单精度计算29算法2:先解出注:求和时从小到大相加,可使和的误差减小。例8:按从小到大、以及从大到小的顺序分别计算4.先化简再计算,减少步骤,避免误差积累。一般来说,计算机处理下列运算的速度为1+2+3+…+40+109再利用算法2:先解出注:求和时从小到大相加,可使和的误差减小。例8305.算法的递推性

计算机上使用的算法常采用递推化的形式,递推化的基本思想是把一个复杂的计算过程归结为简单过程的多次重复。这种重复在程序上表现为循环。递推化的优点是简化结构和节省计算量。多项式求值:给定的x求下列n次多项多的值。

解:1.用一般算法,即直接求和法;2.逐项求和法;3.秦九韶方法;5.算法的递推性 计算机上使用的算法常采用31例9:用秦和韶方法求多项式在x=-0.2的值。

解:

Ka5-KvK00.008330.00833v0=a510.041670.04v1=v0x+a420.166670.15867v2=v1x+a330.50.46827v3=v2x+a2410.90635v4=v3x+a1510.81873v5=v4x+a0例9:用秦和韶方法求多项式在x=-0.2的值。解:32数值计算方法陈研

Tel:62732959

新学科综合楼4-201

中国农业大学资源和环境学院

2019年9月数值计算方法陈研.33§1数值计算方法的意义、内容与方法软件的核心就是算法。20世纪最伟大的科学技术发明---计算机计算机是对人脑的模拟,它强化了人的思维智能;计算机的发展和应用,已不仅仅是一种科学技术现象,而且成了一种政治、军事、经济和社会现象;没有软件的支持,超级计算机只是一堆废铁而已;算法犹如乐谱,软件犹如CD盘片,而硬件如同CD唱机。§1数值计算方法的意义、内容与方法软件的核心就是算法。234算法的研究和应用正是本课程的主题!现代科学研究的三大支柱理论研究科学实验科学计算计算数学算法的研究和应用正是本课程的主题!现代科学研究的三大支柱理3521世纪信息社会的两个主要特征:“计算机无处不在”“数学无处不在”21世纪信息社会对科技人才的要求:--会“用数学”解决实际问题--会用计算机进行科学计算21世纪信息社会的两个主要特征:21世纪信息社会对科技人才的36建立数学模型选取计算方法编写上机程序计算得出结果科学计算解题过程建立数学模型选取计算方法编写上机程序计算得出结果科学计算解题37一、计算数学的产生和早期发展计算数学是数学的一个古老的分支,虽然数学不仅仅是计算,但推动数学产生和发展的最直接原因还是计算问题。

二、二十世纪计算数学的发展数值代数

最优化计算

数值逼近

计算几何

概率统计计算

蒙特卡罗方法

微分方程的数值解法

微分方程的反演问题

一、计算数学的产生和早期发展计算数学是数学的一个古老的分支,38数值计算的主要内容数值代数:方程求根、线性方程组求解、特征值和特征向量的计算、非线性方程组的求解;数值逼近:插值、数值微分和积分、最小二乘法;微分方程数值解:常微分方程数值解;偏微分方程数值解:差分法有限元法有限体积法数值计算的主要内容数值代数:方程求根、线性方程组求解、数值逼39教材

数值计算方法徐涛

编著(吉林科学技术出版社)参考书目

应用数值方法使用MATLAB和C语言

RobertJ.Schilling&SandraL.Harris(机械工业出版社)

NumericalRecipesinC++TheArtofScientificComputingSecondEdition

WilliamH.Press

等著

(电子工业出版社)

现代数值分析

李庆扬、易大义、王能超

编著(高等教育出版社)

教材参考书目40§2算法一、算法的概念描述算法可以有不同的方式。例如,可以用日常语言和数学语言加以叙述,也可以借助形式语言(算法语言)给出精确的说明,也可以用框图直观地显示算法的全貌。

定义:由基本运算及运算顺序的规定所构成的完整的解题步骤,称为算法。§2算法一、算法的概念描述算法可以有不同的方41例1:一群小兔一群鸡,两群合到一群里,要数腿共48,要数脑袋整17,多少小兔多少鸡?算术方法:若没有小兔,则鸡应是17只总腿数:2*17=34一只小兔增加2条腿,应该有只小兔10只小鸡代数方法:设有x只小鸡,y只小兔,(-2)*(i)+(ii),得只小兔高斯消去法例1:一群小兔一群鸡,两群合到一群里,要数42例:求解二元一次联立方程组用行列式解法:首先判别

(1)如果,则令计算机计算

输出计算的结果x1,x2。(2)如果D=0,则或是无解,或有无穷多组解。是否为零,存在两种可能:例:求解二元一次联立方程组用行列式解法:首先判别(1)43令通过求解过程,可以总结出算法步骤如下:S2计算S3如果则输出原方程无解或有无穷多组解的信息;否则S1输入S4输出计算的结果令通过求解过程,可以总结出算法步骤如下:S2计算S344输入D=a11a22-a12a21D=0开始输出

x1,x2

结束

No输出无解信息Yes输入D=a11a22-a12a21D=0开始输出x1,45二、算法的优劣计算量小存贮量少逻辑结构简单例:用行列式解法求解线性方程组:n阶方程组,要计算n+1个n阶行列式的值,总共需要做n!(n-1)(n+1)次乘法运算。

n=20需要运算多少次?n=100?二、算法的优劣计算量小存贮量少逻辑结构简单例:用46一、误差的背景介绍1.来源与分类从实际问题中抽象出数学模型

——模型误差§3数值计算中的误差例1:质量为m的物体,在重力作用下,自由下落,其下落距离s与时间t的关系是:(1.1)其中g为重力加速度。一、误差的背景介绍1.来源与分类从实际问题中抽象出47通过测量得到模型中参数的值——观测误差求近似解——方法误差(截断误差)机器字长有限——舍入误差

用计算机、计算器和笔算,都只能用有限位小数来代替无穷小数或用位数较少的小数来代替位数较多的有限小数,如:=3.1415926… x=8.12345通过测量得到模型中参数的值求近似解——方法误差(48四舍五入后……在数值计算方法中,主要研究截断误差和舍入误差(包括初始数据的误差)对计算结果的影响!四舍五入后……在数值计算方法中,主要研究截断误差和舍入误差49二、绝对误差、相对误差和有效数字1.绝对误差与绝对误差限例2:若用以厘米为最小刻度的尺去量桌子的长,大约为1.45米,求1.45米的绝对误差。1.45米的绝对误差=?不知道!定义1:设x是准确值,x*为x的一个近似值,称

是近似值x的绝对误差,简称为误差。

(1.5)二、绝对误差、相对误差和有效数字1.绝对误差与绝对误差限例50但实际问题往往可以估计出不超过某个正数,即,,则称

为绝对误差限,有了绝对误差限就可以知道x范围为即x落在内。在应用上,常常采用下列写法来刻划x*的精度。但实际问题往往可以估计出不超过某个正数,即,即x512.相对误差和相对误差限(1.6)定义2:设x是准确值,x*是近似值,称满足 为近似值x的相对误差,相应地,若正数,则称为x的相对误差限。2.相对误差和相对误差限(1.6)定义2:设x是准确值,x*523.有效数字则说x*近似表示x准确到小数后第n位,并从这第n位起直到最左边的非零数字之间的一切数字都称为有效数字,并把有效数字的位数称为有效位数。定义3:如果

(1.7)由上述定义有效数位为3位有效数位为5位有效数位为4位3.有效数字则说x*近似表示x准确到小数后第n位,并从这第n53误差的传播与积累例3:蝴蝶效应——纽约的一只蝴蝶翅膀一拍,风和日丽的北京就刮起台风来了?!NYBJ以上是一个病态问题误差的传播与积累例3:蝴蝶效应——纽约的一只蝴蝶翅膀一拍54§4数值计算中应该注意的一些原则

1.要使用数值稳定的算法例4:求

(n=0,1,2,…,8)的值。解:由于初值§4数值计算中应该注意的一些原则1.要使用数值稳定的算法55递推公式(1.8)注意此公式精确成立按(1.8)式就可以逐步算出Whathappened?!不稳定的算法!递推公式(1.8)注意此公式精确成立按(1.8)式就可以56由递推公式(1.8)可看出,In-1的误差扩大了5倍后传给In,因而初值I0的误差对以后各步计算结果的影响,随着n的增大愈来愈严重。这就造成I4的计算结果严重失真。这就是误差传播所引起的危害!

改变公式:将公式变为不妨设I9

I10,于是由可求得I90.017,按公式(1.9)可逐次求得(1.9)由递推公式(1.8)可看出,In-1的误差扩大了5倍后传给I57

I80.019I70.021

I60.024I80.028

I40.034I30.043

I20.058I10.088

I00.182

稳定的算法!

在我们今后的讨论中,误差将不可回避,算法的稳定性会是一个非常重要的话题。 I80.019I70.021稳定582.要避免两个相似数相减在数值计算中,两个相近的数作减法时有效数字会损失。(1.10)的值。当x=1000,y的准确值为0.01580

1、直接

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论