您的当前位置:首页正文

第1讲(2014-9-10)

2022-05-08 来源:年旅网


数值分析

王云诚

办公室:文理大楼1207

电话:8249346

E-mail: ycwang@sdau.edu.cn

2014年9月10日

关于教学参考书的建议

1.科学和工程计算基础。施妙根、顾丽珍编。清华大学出版社,1999。

2.数值分析(第五版)。李庆扬、王能超、易大义编,清华大学出版社,2008。

3.科学计算导论(第二版)。Michael T. Heath著。清华大学出版社,2005。

课程成绩判定

平时成绩:40%(考勤) 期末成绩:60%(开卷)

第一章 绪论

§1 数值分析的几个基本问题

一、用数学方法解决科学与工程问题的步骤

实际问题

建立数学模型

求解数学模型的计算方法(本课程针对基本模型)

编程,并上机计算 求出问题的结果。

二、研究对象

用计算机求解数学模型的计算方法:

数值运算符号运算

本课程研究:数值计算方法

三、研究内容

(1)数值代数:线性方程组的解法,求矩阵

的特征值与特征向量。

(2)函数逼近:插值法,数值微分和数值积分,数据拟合。

(3)方程求解:非线性方程(组)、常微分方程数值解法。

四、研究数值计算方法的意义 (1)很多数学模型不能用公式求解 (2)手工求解计算量巨大 (3)新的数学模型不断被提出

五、算法设计的基本思想 基本思想一:连续问题离散化

计算机只能计算离散点的函数值,对于连

续取值的问题,必须通过离散化方法解决。

【例1】 计算函数在一个区间上的定积分。只能利用区间上有限个点(逐步增多)处的函数值,计算处定积分的近似值。

【例2】 求常微分方程定解问题的解。理论上它的解是一个区间上的函数,但用计算机只能求出离散点处方程的近似解。

基本思想二:迭代法

大多数数学模型的解,不能通过一次计算得到,而需要采用逐步逼近的方式,求出其满足一定精度要求的近似解。

【例3】 求非线性方程f(x)0的根,一

般方法是构造一个近似解序列,使序列收敛到方程的解。

【例4】 大规模线性方程组,一般方法是构造一个近似解向量序列,使序列收敛到方程的解。

基本思想三:局部近似 (1)以直代曲

【例5】 求非线性方程f(x)0的根x。

*x牛顿法:在当前近似根k处作曲线

yf(x)的切线,该切线与x轴的交点作为

xk1,由此产生的点列xk在一定条件下可收

敛到方程的根x。

*

(2)化整为“零”后近似

【例6】 计算定积分基本思路:

——将曲边梯形分割为若干小曲边梯形; ——将曲边梯形用矩形或者梯形近似; ——以小矩阵面积的和近似曲边梯形的面积。

baf(x)dx的值。

y y=f(x) 0 ax0x1x2xi1xixn1xnbx 事实上,“以直代曲”的思路”,可以推广到“以简代繁”。

譬如,计算定积分值的“以直线代曲线”,可以“以抛物线代曲线”。

六、算法应具备的特性

(1)算法应是计算机可执行的; (2)算法要有理论分析作支持:包括收敛性,收敛速度,数值稳定性,误差分析等;

(3)算法要有好的计算复杂性:时间复杂性,空间复杂性;

(4)算法要有数值实验验证。

§2 数值计算的误差

采用数值计算方法,一般只能得到问题的近似解。研究算法产生误差的原因,以及得到的近似解与问题的精确解之间的“近似程度”是必要的。

一、误差的分类 1.截断误差

截断误差也叫做公式误差。在科学计算中,计算一个数学问题,常采用近似公式。近似公式带来的误差称为截断误差。

【例7】 计算

xxxsinxx 3!5!7!x(1)R2n1(x) (2n1)!n2n1357用多项式

xxxxnx(1)3!5!7!(2n1)!

近似sin差。

【例8】 计算

3572n1x带来的误差R2n1(x)叫做截断误

baf(x)dx也要用近似公

式,两者之间的误差叫做近似公式的截断误差。

2.舍入误差

计算机存储实数时,只能保存有限位,通常采用“四舍五入”近似,这一误差叫做舍入误差。

舍入误差很难分析,因此,在误差分析方面,本课程主要研究算法的截断误差。

二、误差的概念 1.绝对误差

定义:设x为准确值(真值),x为x的

***一个近似值,称E(x)xx为近似值x的绝对误差,简称误差。

*绝对误差可能是正的,也可能是负的。

由于准确值

*x通常是不知道的,所以绝对

误差E(x)实际上也无法准确度量。通常根据

*E(x)算法估计的一个上界(x),叫做近似

*值x的误差界(或误差限),即

*E(x)xx(x).

误差限不依赖于准确值x,并且不是唯一的。通常误差限要尽可能小,它取决于误差分析的技术水平。

***2.相对误差

定义:当x0时,称

E(x)Er(x)x

**为近似值x的相对误差。

在实际计算中,由于准确值x是未知的,通常取

**E(x)E(x)*x,

*r*作为x相对误差,并取

*(x)*r*(x)x**

作为

x*的相对误差限。

问题:相对误差限的上述两种定义,何时“基本相等”?

E(x)E(x)*结论:当 x的绝对值较小时。

*r**这是因为

E(x)E(x)E(x)(xx)**xxxx*E(x)2(*)*2(E(x))x**0** E(x)x(xE(x))1(*)x****E(x)E(x)*因此,xx。

**

【例9】 已知e其近似值为e*2.71828182,

*2.71828,求e的绝对

*误差限和相对误差限

r。

:因Ee*e0.00000182,

所以

E0.000001820.000001831.83106从而可取e*的绝对误差限为:

1.83106。

E1.8310**e2.71828e660.67106.810**e所以可取的相对误差限r为:

7

6.810

3.有效数字

*r7。

如果一个实数的精确值有无限多位,或位数很多,计算机一般按“四舍五入”取其近似值(单精度8位,双精度16位)。

例如:按“四舍五入”的规则,

3.14159265

取3位近似值得

3.14,1233.1410

2取5位近似值,得

*3.1416,1453.141610

2由于上述两个近似值是按“四舍五入”得到的,它们的绝对误差的绝对值都不超过近似值末位数字的半个单位。

除了绝对误差和相对误差,还可以用“有效数字”描述近似数的“近似程度”。

*定义:如果x的误差绝对值不超过某一个数字的半个单位,且该数字到x的第一位非零数字共有n位,则称用x近似x时具有n***位有效数字。

注意:这一定义中,近似值有限位小数。

如何判别有效数字的位数?

情形一:如果x是四舍五入后得到的近似值,并且x从左面第一位非零数字到最后一位数字共有n位,则x具有n位有效数字。

***x*不一定是

例如: 取*3.14作为的近似值,有3

*位有效数字;

取*3.1416作为的近似值,有5

*位有效数字。

情形二:将x表达为

*x100.12n

其中k是某个整数,1,,n为0~9中的数字,并且10。

根据定义,当且仅当

*k时,x恰有n位有效数字;仅右面的不等式

*1(n1)*10(10)xx21kn10(10)2k*

成立时,x至少具有n位有效数字。

例如:

22用7作为

*3.1415926

的近似值,有几位有效数字? 因为

22100.3142857*,

114*310(10)10(10)所以22*有

3位有效数字。

如果一个准确值有n1位(首位不等于0),当末位按“四舍五入”处理后,得到的n位近似值一定有n位有效数字。

下面的定理反映了相对误差与有效数字的关系。

定理 设

x*是

x的近似值,则x*的有

效数字与x*的相对误差之间有如下关系:(1)若x*具有n位有效数字,则x*相对误差

e*r满足

e*1n1r210 (2)若x*的相对误差

e*r满足

e*r1n210 则x*至少有n位有效数字。

证明 设x*表示为

x100.12则

*kn

其中1,,n为0~9中的数字,并且10。

10*k1x10

*k(1)当x具有n位有效数字时,按定义,有

1nxx10(10) 2*k从而

e*rxxx**1n1102

(2)当

*rx*的相对误差

e满足

*r1ne10时,有 21nxxx1021kn10(10)

2**因此,x至少有n位有效数字。

这个定理说明,近似值的有效数字位数越多,即n越大,相对误差就越小;反之,相对误差越小,则有效数字的位数就可能越多。

三、数值运算的误差

当自变量有误差时,一般地,其函数值也有误差。

误差——可能是截断误差

*——也可能是舍入误差

1.一元函数的误差 设x是准确值*x的近似值,则函数f(x)的近似值为f(x*)。

由于

f(x)f(x*)f()(xx*),

介于x与x*之间,

所以

f(x)f(x*)f()(xx*)

从而

(f(x*))f()(x*)

2. 多元函数的误差

f(x,x,,x)12n对于多元函数,设自变

x,x,,x量的近似值分别为

E(f(x,x,,x)*1*2*n*1*2*n*1*2*n,则

f(x,x,,x)f(x1,x2,,xn)

f*|(x*,x*,,x*)e(x1)x112nf*|(x*,x*,,x*)e(xn)xn12n于是误差限

(f(x,x,,x)k1n*1*2*nf*|(x*,x*,x*)(xk)xk12n

特别

(xx)(x)(x)*1*2*1*2*2*1*1*2*1*2

(xx)x(x)x(x)(x*/x*12)

****x1(x2)x2(x1)x*22

因篇幅问题不能全部显示,请点此查看更多更全内容