第5节 算法的数值稳定性.ppt

第5节 算法的数值稳定性.ppt

§5 算法的数值稳定性 通过前面对误差传播规律的分析,我们知道同一问题 当选用不同的算法,它们所得到的结果有时会相差很大,这 是因为运算中的舍入误差在运算过程中的传播常随算法而异。 凡一种算法的计算结果受舍入误差的影响小者称它为数 值稳定的算法。下面再通过其他一些例子来进一步说明算法 稳定性的概念。 这样算出的根x2(=0)显然是严重失真的(因为精确解 x2=1,这说明直接利用求根公式求解例1中的方程是不稳定 的。 其原因在于计算机进行加、减运算时要对节舍入计算, 实际上受到机器字长的限制,在计算-b是绝对值小的数被绝 对值大的数(109)淹没了。在计算△时,4×109被 [-(109+1)2]淹没了,这些相对小的数被“淹没”后就无法发挥 其应用的影响,由此带来的误差,造成计算结果的严重失真. 当多个数在计算机中相加时,最好从其中绝对值最小的 数到绝对值最大的数依次相加,可使和的误差减小。 通过以上这些例子,可以知道算法的数值稳定性对于 数值计算的重要性了。如无足够的稳定性,将会导致计算的 最终失败。为了防止误差传播,积累带来的危害,提高计算 的稳定性,将前面分析所得的各种结果归纳起来,得到数值 计算中应注意之点如下: (1)应选用数值稳定的计算方法,避开不稳定的算式。 (2)注意简化计算步骤及公式,设法减少运算次数;选用 运算

文档评论(0)

1亿VIP精品文档

相关文档