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

● 講義資料

N/A
N/A
Protected

Academic year: 2021

シェア "● 講義資料"

Copied!
7
0
0

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

全文

(1)

● 講義資料

▼ 講義予定

スツルムの二分法

収束の加速

● 前回の講義のまとめ

▼ ニュートン法について

• √

2

に代表される,代数方程式の解の近似値を求める方法として,以下のニュートン法が広く 知られている.

区間

[a, b]

上で定義された実数値

C 2 -級関数 f (x)

が, [a, b]上で単調増加かつ下に凸であり,

f (a) < 0, f (b) > 0

を満たしていると仮定する. この時,

x 0 = b, x n+1 = x n − f (x n )/f (x n )

により定義された数列

{ x n }

は,単調減少かつ下に有界であり, [a, b]上の

f (x) = 0

のただひ とつの解

α

に収束する. さらに,ある定数

M > 0

が存在して,

| x n +1 − α | ≤ M | x n − α | 2

が成り立つ.

ニュートン法は以下の「逐次近似」の一例と考えられる.

• F : R −→ R

C 2 -級関数とする.

この時,

x n+1 = F (x n )

によって数列

{ x n }

を定義して,写像

F

の固定点

(α = F (α)

を満たす点)を近似する方法を 逐次近似と呼ぶ.

関数

f (x)

に対するニュートン法

x n+1 = x n − f (x n )/f (x n )

は,

F(x) = x − f (x)/f (x)

定義した逐次近似である.

• R

のある近傍

U

と正定数

L < 1

が存在して,任意の

x, y ∈ U

に対して

| F (x) − F (y) | ≤ L | x − y |

を満たすとき,

F

U

上で縮小写像であると言う.

• C 2 -級関数 F : R −→ R

が,

U ⊂ R

上で縮小写像であるとき,

F

U

にただひとつの固定点 を持つ(縮小写像の原理).

証明は,

x 0 ∈ U , x n +1 = F (x n )

で定義した点列

{ x n }

がコーシー列となることを示し,その 収束先が固定点となることを示せばよい.

• C 2 -級関数 F : R −→ R

に対する逐次近似

x n +1 = F (x n )

の固定点

α

があらかじめわかって いる時を考える. この時,

| F (α) | < 1

が成り立てば,

α

の近傍で

F

は縮小写像となる. 特に,

(2)

逐次近似

x n+1 = F (x n )

α

に収束すると仮定する. この時,

ǫ n = | x n − α |

ǫ n+1 ≤ | F (α) | ǫ n + 1

2 | F ′′ (α) | ǫ 2 n + O(ǫ 3 n )

をみたす. 証明は,

α

F

を3次までテイラー展開して計算すればよい.

ニュートン法の収束の速さは,

f (x) = 0

の解が単根のとき,

ǫ n+1 ≤ Cǫ 2 n

をみたし,

m

重根の時

ǫ n +1 ≤ m − 1 m ǫ n

をみたす.

証明は,

F (x) = x − f (x)/f (x)

と考え,上の結果を適用すればよい.

この結果から,ニュートン法は,解が単根の時と重根の時とでは,その収束の様子が質的に異 ることがわかる.

さらに,ニュートン法の収束の判定には,次の結果を用いることができる.

1.

ある値

α

の近似列

{ x n }

| α − x n+1 | ≤ C | α − x n | 2

を満たしていると仮定する. この時, 任意の

0 < C < 1

に対して,

| x n+1 − x n | < Cǫ | x n |

が成り立つならば,

| α − x n | < ǫ | α |

が成り立つ.

2.

ある値

α

の近似列

{ x n }

が, ある

0 < L < 1

が存在して,

| α − x n+1 | ≤ L | α − x n |

を満たしていると仮定する. この時,

| x n +1 − x n | < (1 − L)ǫ | x n |

が成り立つならば,

| α − x n | < ǫ | α |

が成り立つ.

たとえば,ニュートン法の単根の場合には,収束の判定条件として,

| x n+1 − x n | > ǫ | x n |

が成 り立つ間,繰り返しを続ける」と書けば,そのループから脱出した時点では,

| x n+1 − x n | < ǫ | x n |

が成り立っているので,近似値

x n+1

は解

α

を相対誤差

ǫ

で近似していると考えてよいこと がわかる.

(3)

▼ その他の求根アルゴリズム

初回に解説した二分法と今回のニュートン法のほかに,簡単な求根アルゴリズムとしては, 下のものが知られている.

以下では, 関数

f

は区間

[a, b]

上で定義された, 単調増加関数であり,

f (a) < 0, f (b) > 0

仮定する. また,区間

[a, b]

における

f (x) = 0

の一意的な解を

α

とする.

「はさみうち法」などと呼ばれる方法.

二分法では,繰り返しの際に

c n = (a n + b n )/2

における

f (c n )

の値の正負によって, 間を取り替えていた.

これを

(a n , f(a n )), (b n , f(b n ))

を結ぶ直線と

x

軸との交点を

c n

とおいて,

f (c n )

の値 の正負によって区間を取り替える方法である.

二分法と同じく,「一次収束」する.

二分法と同じく, 任意の

n

に対して,

α ∈ [a n , b n ]

が成り立つ. したがって,求めた近似 値の精度保証が容易である.

「割線法」

関数

f

が区間

[a, b]

で下に凸であると仮定できるとき,ニュートン法で「接線」を取った

代わりに, (x

n , f (x n )), (x n +1 , f (x n +1 ))

を通る直線と

x

軸の交点を

x n +2

とおく方法.

収束の次数は

(1 + √

5)/2

となる. (ニュートン法よりも収束が遅い)

関数の微分

f

が複雑な式になっている場合や,

f

を数値的にしか求めることができな い場合には,ニュートン法よりも誤差を小さくできる可能性がある.

(4)

● 講義資料

▼ スツルム列の定義とスツルムの定理

区間

[a, b]

で定義された, deg

f k > deg f k+1

をみたす多項式の列

{ f k } n k =0

Strume

列をなす とは,

1.

任意の

x ∈ [a, b]

に対して,

f k (x)

f k+1 (x)

は同時には

0

にならない.

2. f k (x 0 ) = 0

ならば

f k − 1 (x 0 )f k+1 (x 0 ) < 0, 3. f n

は定符号,

4. f 0

は重根を持たない(f

0 (x) = 0

ならば

f 0 (x)f 1 (x) > 0

をみたす)

ことを言う.

区間

[a, b]

上で定義された多項式列

{ f k } n k=0

がスツルム列をなし,

f 0 (a)f 0 (b) 6 = 0

であると仮定 する. このとき,

f 0 (x), f 1 (x), . . . , f n (x)

の符号変化の回数を

N (x)

とおくと,区間

[a, b]

における

f 0 (x)

の根の個数は

N(a) − N (b)

に等し い. これをスツルムの定理を呼ぶ.

▼ スツルム列の例

ルジャンドル多項式:

P n

(n + 1)P n+1 (x) = (2n + 1)xP n (x) − nP n 1 (x), P 0 (x) = 1, P 1 (x) = x, Z 1

− 1

P n (x)P m (x) dx = C n δ nm

第1種チェビシェフ多項式:

T n

T n+1 (x) = 2xT n (x) − T n 1 (x), T 0 (x) = 1, T 1 (x) = x, Z 1

− 1

T n (x)T m (x) dx

√ 1 − x 2 = C n δ nm , T n (cos(t)) = cos(nt),

第2種チェビシェフ多項式:

U n

(5)

エルミート多項式:

H n

H n +1 (x) = 2xH n (x) − 2nH n 1 (x), H 0 (x) = 1, H 1 (x) = 2x, Z

R

H n (x)H m (x)e x

2

dx = C n δ nm , U n 1 (cos(t)) = sin(nt)

sin(t) ,

任意の多項式

f

に対して,

f 0 = f , f 1 = f

とおき,ユークリッドの互除法

f k = g k f k+1 − f k+2

で作られる列

{ f k } n k=0

は,

f n

0

でない定数である時,スツルム列をなす.

-1 -0.5 0 0.5 1

-1 -0.5 0 0.5 1

Legendre Polynomial (n=0...4)

-2 -1 0 1 2

-1 -0.5 0 0.5 1

Chebyshev Polynomial of 1st kind (n=0...4)

-2 -1 0 1 2

-1 -0.5 0 0.5 1

Chebyshev Polynomial of 2nd kind (n=0...4)

P 11 (x)

の零点:

+0.9782286581461, +0.8870625997681, +0.7301520055740, +0.5190961292068, +0.2695431559523,

+0.0000000000000,

− 0.2695431559523, − 0.5190961292068,

− 0.7301520055741, − 0.8870625997681, − 0.9782286581461.

(6)

▼ 収束の加速

次の図は,単位円に接する正多角形の周長による円周率の近似計算を, Romberg加速と

Aitken

加速を使って加速した例である.

1e-16 1e-14 1e-12 1e-10 1e-08 1e-06 0.0001 0.01 1

10 100 1000 10000 100000 1e+06 1e+07 1e+08 1e+09

original 1 step 2 step Aitken

次の図は, 単位円に接する正多角形の周長による円周率の近似計算を, Romberg加速を用いて計算 している例であり,

λ

の値を正しい値から取り替えて計算した例である.

1e-14 1e-12 1e-10 1e-08 1e-06 0.0001 0.01

10 100 1000 10000 100000 1e+06 1e+07 1e+08 1e+09

original 0.25 0.245 0.255 0.24 0.26 0.20 0.30

次の図は, arctan(x)の近似値のテイラー展開による近似計算を, Aitken 加速を使って加速した例 である.

0.0001 0.01 1

original x=1.00 Aitken x=1.00 original x = 0.99 Aitken x = 0.99 original x = 0.90 Aitken x = 0.90

(7)

● 実習内容

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

1.

(★★★)単位円に接する多角形の周長による円周率の近似計算を

Romberg

加速によって 計算しなさい. (この資料の最初の図のような図を書きなさい)

2.

(★★★)単位円に接する多角形の周長による円周率の近似計算を2段階の

Romberg

加速 によって計算しなさい. (この資料の最初の図のような図を書きなさい)

3.

(★★★)単位円に接する多角形の周長による円周率の近似計算を

Aitlen

加速によって計算 しなさい. (この資料の最初の図のような図を書きなさい)

4.

(★★★)テイラー展開による

arctan(1), arctan(0.99)

の近似値の計算を

Aitlen

加速によっ て計算しなさい. (この資料の2つめの図のような図を書きなさい)

5.

(★★)f

(x) = (x 2 − 2) k

に対するニュートン法による

2

の近似計算を, Aitken 加速に よって計算しなさい.

6.

(★★†)f

(x) = (x 2 − 2) k

に対するニュートン法による

2

の近似計算を,

k ≥ 2

の時に

Romberg

加速によって計算しなさい.

7.

(★★)ルジャンドル多項式,第1種チェビシェフ多項式,第2種チェビシェフ多項式の

n = 5

までのグラフを描画しなさい.

8.

(★)エルミート多項式の

n = 5

までのグラフを描画しなさい.

9.

(★★★)ルジャンドル多項式, 第1種チェビシェフ多項式, 第2種チェビシェフ多項式の

n = 20

までのすべての零点を求めなさい. これらの多項式の根は,すべて実であり, [

− 1, 1]

に存在することを仮定してよい.

10.

(★★††)エルミート多項式の

n = 10

までのすべての零点を求めなさい. エルミート多 項式の根は,すべて実であることを仮定してよい.

11.

(★†††)f

(x) = 144x 7 − 36x 6 − 196x 5 + 49x 4 + 56x 3 − 14x 2 − 4x + 1

のすべての零点 を求めなさい. この多項式の根は, すべて実であり, [

− 2, 2]

に存在することを仮定してよい.

この問題では,スツルム列を手で(または, Mathematicaなどで)計算しておき,係数を浮動 小数点数でかくとよい.

12.

(★†††††)f

(x) = 144x 8 + 252x 7 + 164x 6 − 19x 5 − 110x 4 − 19x 3 + 19x 2 + 2x − 1

すべての零点を求めなさい. この多項式のすべての根は, [

− 2, 2]

に存在することを仮定して よい.

参照

関連したドキュメント

本手順書は複数拠点をアグレッシブモードの IPsec-VPN を用いて FortiGate を VPN

、肩 かた 深 ふかさ を掛け合わせて、ある定数で 割り、積石数を算出する近似計算法が 使われるようになりました。この定数は船

手動のレバーを押して津波がどのようにして起きるかを観察 することができます。シミュレーターの前には、 「地図で見る日本

ダウンロードした書類は、 「MSP ゴシック、11ポイント」で記入で きるようになっています。字数制限がある書類は枠を広げず入力してく

彩度(P.100) 色の鮮やかさを 0 から 14 程度までの数値で表したもの。色味の

られる。デブリ粒子径に係る係数は,ベースケースでは MAAP 推奨範囲( ~ )の うちおよそ中間となる

自分ではおかしいと思って も、「自分の体は汚れてい るのではないか」「ひどい ことを周りの人にしたので