Skip to content

绪论部分

约 1782 个字 预计阅读时间 6 分钟

数值计算的任务和特点

最有效的算法:适用范围广、运算工作量少,需用存储单元少,逻辑结构简单,便于编写计算机程序,而且计算结果可靠

  • 误差估计:由于计算机计算通常是近似的,因而一般要求算法能估计误差
  • 稳定性:计算过程中,误差能得到控制,各步误差对计算结果不致产生过大 影响;不合适的算法会导致计算误差达到不能容许的地步,而使计算最终失败.
  • 收敛性:通过增加计算量,能使近似计算解充分接近理论解

没有一种算法处处有效,而且各种算法在计算过程中往往都会出现某些问题

计算机的数系和运算特点

任意实数x可以表示成十进制的浮点数

...

数值计算的误差

误差的来源:过失误差,非过失误差

非过失误差:模型误差、观测误差、截断误差和舍入误差

截断误差:对某种无穷过程进行“截断”,即仅保留无穷过程的前段有限 序列而舍弃它的后段

舍入误差:在数值计算中会遇到一些无穷小数,在无理数和有理数分化出的无线循环小数

计算机数系收到机器字长的限制,使离散的有限集,产生舍入误差 每一步的舍入误差按照四舍五入的一定位的有理数来替代,产生舍入误差

数学模型一旦建立,进入具体计算时所要考虑和分析的就是截断误差和 舍入误差

模型误差和观测误差不是计算工作者所能独立解决的

绝对误差与相对误差

误差限,准确值\(x^*\),近似值x,绝对误差简称误差\(x^*-x\)

常用\(\(x^{*}=x\pm \varepsilon\)\) 用具有毫米刻度的米尺测量不超过\(1m\)的某个物体的长度\(l^{*}\)时 如果读出的长度是\(513mm\),即\(l^*\)\([512.5, 513.5)\)毫米区间内

绝对误差还不能完全评价近似值的精确度

\(\(e^r=\frac{e}{x^{*}}=\frac{x^*-x}{x^*}\)\) 相对误差是一个无量纲量,通常用百分数表示,相对误差的绝对值越小,近似程度越高

由于准确值的\(x^*\)一般无法知道,不能定出相对误差\(e^r\)的准确值,而只能估计他们的大小范围

如果存在一个正数

\[\varepsilon_r\]

使得

\[e_r\leq\varepsilon_r\]

那么正数\(\varepsilon_r\)成为近似数x的相对误差限

相对误差不如绝对误差容易得到,在实际中长借助绝对误差限来求之,并取分母中的准确值\(x^*\)为近似值,即取

\[\varepsilon_r = \frac{\varepsilon}{|x|}\]

有效数字

一种近似数的表示方法,既能表示其大小,又能表示其精确程度在计算中常按四舍五入原则得到数x*的前几位近似值x,例如设

\[x^*=0.123456789\]

取x=0.1235,这里x是x*的四位有效数字近似值

有效数字的位数是指从左边第一个非零数字开始,到最后一个数字为止的位数

绝对误差限都不超过末位的半个单位,即

\[|x^*-x|\leq 0.5\times 10^{k-n}\]

其中k是x*的小数点右边第一个数字的位置,n是有效数字的位数

定理1:设近似数是

\[x=\pm0.a_1a_2...a_n\times 10^m\]

有n位有效数字,则x的绝对误差限为

\[|x^*-x|=\varepsilon\leq \frac{1}{2a_1}\times 10^{m-n}\]

证明:由于x有n位有效数字,所以

\[|e|=|x^*-x|\leq \frac{1}{2}\times 10^{m-n}\]

\[|x|\geq a_1\times 10^{m-1}\]

所以有

\[|e_r| = |\frac{x^*-x}{x}|\leq \frac{\frac{1}{2}\times 10^{m-n}}{a_1\times 10^{m-1}}=\frac{1}{a_1}\times 10^{-n+1}\]

定理2:设近似数是

\[x=\pm0.a_1a_2...a_n\times 10^m\]

有n位有效数字,则x的相对误差限为

\[|e_r|\leq \frac{1}{2a_1}\times 10^{-n+1}\]

那么它至少有n位有效数字

例题:要是\(\sqrt{20}\)的近似值的相对误差线小于\(0.1%\).要取几位有效数字

解:设要取n位有效数字.

有定理1知道

\[\varepsilon = \frac{1}{2a_1}\times 10^{-n+1}\]

此时,有

\[\sqrt{20}=10\times0.44...\]

所以,a1=4,所以

\[\varepsilon = \frac{1}{2\times 4}\times 10^{-n+1}=\frac{1}{8}\times 10^{-n+1}\leq 0.1\]

所以

\[$$10\times 10^{-n} \leq 8 \times 10^{-3}\]

所以,取n=4,此时的相对误差小于0.1

计算机的舍入误差

自学

误差的传播

任何数学问题的解y总与某些参量有关,这些参量的值往往不是完全确定的,而是有一定的误差限

\[y^*=f(x_1^*,x_2^*,...,x_n^*)\]

\(x_i^*\)的近似值为\(x_i\),则y为相应的解

则近似解的绝对误差为

\[f(y) = y^*-y = f(x_1^*,x_2^*,...,x_n^*)-f(x_1,x_2,...,x_n)\]

相对误差为

\[e_r(y)=\frac{f(y)}{y^*} = \frac{f(x_1^*,x_2^*,...,x_n^*)-f(x_1,x_2,...,x_n)}{f(x_1^*,x_2^*,...,x_n^*)}\]

当数据误差较小时,由于函数增量近似等于其微分,得误差估计式

这里有很多笔记和数学公式要写,回头写

  • 写笔记

在运算中的传播

加减运算:

近似值之和的绝对误差等于个近似值的绝对误差的代数和

两数详见的时候,绝对误差等于两数绝对误差的代数和

乘除运算:

近似值的乘积的相对误差等于相乘因子的相对误差的代数和

避免绝对值很大的数作为因子

两近似值之商的相对误差等于被除数的相对误差除数的相对误差.

应当尽量避免用接近于零的数作除数

乘方及开方运算:

乘方的运算相当于把自己的精度降低了q倍

开方则是增加了q倍的精度

无损变形:

\(\(x = (\frac{\sqrt{2}-1}{\sqrt{2}+1})^6\)\) - - -

相近数相减,导致精度扩散

算法的稳定性

算法不是单纯的数学公式,,是对一些已知数据按某种规定的顺序进行有限次四则运算

一个算法如果输入数据有误差,而在计算过程中舍入误差不增长,则称此算法是数值稳定的,否则称此算法为不稳定的

需要构造数值稳定的算法

几个原则

  1. 防止大数吃掉小数,影响计算精度(计算机字长有限)
    • 为减少舍入误差,实际计算时需注意运算顺序,避免大数吃掉小数:结论:若干数相加,最好先加绝对值较小的数
  2. 要控制舍入误差的积累和传播:可靠的算法,各步误差不应对计算结果产生过大影响,即具有稳定性

后面的内容有很多,回头再写

p26 T1T2T9

交作业在学在浙大,拍照上传就好

Comments