3.10

科学计算引论-实验

分析计算 $\left(\dfrac{\sqrt{2}-1}{\sqrt{2}+1}\right)^3$ 的几种算式的误差。

((sqrt(2)-1)./(sqrt(2)+1))^3 % 0.005050633883347
  1. 第一种方法
    $x=(\sqrt{2}-1)^6$
digits(6) % 设置有效位为6位
vpa(sqrt(2)-1) % 0.414214
vpa(0.414214.^6) % 0.00505067
abs(((sqrt(2)-1)./(sqrt(2)+1))^3-0.00505067) % 绝对误差为 3.611665341102244e-08
  1. 第二种方法
    $x=99-70\sqrt{2}$
digits(6)
vpa(sqrt(2)) % 1.414214
vpa(99-70.*sqrt(2)) % 0.00505063
abs(((sqrt(2)-1)./(sqrt(2)+1))^3-0.00505063) % 绝对误差为 3.883346588740011e-09
  1. 第三种方法
    $x=\left(\dfrac{1}{\sqrt{2}+1}\right)^6$
digits(6)
vpa(sqrt(2)) % 2.41421
vpa(1./2.41421) % 0.414214
vpa(0.414214.^6) % 0.00505067
abs(((sqrt(2)-1)./(sqrt(2)+1))^3-0.00505067) % 绝对误差为 3.611665341102244e-08
  1. 第四种方法
    $x=\dfrac{1}{99+70\sqrt{2}}$
digits(6)
vpa(sqrt(2)) % 1.414214
vpa(99+70.*sqrt(2)) % 197.995
vpa(1./197.995) % 0.00505063
abs(((sqrt(2)-1)./(sqrt(2)+1))^3-0.00505063) % 绝对误差为 3.883346588740011e-09

由此看出第二、四种算式误差较小,第一、三种算式舍入运算次数较多,因此误差较大

【科学计算 3-24】