wiki:GB12301/2013-04-30

Version 1 (modified by chris, 11 years ago) (diff)

数値計算法 第3週

有限桁の数値

Index

  • コンピュータによる数値の表現
  • 浮動小数点

倍精度実数

符号部指数部仮数部
-/+ 1023 6.0224
1ビット 11ビット 52ビット

2進数の小数

0.5 = ½ = 0.1binary
0.625 = ½ + (½)3 = 0.101binary

21023 より大きな数はオーバーフローを起こすので表現できない。

同様に、2-1023よりも小さな数もアンダーフローを起こして0になる。

仮数部も52ビットと有限なので、これより長い桁数は表現できず、丸め誤差(0捨1入)が生じる。

2進数では0.1decimalは循環小数になるので、丸め誤差が生じる。

相対誤差
|α-ξ|/|ξ|

大きな数同士ほど、いわゆる「誤差の範囲」は拡大する[要出典]

MATLABでの多項式

  • 係数の与え方

p = [2 5 3] …… p(x) = 2x2 + 5x + 3 を得る

  • 関数値の計算

y = polyval(p,x) …… xは単一の数値でもベクトルでもよい

  • ゼロ点

z = roots(p)