• 検索結果がありません。

● 講義資料

N/A
N/A
Protected

Academic year: 2021

シェア "● 講義資料"

Copied!
2
0
0

読み込み中.... (全文を見る)

全文

(1)

2013年度・前期・数理解析・計算機数学3・第3回 1

● 講義資料

▼ 講義予定

自然定数の底の近似値の計算と浮動小数点演算の誤差

● 前回の講義のまとめ

▼ 浮動小数点数について

計算機における浮動小数点数は,(倍精度浮動小数点数の場合には)(二進)有効桁数53 であるので,それ以上の精度で計算を行うことはできない. (以下では,「浮動小数点数」と 書いたら,倍精度浮動小数点数のことである.)

2つの浮動小数点数x,yの「誤差」のはかりかたには,ǫ=|x−y|を考える「絶対誤差」と,

|x−y|=ǫ|x| を考える「相対誤差」がある.

有限桁の精度の浮動小数点数では,その桁数に応じて,表示できる数の精度が異る. たとえば, x∼20 の時には, 253 の細かさで数を表示可能であるが,x∼21 の時には, 252 の細かさ でしか表示可能とならない.

したがって, 誤差をはかるためには「相対誤差」を用いる必要があり, 相対誤差 253 程度

(4.0×1016 程度)がその限界となる.

● 講義資料

▼ 自然対数の底の近似値を求める

以下の図は, (1 + 1/n)nを計算して,eの近似値を求めた例である. (eと近似値の値との絶対誤 差を表示している)

1e-08 1e-07 1e-06 1e-05 0.0001 0.001 0.01 0.1 1

1 100 10000 1e+06 1e+08 1e+10 1e+12 1e+14 1e+16

高速乗算・pow関数を利用して計算した結果

Oct. 16, 2013, Version: 1.0 [email protected]

(2)

2013年度・前期・数理解析・計算機数学3・第3回 2

1e-10 1e-08 1e-06 0.0001 0.01 1 100

1 100 10000 1e+06 1e+08 1e+10 1e+12 1e+14 1e+16

(1+1/n)^n Floating Point Arithmetics Error by Rounding Mode nearest upward downward toward zero

丸めモードを変更して計算した結果

(計算方法は高速乗算)

● 実習内容

(以下で「★」の数は推奨の程度を示します. 多いほど推奨の度合いが大きい. また,「†」は 難易度またはマニアックな程度を表します. 多いほど難しいかマニアックかです.)

1. (★★★)前回の問題5, 6, 7で求めた計算結果を,この資料の図のように書き出しなさい.

2. (†††)通常,浮動小数点演算の丸めモードは“nearest neighbour”である. 他の丸めモー ドを用いても, (1 + 1/n)nの計算値とeとの誤差の挙動は変化が無いことを確かめなさい. お,浮動小数点演算の丸めモードは,fesetround関数で設定できる. WEB“fesetround”

として検索すれば,この関数の使い方がわかる.

3. (★★★)ex x= 0におけるテイラー級数 ex=X

k=0

xk k!

を用いて,e の近似値を絶対誤差1012以内で計算しなさい. また,相対誤差1012 でも計 算しなさい.

Oct. 16, 2013, Version: 1.0 [email protected]

参照

関連したドキュメント

SPECcpu2017 は、整数演算および浮動小数点演算でシステム性能を測定するベンチマークです。このベン チマークは、10

ニュートン法のアルゴリズム 入力:関数 ,勾配ベクトル ,ヘッセ行列 初期点 0 ステップ0: とする ステップ1: が

最急降下法の実行例その2 • 最急降下法は,必ず停留点( となる点)に収束

ニュートン法のアルゴリズム 入力: 関数 とその勾配ベクトル ヘッセ行列 初期点 0 ステップ0: とする ステップ1:

凸関数 [p.93] 最小化しやすい関数の形は? 最小解でない極小解 がある 最小化が難しい 極小解が一つ 最小化しやすい

あれぇ? 方法1 演算精度:単精度浮動小数点演算 (float), 乗算方法:高速乗算法 方法2

(★★★)6回目資料の「単振動」と「単振り子」の常微分方程式の初期値問題の数値解を, Symplectic Euler

Dept of Electrical & Electronic