数値解析と複素関数論 (4)
数値積分：周期関数に対する台形則
緒方 秀教
電気通信大学

大学院情報理工学研究科 情報・ネットワーク工学専攻

2020 年 12 月 17 日（木）緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則はじめに数値積分の台形則．
数値積分則としては最も素朴なものである．
しかし，次の積分に対しては非常に有効である．
周期関数である解析関数の一周期区間積分．
解析関数の全無限区間積分．
今回は，周期関数である解析関数に対して何故台形則は有効か，複素関数論の手法で解明します．

緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則

台形則による数値積分
台形則

Z baf (x)dx ≃ h()
N−1X
1f (a) +f (a + kh) + f (b)2k=1

b−ah=N.

積分 ≃ 台形の面積の和．
緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則

数値例：台形則
Z 1πdx= = 1.57079 63267 94897 . . .
22−1 1 + x

この積分を台形則で近似計算した（倍精度演算）．

N

積分値（台形則）

相対誤差

48163264128
2565121024

1.55000 00000 00000
1.56558 82352 94118
1.56949 42472 45545
1.57047 08060 20695
1.57071 49465 87487
1.57077 59817 42827
1.57079 12405 31876
1.57079 50552 29142
1.57079 600890 3456

1 × 10−2
3 × 10−38 × 10−4
2 × 10−4
5 × 10−5
1 × 10−5
3 × 10−68 × 10−72 × 10−7
まあ，こんなものかなぁ…

緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則

数値例：周期関数に対して台形則は有効である
台形則は周期関数の積分に対して有効である．

緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則

数値例：周期関数に対して台形則は有効である
台形則は周期関数の積分に対して有効である．
（例）第 1 種完全楕円積分．

Z π/20Ndθp
1 − κ2 sin2 θ
κ=481632
厳密値( 0 < κ < 1 ).

√ 積分値（台形則）
0.5
κ = 0.9

1.85407 52277 67308
1.85407 46773 01667
1.85407 46773 01372
1.85407 46773 01372
1.85407 46773 01372

2.28107 69934 49628
2.28054 93522 99722
2.28054 91384 22819
2.28054 91384 22770
2.28054 91384 22770

収束が断然速い．

緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則今日の目標定理：周期関数積分に対する台形則の指数関数的収束

f (z) は周期関数（周期 α）である．
f (z) は実軸全体を含む複素領域で解析関数である．
f (x) の一周期区間積分に対する台形則
Z α0f (x)dx ≃ h()
N−1X
11f (kh) + f (Nh)f (0) +22k=1h=α Nに対し，| 誤差 | ≤ C exp(−cN)( C , c > 0 : const. ).

今回はこの定理を複素関数論的手法により導出する．

緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則(Step 1/3) 台形則の複素積分表示
周期関数 f (x)（周期 α）の一周期区間積分に対する台形則．
)(Z αN−1X1α 1.
f (kh) + f (Nh)f (0) +h=I ≡f (x)dx ≃ IN ≡ h22N0
k=1

定理：台形則の複素積分表示

f (z) は実軸全体を含む領域 D で解析関数である．
f (z) は周期関数である（周期 α）．
I1
IN =f (z)Ψh (z)dz,2πi C πz 
Ψh (z) = π cot,hC : 領域 D に含まれ，点 0, h, . . . , (N − 1)h を反時計回りに囲む閉積分路．
緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則(Step 1/3) 台形則の複素積分表示（定理の証明）

J≡12πiIf (z)Ψh (z)dz,
 πz .
Ψh (z) = π cothC

被積分関数 f (z)Ψh (z) は C およびその内部において，1 位の極0, h, . . . , (N − 1)h を除いて解析的である．よって，留数定理より

J=

N−1
X

Res(f Ψh , kh).

k=0

Res(f Ψh , kh) = lim (z − kh)f (z)π cothcos(πz/h)= πf (kh) lim= hf (kh).
z→kh {sin(πz/h)}′()N−1
N−1XX11f (kh) + f (Nh) = IN .
f (kh) = hf (0) +J=h22k=1k=0z→kh∴ πz 

緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則(Step 2/3) 台形則の誤差の複素積分表示
今度は，誤差 I − IN の複素積分表示を求める．

I =

Z (N−1/2)hf (x)dx−h/2

1=2Z

C++Z

C−!

f (z)dz,

緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則(Step 2/3) 台形則の誤差の複素積分表示
今度は，誤差 I − IN の複素積分表示を求める．

I =

Z (N−1/2)hf (x)dx−h/2

1=2Z+

IN =

12πiI

Z

C−C+!

f (z)dz,f (z)Ψh (z)dz,

Ψh (z) = π cot−C+ +C− πz hとの差をとって，定理：誤差の複素積分表示

1I − IN =2πiΦh (z) = −πI

f (z)Φh (z)dz,−C+ +C−exp(±iπz/h)sin(πz/h)
緒方秀教( ± Im z > 0 ).

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則(Step 2/3) 台形則の誤差の複素積分表示
f (z) は帯状領域 | Im z| ≤ d で解析関数であると仮定する．
Cauchy の積分定理により複素積分路を図のように長方形状に変形する．
1I − IN =2πiΦh (z) = −πZ

C++Z

C−!

f (z)Φh (z)dz,exp(±iNπz/α)
exp(±iπz/h)= −πsin(πz/h)sin(Nπz/α)

± Im z > 0; h =α .
Nf (z)Φh (z) は周期 α の周期関数なので，赤線，青線の寄与は打ち消し合う．
緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則(Step 2/3) 台形則の誤差の複素積分表示
誤差の複素積分表示は，実軸に平行な積分路 Γ± : Im z = ±d の寄与だけが残る．
Z !
Z1f (z)Φh (z)dz,+I − IN =2πiΓ−Γ+Φh (z) = −πexp(±iπz/h)sin(πz/h)

緒方秀教( ± Im z > 0 ) .

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則(Step 3/3) 台形則の誤差評価
複素積分の大きさを見積もることにより理論誤差評価を行う．
Z !
Z1|f (z)||Φh (z)||dz|,+|I − IN | ≤2πΓ−Γ+Φh (z) = −πexp(±iπz/h)sin(πz/h)( ± Im z > 0 ) .

Γ± ( | Im z| = d ) 上での |Φh (z)| の評価．

2πe−2πd/h2πde±iπz/h.
=≃ 2π exp −|Φh (z)| ≤ 2π iπz/hhe− e−iπz/h
1 − e−2πd/h

緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則

台形則の理論誤差評価
定理：台形則の指数関数的収束

f (z) は | Im z| ≤ d を含む領域 D で解析関数である．

f (z) は周期関数である（周期 α）．

2πd2πd|I − IN | . 2αkf kd exp −= 2αkf kd exp −N ,hαkf kd ≡ max |f (z)|.
| Im z|=d

誤差 = O [exp(−const. × N)] .
周期解析関数の一周期区間積分に対して，台形則は指数関数的収束する．
緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則なぜ台形則は周期関数の積分に強いのか？
誤差の積分表示は，実軸に平行な積分路 Γ± : Im z = ±d の寄与だけが残る．
Z !
Z
1f (z)Φh (z)dz,+I − IN =2πiΓ−Γ+f (x) の周期性により端点近傍の積分路の寄与は消える．
2πd| Im z| = d で |Φh (z)| ≃ 2π exp −.
h緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則

数値例：第 1 種完全楕円積分

Z π/2Zdθ1 π/2dθpp=(0<κ<1)2220−π/21 − κ sin θ1 − κ2 sin2 θ()
N−1X
h 1
1f (−Nh) +f (kh) + f (Nh)
（2N + 1 点台形則）≃2 22
k=−N+1()N−1X
11=hf (0) +f (kh) + f (Nh) =: KN (κ),
22K (κ) =k=1

h=π,2N1.
f (θ) = p1 − κ2 sin2 θf (θ) は周期関数（周期 π ）である．
√f (θ) は | Im θ| < log(κ−1 + κ−2 − 1) において解析関数である．
緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則

数値例：第 1 種完全楕円積分
理論誤差評価から，|K (κ) − KN (κ)| . C (κ−1 −これを数値実験結果と比較する．

緒方秀教p
κ−2 − 1)4N

( C : const. ).

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則

数値例：第 1 種完全楕円積分
理論誤差評価から，|K (κ) − KN (κ)| . C (κ−1 −これを数値実験結果と比較する．
1( C : const. ).

1/2

kappa=0.5
kappa=0.9

0.01
0.0001
relative errorpκ−2 − 1)4N

誤差

κ

1x10-6

実験

1x10-8

√

-10

1x10

0.5
0.9-12

1x10-141x10

理論
NO(0.0257 )O(0.134N )O(0.0294N )O(0.154N )-161x104681012N14161820

理論誤差評価は数値実験結果とよく符合する．

緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則

まとめ

台形則は周期関数である解析関数の一周期区間積分に有効である．
複素関数論による理論誤差評価→指数関数的収束．
理論誤差評価は数値実験結果とよく符合する．
次回以降台形則は解析関数の全無限区間積分に対して有効である．
変数変換による数値積分，DE 公式．

緒方秀教

数値解析と複素関数論 (4) 数値積分：周期関数に対する台形則