二重指数関数型数値積分公式の理論と発展
大浦拓哉

変数変換型積分公式の変数変換の例(−1, 1) 区間を (−∞, ∞) 区間にする変換変換の例
tanh 則（一重指数関数型公式、略して SE 公式）：
2ϕtanh(t) = tanh t = −1 +1 + e−2terf 則：∫t22−uϕerf (t) = erf t = √edu
π 0tanh-sinh 則（二重指数関数型公式、略して DE 公式）：(πsinh t
ϕDE(t) = tanh2)1

DE 公式の特徴
・標本点が {ϕ(nh)}, 重みが {hϕ0(nh)} となる
すなわち、ガウス型とは異なり標本点と重みが陽的に与えられる
さらに少しの考察で、指数関数をメインループから省くことができて高速計算が可能
・広義積分が計算可能∫ 11
例えば√ dx が計算可能x0・高精度計算が容易にできる
標本数 N = N+ + N− + 1 に対して刻み幅を h = O(log N/N ) と選べば誤差は O(exp(−cN/ log N )) で急激に減少
2

DE 公式発見の背景
変数変換型公式 : 変数変換と既存の積分則との組み合わせ
背景・台形則が解析的全無限区間積分に対して高性能となること
・誤差の特性関数を用いることで任意の積分公式に関する性能を可視化
・最適な変数変換の導出の際に数値実験を行う（のちに杉原によって厳密化）

3誤差の特性関数∫ bN∑

I

1f (x)dx −f (an)wn =f (z)Φ(z)dz,2πia
Cn=1N
∑
z−awn
Φ(z) = log−z − b n=1 z − an・任意の積分公式の誤差が等式で書ける
・|Φ(z)| の複素領域での減少度で積分公式の性能がわかる

4誤差の特性関数からわかること 1∫ 1

例:

1dx
22−1 x + a↓ 25 点シンプソン則
・a = 1 のとき誤差 10−7・a = 4 のとき誤差 10−8etc.

5誤差の特性関数からわかること 2
誤差の減少率:∂− log |Φ(x + iy)|∂yを解析した結果、解析的 1 周期積分や全無限区間積分に対する台形則が漸近的に最大の減少率を達成する
変数変換型公式における理想的な補間型積分公式 : 台形則
全無限区間積分に対する台形則の誤差の特性関数





−2πi
1 − exp(−2πiz/h)Φh(z) =+2πi
1 − exp(+2πiz/h)=z > 0=z < 06

最適な変数変換∫ 1−1f (x) dx =∫ ∞f (ϕ(t))ϕ0(t) dt = I−∞∞∑≈ h≈ hf (ϕ(nh))ϕ0(nh) = Ihn=−∞N+∑f (ϕ(nh))ϕ0(nh) = Ih(N )n=−N−

このとき、|f (ϕ(nh))ϕ0(nh)| の n → ±∞ での減衰に着目(N )・減衰が速いほど打ち切り誤差 |Ih − Ih | は小さくなる
・減衰が速すぎると離散化誤差 |I − Ih| は大きくなる
したがって、最適な変数変換が存在するはず。
7

最適な変数変換の検索
ϕ(t) = tanh tm, m = 1, 3, 5, · · ·m

c N m+1 ), c > 0, N :標本点数のとき、積分公式の誤差項は exp(− mπϕ(t) = tanh( sinh t)
20Ncのとき、積分公式の誤差項は exp(− log N ), c0 > 0πϕ(t) = tanh( sinh tm)
2のとき、m を 1 より大きくすると積分公式の誤差は悪くなる。
8

最適な変数変換の検索 2()πsinh tt → ±∞ϕ0(t) ∼ sech22のとき、ϕ0(t) の極は実軸から幅 d = π2 の距離で平行に並ぶ()()

πϕ0(t) ∼ sech2
sinh |t|1−εt → ±∞2のとき、ϕ0(t) の極は |<t| が大きくなると実軸から離れる
π02
ϕ (t) ∼ sechsinh |t|1+εt → ±∞2のとき、ϕ0(t) の極は |<t| が大きくなると実軸に限りなく近づく
9一重指数関数の振る舞い

1の図
cosh t10二重指数関数の振る舞い(1cosh π2 sinh t) の図

11

三重指数関数の振る舞い(1cosh π2 sinh(sinh t)) の図12

DE 公式の変数変換の選び方の例
区間 (−1, 1) の積分の場合)(∫ 1πsinh t
I=f (x) dx, x = ϕDE(t) = tanh
2−1
区間 (0, ∞) の積分の場合（ただし x → ∞ で f (x) は指数関数より遅い減衰）∫ ∞()π
I=f (x) dx, x = exp
sinh t20
区間 (0, ∞) の積分の場合（ただし x → ∞ で f (x) は指数関数的な減衰）I=∫ ∞0f (x) dx,x = exp (t − exp(−t))

区間 (−∞, ∞) の積分の場合（ただし x → ±∞ で f (x) は指数関数より遅い減衰）)(∫ ∞πsinh t
I=f (x) dx, x = sinh2−∞13DE 公式が最適となる関数のクラス
変数変換後の関数が帯状領域で正則⇐
w = tanh( π2 sinh z)

14

SE 公式が最適となる関数のクラス
変数変換前前の関数が単位円内部で正則（ハーディ空間）⇒
w = tanh 2z15

SE 公式が得意で DE 公式が苦手とする例
ハーディの振動関数：

f (x) = x − x2 + x4 − x8 + x16 − · · · =∞∑n(−1)nx2n=0⇒
拡大16

SE 公式が得意で DE 公式が苦手とする例 2ハーディの振動関数の x → 1 での漸近形

f (x) = x − x2 + x4 − x8 + x16 − · · ·()1π≈+ α coslog(− log x) − β ,2log 2
α = (2/ log 2)|Γ(iπ/ log 2)| ≈ 0.002749221684,
β = arg Γ(iπ/ log 2) ≈ 1.5133217891
積分∫ 1−1f (x) dx

は振動積分として特別に扱うべき
17振動積分と DE 公式– 無限区間の DE 公式 p.376 より引用 –ただし，以上の変換で対応できない重要な例もある．その典型は，たとえば∫ ∞1I=
sin xdx2
0 1+xのような代数関数×三角関数の型の積分である．このような積分を精度良く数値積分することは一般にかなりむずかしく，特別の工夫が必要である．

18

振動積分の計算が困難な理由
代数学の基本定理: n 次多項式は高々n 個のゼロ点しか持たない
振動積分: 無限個のゼロ点があるゆえに、振動積分を多項式で補間することは不可能

19

振動積分を計算可能にする原理
例:sinc 関数の積分を台形則で近似する場合、留数定理または標本化定理より
等式∫ ∞0∞∑sin xhsin nhdx = + hx2n=1 nhが成り立つ。ただし 0 < h < 2π
ここで h = π と選ぶと 1 点だけの計算で真値が得られる。
このことは、sinc 関数以外にも同様のフーリエ変換の特性を持つ関数にいえる。
20

振動積分に対する DE 公式
∫ ∞N+
∑()()

ππf (x) sin xdx ≈ πϕ(nh) sinϕ(nh) ϕ0(nh),fhh0
n=−N−ϕ(t) =t,−tt
1 − exp(−2t − α(1 − e ) − β(e − 1))α, β > 01002040x∫
I = 0∞ √1x sin x dx の被積分関数と標本点の図21