けた落ち

(2016/08/21)
  • コンピュータでの数値計算における誤差の一種

  • 有効桁数が減ってしまう誤差
  • 丸め誤差を持つ数字同士で近い値を減算した場合に起こる
  • 133 = 11.5326, 132 = 11.4891とする
  • 133 - √132を計算する
  • 計算すると11.5326 - 11.4891となり、解は0.0435
  • 有効桁数は3けた
  • しかし、11.5326, 11.4891はそれぞれ小数点第五位を四捨五入した値
  • 小数点第四位までが正しい有効桁数6桁の値
  • あれ…もしかして私の桁数…低すぎ?
  • > 桁落ち <
  • 対策

  • 分子の有理化を行い、計算すると有効桁数6桁を維持できる
  • mathmatica
  • √133 - √132
  • = (√133 - √132) (√133 + √132) / (√133 + √132)
  • = 1 / (√133 + √132)
  • = 1 / 23.0217
  • ≒ 0.0434373
  • 桁数6桁!
  • 応用情報技術者試験

general(396)