误差:一个物理量的真实值与计算值之间的误差
在使用数值方法解决问题的时候,要重点考虑方法误差和舍入误差
【值范围估计】

【数值方法计算】

从上面可知,数值计算所得到定积分的值是0.743,且该值与原定积分值(0.747… …)的误差不超过0.006
有一个天气预报程序,有下面两种计算方式
上面两种方式得到的结果可能天差地别,因为中途将数据输出为文件时需要对数字取有限的位数,这就出现了舍入误差,这个误差随着积累越来越大,最终造成两种方式所求得的结果差异较大

对于一些病态问题,可能一开始只是有一点小误差,但是随着计算过程的积累,最后所得到的结果会有巨大的失真



【算法稳定性分析】




误差是不可回避的,在使用一个算法之前,需要先分析算法的稳定性

使用绝对误差不太容易衡量误差的大小,用相对误差转化为百分比的数更容易看出来

有效数字位数:从小数点的最后一位开始数,数到最前面不为零的数字,如0.1的有效数字位数是1,1.1的有效数字位数是2

上面内容的数学描述如下:



12300应该写成,0.12300x10^5,这样有效数字的位数才是不变的







在算法设计的时候需要考虑误差的传播和累积,在使用计算机进行实现的时候需要注意如下方面:

尽量不要用大数除以小数,不然数字很大,计算机字长有限,舍入误差较大
避免 大数和小数 之间 相加或者相减


如果想用大数 加 小数,可能会出现大数吃小数的情况

一般来说,计算机处理下列运算的速度为 加减>乘除>exp(),可以先尽量将运算化简为 加减、乘除,再进行计算
文章为本人学习网上课程的学习笔记,课程的链接为 《数值分析》2020年春季华中科技大学研究生课程 46讲合辑,文章中大部分图片来源于课程截图,部分图片中加上了本人的理解标注,如有侵权,麻烦联系删除,最后对老师的课程表示衷心的感谢。