• Tidak ada hasil yang ditemukan

応用複素関数第 11 - 明治大学

N/A
N/A
Protected

Academic year: 2025

Membagikan "応用複素関数第 11 - 明治大学"

Copied!
53
0
0

Teks penuh

(1)

応用複素関数 第 11 回

〜 数値積分 (1)〜

かつらだ

桂田 祐史ま さ し

2021年6月29日

(2)

目次

1 本日の内容・連絡事項

2 数値積分

はじめに

次元ごとに方法を変える 脱線: Weylの定理 1次元の公式 概観 補間型数値積分公式

補間多項式

等間隔標本点による補間型数値積分公式

Rungeの現象

よくある誤解 対処法

複合数値積分公式 数値実験例 不思議な好結果

(3)

本日の内容・連絡事項

今回から3回数値積分をテーマとする。今回はお話が主体 (あまり 理屈は出て来ない)で、気軽に聞けると思います。講義ノート [?]を 用意してあります。

数値積分について次回レポート課題3を発表する予定です。

期末レポート課題についても次回発表する予定です。

(4)

5 数値積分 5.1 はじめに

定積分I =

f(x)dx の値を数値計算で近似的に求めることを数値積 分 (numerical integration) という。

導関数を知っている関数を組み合わせた関数の導関数は(必ず)計算で きる。原理は簡単で、計算の効率を追求する話もある (自動微分

(automatic differentiation))

しかし積分の計算はしばしば難しい。それで数値積分の出番となる。

(5)

5 数値積分 5.1 はじめに

定積分I =

f(x)dx の値を数値計算で近似的に求めることを数値積 分 (numerical integration) という。

導関数を知っている関数を組み合わせた関数の導関数は(必ず)計算で きる。原理は簡単で、計算の効率を追求する話もある (自動微分

(automatic differentiation))

しかし積分の計算はしばしば難しい。それで数値積分の出番となる。

(6)

5.2 次元ごとに方法を変える

まず次元、すなわちRn n,あるいはf の変数の個数(x= (x1,· · ·,xn)n).

(1) 1次元の場合、色々優れた公式(後述)がある。

次元がとても低ければ、重複積分にして、これらの公式が使えるかもしれない。

(2) 高次元の場合、モンテ・カルロ法(Monte Carlo methods)くらいしかやりようが ない。

に一様分布する乱数x1,· · ·,xN を用いて

IN := 1 N

N

k=1

f(xk)×(Ωの体積)

I を推定する。f L2(Ω)という緩い仮定のもとで 推定値の標準偏差=O

( 1

N )

が知られている。つまり「誤差を1桁小さくするには、N 100倍にする」…ゾッ とするほど低効率?そもそも扱っている問題が違うので比較する方がおかしい。 (それなのに、n= 1,2の問題をモンテ・カルロ法の例として説明することが…)

(7)

5.2 次元ごとに方法を変える

まず次元、すなわちRn n,あるいはf の変数の個数(x= (x1,· · ·,xn)n).

(1) 1次元の場合、色々優れた公式(後述)がある。

次元がとても低ければ、重複積分にして、これらの公式が使えるかもしれない。

(2) 高次元の場合、モンテ・カルロ法(Monte Carlo methods)くらいしかやりようが ない。

に一様分布する乱数x1,· · ·,xN を用いて

IN := 1 N

N

k=1

f(xk)×(Ωの体積)

I を推定する。f L2(Ω)という緩い仮定のもとで 推定値の標準偏差=O

( 1

N )

が知られている。つまり「誤差を1桁小さくするには、N 100倍にする」…ゾッ とするほど低効率?そもそも扱っている問題が違うので比較する方がおかしい。 (それなのに、n= 1,2の問題をモンテ・カルロ法の例として説明することが…)

(8)

5.2 次元ごとに方法を変える

まず次元、すなわちRn n,あるいはf の変数の個数(x= (x1,· · ·,xn)n).

(1) 1次元の場合、色々優れた公式(後述)がある。

次元がとても低ければ、重複積分にして、これらの公式が使えるかもしれない。

(2) 高次元の場合、モンテ・カルロ法(Monte Carlo methods)くらいしかやりようが ない。

に一様分布する乱数x1,· · ·,xN を用いて

IN:= 1 N

N

k=1

f(xk)×(Ωの体積) I を推定する。f L2(Ω)という緩い仮定のもとで

推定値の標準偏差=O ( 1

N )

が知られている。つまり「誤差を 桁小さくするには、 倍にする」…

ゾッ とするほど低効率?そもそも扱っている問題が違うので比較する方がおかしい。 (それなのに、n= 1,2の問題をモンテ・カルロ法の例として説明することが…)

(9)

5.2 次元ごとに方法を変える

まず次元、すなわちRn n,あるいはf の変数の個数(x= (x1,· · ·,xn)n).

(1) 1次元の場合、色々優れた公式(後述)がある。

次元がとても低ければ、重複積分にして、これらの公式が使えるかもしれない。

(2) 高次元の場合、モンテ・カルロ法(Monte Carlo methods)くらいしかやりようが ない。

に一様分布する乱数x1,· · ·,xN を用いて

IN:= 1 N

N

k=1

f(xk)×(Ωの体積) I を推定する。f L2(Ω)という緩い仮定のもとで

推定値の標準偏差=O ( 1

N )

が知られている。つまり「誤差を1桁小さくするには、N 100倍にする」…ゾッ とするほど低効率?そもそも扱っている問題が違うので比較する方がおかしい。

(それなのに、n= 1,2の問題をモンテ・カルロ法の例として説明することが…)

(10)

5.2 次元ごとに方法を変える

まず次元、すなわちRn n,あるいはf の変数の個数(x= (x1,· · ·,xn)n).

(1) 1次元の場合、色々優れた公式(後述)がある。

次元がとても低ければ、重複積分にして、これらの公式が使えるかもしれない。

(2) 高次元の場合、モンテ・カルロ法(Monte Carlo methods)くらいしかやりようが ない。

に一様分布する乱数x1,· · ·,xN を用いて

IN:= 1 N

N

k=1

f(xk)×(Ωの体積) I を推定する。f L2(Ω)という緩い仮定のもとで

推定値の標準偏差=O ( 1

N )

が知られている。つまり「誤差を 桁小さくするには、 倍にする」…ゾッ

(11)

5.2 次元ごとに方法を変える

3 中間の次元、1次元の公式への帰着が難しい、モンテカルロ法の精度では不満足と いう場合、準モンテカルロ法(quasi-Monte Carlo methods),数論的数値積分法 杉原・室田[1]が参考になる。以下では、{x}x の小数部分を表す。

1 low-discrepancy sequences (超一様分布列)の利用

2 method of good lattice points (「優良格子点法」), E. Hlawka, N. M. Korobov

n4程度で使える(?)。Ω = [0,1]nのとき

IN= 1 N

N1

k=0

f({

kg1(N)/N} ,· · ·,{

kgn(N)/N}) .

gi(N) (i= 1,· · ·,n)は例えばフィボナッチ数列を用いて決める。

3 Haselgrove(Haselgrove [4], Sugihara-Murota [3]) IN= 1

N

N k=1

wq

(k N

)

f ({kα1},· · ·,{n}). ここでα1,. . .,αnQ1次独立な代数的無理数で

(2q+ 1)!

(12)

5.3 脱線 : Weyl の定理

定理 11.1 (Weylの定理)

1,α1,· · ·,αs がQ1次独立ならば、f ∈C([0,1]s) に対して

[0,1]s

f(x)dx = lim

N→∞

1 N

N k=1

f ({kα1},· · · ,{kαs}).

(この定理の証明をレポートするのはアリかも。Fourier解析的。)

(13)

5.3 脱線 : Weyl の定理

定理 11.1 (Weylの定理)

1,α1,· · ·,αs がQ1次独立ならば、f ∈C([0,1]s) に対して

[0,1]s

f(x)dx = lim

N→∞

1 N

N k=1

f ({kα1},· · · ,{kαs}). (この定理の証明をレポートするのはアリかも。Fourier解析的。)

(14)

5.4 1 次元の公式 概観

1次元の定積分

I =I(f) =

b

a

f(x)dx

に対しては、優秀な方法が色々ある。

1 補間型数値積分公式

被積分関数の補間多項式を用いる。

1 等間隔標本点(Newton-Cotesの公式(Newton-Cotes rules))

(以下では、定番の中点公式,台形公式, Simpson公式を紹介する。)

2 区間の端点近くで密な標本点

特に直交多項式の零点を標本点とするGauss型数値積分公 式 おまけへのLink

2 変数変換型数値積分公式

IMT公式,今回取り上げるDE公式(double exponential formula )

(15)

5.4 1 次元の公式 概観

1次元の定積分

I =I(f) =

b

a

f(x)dx

に対しては、優秀な方法が色々ある。

1 補間型数値積分公式

被積分関数の補間多項式を用いる。

1 等間隔標本点(Newton-Cotesの公式(Newton-Cotes rules))

(以下では、定番の中点公式,台形公式, Simpson公式を紹介する。)

2 区間の端点近くで密な標本点

特に直交多項式の零点を標本点とするGauss型数値積分公 式 おまけへのLink

2 変数変換型数値積分公式

IMT公式,今回取り上げるDE公式(double exponential formula )

(16)

5.4 1 次元の公式 概観

1次元の定積分

I =I(f) =

b

a

f(x)dx

に対しては、優秀な方法が色々ある。

1 補間型数値積分公式

被積分関数の補間多項式を用いる。

1 等間隔標本点(Newton-Cotesの公式(Newton-Cotes rules))

(以下では、定番の中点公式,台形公式, Simpson公式を紹介する。)

2 区間の端点近くで密な標本点

特に直交多項式の零点を標本点とするGauss型数値積分公 式 おまけへのLink

2 変数変換型数値積分公式

IMT公式,今回取り上げるDE公式(double exponential formula )

(17)

5.4 1 次元の公式 概観

1次元の定積分

I =I(f) =

b

a

f(x)dx

に対しては、優秀な方法が色々ある。

1 補間型数値積分公式

被積分関数の補間多項式を用いる。

1 等間隔標本点(Newton-Cotesの公式(Newton-Cotes rules))

(以下では、定番の中点公式,台形公式, Simpson公式を紹介する。)

2 区間の端点近くで密な標本点

特に直交多項式の零点を標本点とするGauss型数値積分公 式 おまけへのLink

2 変数変換型数値積分公式

IMT公式,今回取り上げるDE公式(double exponential formula )

(18)

5.5 補間型数値積分公式 5.5.1 補間多項式

(1) IN=IN(f) :=

b a

fN(x)dx.

ここでfNf の補間多項式、すなわち{xj}Nj=1 を標本点として

(2) fN(x)R[x], degfN(x)N1, fN(xj) =f(xj) (j = 1,· · ·,N).

φj (j= 1,· · ·,N)

φj(x)R[x], degφj(x)N1, φj(xk) =δjk (j,k = 1,· · ·,N) を満たす関数とするとき (これは一意的に存在する)

fN(x) =

N j=1

f(xj)φj(x) と書き換えられる。ゆえに

(3) IN=

N j=1

f(xj)wj, wj :=

b a

φj(x)dx.

wj は、{xj}で定まり、f にはよらないので、事前に求めておくことができる。

(19)

5.5 補間型数値積分公式 5.5.1 補間多項式

(1) IN=IN(f) :=

b a

fN(x)dx.

ここでfNf の補間多項式、すなわち{xj}Nj=1 を標本点として

(2) fN(x)R[x], degfN(x)N1, fN(xj) =f(xj) (j = 1,· · ·,N).

φj (j= 1,· · ·,N)

φj(x)R[x], degφj(x)N1, φj(xk) =δjk (j,k = 1,· · ·,N) を満たす関数とするとき (これは一意的に存在する)、

fN(x) =

N j=1

f(xj)φj(x) と書き換えられる。

ゆえに

(3) IN=

N j=1

f(xj)wj, wj :=

b a

φj(x)dx.

wj は、{xj}で定まり、f にはよらないので、事前に求めておくことができる。

(20)

5.5 補間型数値積分公式 5.5.1 補間多項式

(1) IN=IN(f) :=

b a

fN(x)dx.

ここでfNf の補間多項式、すなわち{xj}Nj=1 を標本点として

(2) fN(x)R[x], degfN(x)N1, fN(xj) =f(xj) (j = 1,· · ·,N).

φj (j= 1,· · ·,N)

φj(x)R[x], degφj(x)N1, φj(xk) =δjk (j,k = 1,· · ·,N) を満たす関数とするとき (これは一意的に存在する)、

fN(x) =

N j=1

f(xj)φj(x) と書き換えられる。ゆえに

(21)

5.5.2 等間隔標本点による補間型数値積分公式

N= 1の場合は中点公式(midpoint rule) I1=I1(f) =f

(a+b 2

)

h, h:=ba.

f を定数関数で近似している。f 1次多項式ならばI(f) =I1(f).

N= 2の場合は台形公式(trapezoidal rule) I2=I2(f) = h

2(f(a) +f(b)), h:=ba. f 1次関数で近似している。f 1次多項式ならばI(f) =I2(f). N= 3の場合はSimpson公式(Simpson’s rule)

I3=I3(f) = h 3

(

f(a) + 4f (a+b

2 )

+f(b) )

, h:=ba

2 . f 2次関数で近似している。f 3次多項式ならばI(f) =I3(f). N= 4の場合はSimpson38公式(Simpson’s 3/8 rule — 多分だれも使わない)

I4=I4(f) =3h 8

(

f(a) + 3f

(2a+b 3

) + 3f

(a+ 2b 3

) +f(b)

)

, h:= ba

3 . f 3次関数で近似している。f 3次多項式ならばI(f) =I4(f).

(22)

5.5.2 等間隔標本点による補間型数値積分公式

N= 1の場合は中点公式(midpoint rule) I1=I1(f) =f

(a+b 2

)

h, h:=ba.

f を定数関数で近似している。f 1次多項式ならばI(f) =I1(f).

N= 2の場合は台形公式(trapezoidal rule) I2=I2(f) = h

2(f(a) +f(b)), h:=ba.

f 1次関数で近似している。f 1次多項式ならばI(f) =I2(f).

N= 3の場合はSimpson公式(Simpson’s rule) I3=I3(f) = h

3 (

f(a) + 4f (a+b

2 )

+f(b) )

, h:=ba

2 . f 2次関数で近似している。f 3次多項式ならばI(f) =I3(f). N= 4の場合はSimpson38公式(Simpson’s 3/8 rule — 多分だれも使わない)

I4=I4(f) =3h 8

(

f(a) + 3f

(2a+b 3

) + 3f

(a+ 2b 3

) +f(b)

)

, h:= ba

3 . f 3次関数で近似している。f 3次多項式ならばI(f) =I4(f).

(23)

5.5.2 等間隔標本点による補間型数値積分公式

N= 1の場合は中点公式(midpoint rule) I1=I1(f) =f

(a+b 2

)

h, h:=ba.

f を定数関数で近似している。f 1次多項式ならばI(f) =I1(f).

N= 2の場合は台形公式(trapezoidal rule) I2=I2(f) = h

2(f(a) +f(b)), h:=ba.

f 1次関数で近似している。f 1次多項式ならばI(f) =I2(f).

N= 3の場合はSimpson公式(Simpson’s rule) I3=I3(f) = h

3 (

f(a) + 4f (a+b

2 )

+f(b) )

, h:=ba

2 . f 2次関数で近似している。f 3次多項式ならばI(f) =I3(f).

N= 4の場合はSimpson38公式(Simpson’s 3/8 rule — 多分だれも使わない) I4=I4(f) =3h

8 (

f(a) + 3f

(2a+b 3

) + 3f

(a+ 2b 3

) +f(b)

)

, h:= ba

3 . f 3次関数で近似している。f 3次多項式ならばI(f) =I4(f).

(24)

5.5.2 等間隔標本点による補間型数値積分公式

N= 1の場合は中点公式(midpoint rule) I1=I1(f) =f

(a+b 2

)

h, h:=ba.

f を定数関数で近似している。f 1次多項式ならばI(f) =I1(f).

N= 2の場合は台形公式(trapezoidal rule) I2=I2(f) = h

2(f(a) +f(b)), h:=ba.

f 1次関数で近似している。f 1次多項式ならばI(f) =I2(f).

N= 3の場合はSimpson公式(Simpson’s rule) I3=I3(f) = h

3 (

f(a) + 4f (a+b

2 )

+f(b) )

, h:=ba

2 . f 2次関数で近似している。f 3次多項式ならばI(f) =I3(f).

N= 4の場合はSimpson3公式(Simpson’s 3/8 rule — 多分だれも使わない)

(25)

5.6 Runge の現象 5.6.1 良くある誤解

N を大きくすると良い公式になる?

NO! Rungeの現象

I =

1

1

f(x)dx, f(x) = 1 1 + 25x2.

[1,1]を20等分した点を標本点にした場合(N = 21)、補間多項式f21 のグラフを見ると、区間の端点近くで暴れている。

-1 -0.5 0 0.5 1

-1 -0.5 0 0.5 1

"runge.data" f(x)=1/(1+25*x2)

-10 -5 0 5 10

-1 -0.5 0 0.5 1

"runge.data" f(x)=1/(1+25*x*x)

f21f とは似ても似つかない。N を大きくするともっとひどくなる。

(26)

5.6 Runge の現象 5.6.1 良くある誤解

N を大きくすると良い公式になる?NO!

Rungeの現象

I =

1

1

f(x)dx, f(x) = 1 1 + 25x2.

[1,1]を20等分した点を標本点にした場合(N = 21)、補間多項式f21 のグラフを見ると、区間の端点近くで暴れている。

-1 -0.5 0 0.5 1

-1 -0.5 0 0.5 1

"runge.data" f(x)=1/(1+25*x2)

-10 -5 0 5 10

-1 -0.5 0 0.5 1

"runge.data" f(x)=1/(1+25*x*x)

f21f とは似ても似つかない。N を大きくするともっとひどくなる。

(27)

5.6 Runge の現象 5.6.1 良くある誤解

N を大きくすると良い公式になる?NO!

Rungeの現象

I =

1

1

f(x)dx, f(x) = 1 1 + 25x2.

[1,1]を20等分した点を標本点にした場合(N = 21)、補間多項式f21 のグラフを見ると、区間の端点近くで暴れている。

-1 -0.5 0 0.5 1

-1 -0.5 0 0.5 1

"runge.data"

f(x)=1/(1+25*x2)

-10 -5 0 5 10

-1 -0.5 0 0.5 1

"runge.data"

f(x)=1/(1+25*x*x)

(28)

5.6 Runge の現象 5.6.2 対処法

大きく分けて2つの対処法がある。

(a) 区間を小区間に分割し、小区間で次数が低い多項式を用いる。   (区間全体で1つの補間多項式を使うことはあきらめる)

あちこちで顔を出す。 スプライン近似

有限要素法の有限要素空間(近似解、試験関数の属する空間) 数値積分の複合数値積分公式

(b) 直交多項式の根を標本点とする補間多項式を利用する。 (直交多項式の根は、区間の端点の近くに密集している。)

Gauss型数値積分公式

n次の公式で、2n1 次の多項式の積分を誤差なく計算できる。

(29)

5.6 Runge の現象 5.6.2 対処法

大きく分けて2つの対処法がある。

(a) 区間を小区間に分割し、小区間で次数が低い多項式を用いる。  

(区間全体で1つの補間多項式を使うことはあきらめる)。 あちこちで顔を出す。

スプライン近似

有限要素法の有限要素空間(近似解、試験関数の属する空間) 数値積分の複合数値積分公式

(b) 直交多項式の根を標本点とする補間多項式を利用する。 (直交多項式の根は、区間の端点の近くに密集している。)

Gauss型数値積分公式

n次の公式で、2n1 次の多項式の積分を誤差なく計算できる。

(30)

5.6 Runge の現象 5.6.2 対処法

大きく分けて2つの対処法がある。

(a) 区間を小区間に分割し、小区間で次数が低い多項式を用いる。  

(区間全体で1つの補間多項式を使うことはあきらめる)。 あちこちで顔を出す。

スプライン近似

有限要素法の有限要素空間(近似解、試験関数の属する空間) 数値積分の複合数値積分公式

(b) 直交多項式の根を標本点とする補間多項式を利用する。

(直交多項式の根は、区間の端点の近くに密集している。) Gauss型数値積分公式

n次の公式で、2n1 次の多項式の積分を誤差なく計算できる。

(31)

5.7 複合数値積分公式

複合中点公式([a,b]N 等分して、各小区間で中点公式を用いる。)

(4) MN:=h

N j=1

f (

a+j1 2 h

)

, h:=ba N .

複合台形公式([a,b]N 等分して、各小区間で台形公式を用いる。) (5) TN :=h

1 2f(a) +

N1 j=1

f(a+jh) +1 2f(b)

, h:= ba N .

複合Simpson公式([a,b]m等分して、[aj,bj]Simpson公式を使う。) S2m= h

3

f(a) + 2

m1 j=1

f(a+ 2jh) + 4

m j=1

f(a+ (2j1)h) +f(b)

, (6)

h:= ba 2m .

普通は「複合」を省略して、それぞれ単に「中点公式」、「台形公式」、

(32)

5.8 数値実験例

C言語によるサンプル・プログラムを用意した。次のようにしてネット経由で ダウンロードしてコンパイル&実行してみよう。

Macのターミナルで以下の4つのコマンドを実行

curl -O http://nalab.mind.meiji.ac.jp/~mk/complex2/prog20210629.tar.gz tar xzf prog20210629.tar.gz

cd prog20210629

make

(1) curl -O URL は、ファイルをインターネット経由で入手するコマンド。

(2) .tar.gzは、tarで複数のファイルを1つのアーカイブ・ファイルにまと め、gzipで圧縮したファイルの拡張子である。復元するには

tar xzf ファイル名 とする。

(3) prog20210629というディレクトリィが現れるので、そこにcd (change directory)する。

(33)

5.8 数値実験例 数値積分公式のコード

/* nc.c --- Newton-Cotesの積分公式:中点公式,台形公式, Simpson公式*/

typedef double ddfunction(double);

/*関数f[a,b]における積分の複合中点公式による数値積分M_N */

double midpoint(ddfunction f, double a, double b, int N) {

int j;

double h = (b - a) / N, M = 0.0;

for (j = 1; j <= N; j++) M += f(a + (j - 0.5) * h);

M *= h;

return M;

}

/*関数f[a,b]における積分の複合台形公式による数値積分T_N */

double trapezoidal(ddfunction f, double a, double b, int N) {

int j;

double h = (b - a) / N, T = (f(a) + f(b)) / 2;

for (j = 1; j < N; j++) T += f(a + j * h);

T *= h;

return T;

}

/*関数f[a,b]における積分の複合Simpson公式による数値積分S_{N} */

double simpson(ddfunction f, double a, double b, int N) {

int m = N / 2;

return (trapezoidal(f, a, b, m) + 2 * midpoint(f, a, b, m)) / 3;

(34)

5.8 数値実験例

滑らかな関数の場合

I =

1

0

ex dx を中点公式,台形公式, Simpson公式で計算すると

10-16 10-14 10-12 10-10 10-8 10-6 10-4 10-2

100 101 102 103 104 105

ex2: numerical integration for exp(x) midpoint rule trapezoidal rule Simpson rule

1:横軸はN= 2,4,· · ·,216 = 65536;縦軸は誤差(両軸とも対数目盛)

(35)

用語紹介 (m 位の公式 ) と余談

数値積分公式がm 位の公式(m次の精度) であるとは、関数f の数値 積分公式の誤差を E(f) と書くとき

E(xk) = 0 (k = 0,1,· · · ,m), E(xm+1)̸= 0

が成り立つことをいう。(m次多項式の積分が誤差なく計算できる。)

滑らかな関数の定積分をm 位の数値積分公式で計算したときの誤差 は、O( 1

Nm+1

) となる。

実は、中点公式(N= 1)と台形公式(N = 2)は、ともに1位の公式で、 Simpson公式(N= 3)は3位の公式である。

(一般化できて) N 個の標本点を使うN−1 次の補間多項式で作った数 値積分公式は、少なくともN−1位であるが、実はNが奇数のときはN 位の公式である(1位分お得)

(36)

用語紹介 (m 位の公式 ) と余談

数値積分公式がm 位の公式(m次の精度) であるとは、関数f の数値 積分公式の誤差を E(f) と書くとき

E(xk) = 0 (k = 0,1,· · · ,m), E(xm+1)̸= 0

が成り立つことをいう。(m次多項式の積分が誤差なく計算できる。) 滑らかな関数の定積分をm 位の数値積分公式で計算したときの誤差 は、O( 1

Nm+1

)となる。

実は、中点公式(N= 1)と台形公式(N = 2)は、ともに1位の公式で、 Simpson公式(N= 3)は3位の公式である。

(一般化できて) N 個の標本点を使うN−1 次の補間多項式で作った数 値積分公式は、少なくともN−1位であるが、実はNが奇数のときはN 位の公式である(1位分お得)

(37)

用語紹介 (m 位の公式 ) と余談

数値積分公式がm 位の公式(m次の精度) であるとは、関数f の数値 積分公式の誤差を E(f) と書くとき

E(xk) = 0 (k = 0,1,· · · ,m), E(xm+1)̸= 0

が成り立つことをいう。(m次多項式の積分が誤差なく計算できる。) 滑らかな関数の定積分をm 位の数値積分公式で計算したときの誤差 は、O( 1

Nm+1

)となる。

実は、中点公式(N= 1)と台形公式(N = 2)は、ともに1位の公式で、

Simpson公式(N= 3)は3位の公式である。

(一般化できて) N 個の標本点を使うN−1 次の補間多項式で作った数 値積分公式は、少なくともN−1位であるが、実はNが奇数のときはN 位の公式である(1位分お得)

(38)

用語紹介 (m 位の公式 ) と余談

数値積分公式がm 位の公式(m次の精度) であるとは、関数f の数値 積分公式の誤差を E(f) と書くとき

E(xk) = 0 (k = 0,1,· · · ,m), E(xm+1)̸= 0

が成り立つことをいう。(m次多項式の積分が誤差なく計算できる。) 滑らかな関数の定積分をm 位の数値積分公式で計算したときの誤差 は、O( 1

Nm+1

)となる。

実は、中点公式(N= 1)と台形公式(N = 2)は、ともに1位の公式で、

Simpson公式(N= 3)は3位の公式である。

(一般化できて) N 個の標本点を使うN−1 次の補間多項式で作った数

(39)

5.8 数値実験例  滑らかでない関数の場合

I =

1 0

1−x2 dx を中点公式,台形公式, Simpson公式で計算すると

10-9 10-8 10-7 10-6 10-5 10-4 10-3 10-2 10-1 100

100 101 102 103 104 105

ex3: numerical integration for sqrt(1-x2) midpoint rule trapezoidal rule Simpson rule

連続ではあるが、滑らかではない関数 (実際x= 1 で微分可能でない)に対し ては、誤差は Nの増加とともに減少する(0に近く)が、滑らかな被積分関数の 場合と比べると遅い。

また、中点公式,台形公式, Simpson公式で差が出ない。高次の公式の優位性

はない(こういう結果は割と一般的に見られる)。

(40)

5.8 数値実験例  滑らかでない関数の場合

I =

1 0

1−x2 dx を中点公式,台形公式, Simpson公式で計算すると

10-9 10-8 10-7 10-6 10-5 10-4 10-3 10-2 10-1 100

100 101 102 103 104 105

ex3: numerical integration for sqrt(1-x2) midpoint rule trapezoidal rule Simpson rule

連続ではあるが、滑らかではない関数 (実際x= 1 で微分可能でない)に対し ては、誤差は Nの増加とともに減少する(0に近く)が、滑らかな被積分関数の

(41)

5.8 数値実験例 滑らかな関数 vs 滑らかなでない関数

10-16 10-14 10-12 10-10 10-8 10-6 10-4 10-2

100 101 102 103 104 105

ex2: numerical integration for exp(x) midpoint rule trapezoidal rule Simpson rule

10-9 10-8 10-7 10-6

Referensi

Dokumen terkait

3.14.3 同じ強さ反対向きの渦の対 等しい強さを持ち、回転の向きが反対の点渦をz =a,−aに置いて重ね 合わせた流れの複素速度ポテンシャルは fz :=iκlogz−a z+a... 3.14.5 2 重湧き出し doublet 同じ強さの湧き出し・吸い込み対の流れの複素速度ポテンシャルは fz

2 重湧き出し doublet 続き Fz :=−µz の定める流れの等ポテンシャル線は、実軸上に中心を持ち 原点を通る円、または虚軸 原点を除く である。 一方、流線は、虚軸上に中心を持ち原点を通る円または実軸原点を除 く である。 Figure: 二重湧き出し同じ強さの湧き出し・吸い込みの極限 かつらだまさし... 円柱を過ぎる一様流 続き

目次 1 本日の内容・連絡事項 2 佐藤の超函数 初めに— 超関数超入門 超関数前史— デルタ関数怪しい、しかし役に立つ Heaviside Dirac 二つの超関数論 Schwartzのdistribution 役に立つならば正当化してみせよう 佐藤幹夫のhyperfunction 佐藤超函数の定義のようなもの 佐藤超函数の演算 導関数

3.2.1 半分スルーして良いイントロ 冪級数の微分・積分を扱うのに、単なる各点収束では不十分である。一様収束が便利。 以下スルー可能 参考関数論である程度話が進むと、「広義一様収束まだ紹介していないが便利」と 分かって、冪級数の項別積分、項別微分も、次のように理解できる。 a 冪級数は収束円で広義一様収束する。—比較的簡単 b

8.3 Green の定理が成り立つ領域での Cauchy の積分公式 円盤におけるCauchyの積分公式は証明してあるが、次の定理はいっそう便利である。 定理 21.4 Green の公式が成り立つ領域での Cauchy の積分公式 D はCの領域で、R2の領域と同一視したとき、Greenの公式が成り立つ領域である

5.11.5 台形公式 Ih,N の誤差解析 — DE 公式に向けて 実際の数値計算では、Ih を有限和で置き換えたIh,N を使わざるを得ない。その場合 は、関数f の遠方での減衰の具合が問題となる。 そこで遠方での減衰の具合の物差しとなるような正則関数w:Dd→Cを固定して、 |fz| ≤定数|wz|z∈ Ddを満たすf について考える。 定理 13.2

は冪級数であるそうみなせるが、収束半径が1 であることを示せ。 d’Alembert の公式は使えないが、素朴に考えれば案外やさしい今の場合、収束半径= 1 が提示されているの で考えやすい。もちろんCauchy-Hadamardの公式lim sup n→∞ √n |an|= 1 ρ を使っても良い。その場合、上極限を

2.10 1 次分数変換の鏡像の原理 1 鏡像の位置 Cb の円は1次分数変換でCbの円に写ることを示したが、円上にない点 についても、注目すべき性質が成り立つ。 定義 円に関して鏡像の位置 C はCb の円であり、z,z′ ∈Cb とする。zとz′がC に関して互いに鏡 像の位置にあるz とz′ がC に関して対称である とは,次のa, b