Abstract
最近接触到 von Mises–Fisher distribution, 其概率密度如下:
f
p
(
x
;
μ
,
κ
)
=
κ
p
2
−
1
(
2
π
)
p
2
I
p
2
−
1
(
κ
)
e
κ
μ
⊺
x
\begin{aligned} f_{p}(\bm{x}; \bm{\mu}, \kappa) = \frac{\kappa^{\frac{p}{2}-1}} {(2\pi)^{\frac{p}{2}} I_{\frac{p}{2}-1}(\kappa)} e^{\kappa\bm{\mu^\intercal}\bm{x}} \end{aligned}
fp(x;μ,κ)=(2π)2pI2p−1(κ)κ2p−1eκμ⊺x 其中
I
α
(
x
)
I_{\alpha}(x)
Iα(x) 是
α
\alpha
α 阶第一类修正贝塞尔函数.查阅 Wikipedia, 其公式为:
前者是定义式, 后者是积分式. 其计算比较麻烦, 更不用说求导了, 好在这类带有
e
∗
∗
∗
e^{***}
e∗∗∗ 的积分式能推出递推式, 主要有:
1. 推导 d I α d x = I α − 1 ( x ) − α x I α ( x ) \frac{dI_{\alpha}}{dx} = I_{\alpha-1}(x) - \frac{\alpha}{x} I_{\alpha}(x) dxdIα=Iα−1(x)−xαIα(x):
I α ( x ) = ∑ m = 0 ∞ ( x 2 ) 2 m + α m ! Γ ( m + α + 1 ) d I α d x = ∑ m = 0 ∞ ( 2 m + α ) ( x 2 ) 2 m + α − 1 2 m ! Γ ( m + α + 1 ) = ∑ m = 0 ∞ ( 2 m + 2 α − α ) ( x 2 ) 2 m + α − 1 2 m ! Γ ( m + α + 1 ) = ∑ m = 0 ∞ ( m + α ) ( x 2 ) 2 m + [ α − 1 ] m ! ( m + α ) Γ ( m + [ α − 1 ] + 1 ) − α x ∑ m = 0 ∞ ( x 2 ) ( x 2 ) 2 m + α − 1 m ! Γ ( m + α + 1 ) = I α − 1 ( x ) − α x I α ( x ) \begin{aligned} I_{\alpha}(x) &= \sum_{m=0}^{\infin} \frac{(\frac{x}{2})^{2m+\alpha}}{m!\Gamma(m+\alpha+1)} \\ \frac{dI_{\alpha}}{dx} &= \sum_{m=0}^{\infin} \frac{(2m+\alpha)(\frac{x}{2})^{2m+\alpha-1}}{2m!\Gamma(m+\alpha+1)} \\ &= \sum_{m=0}^{\infin} \frac{(2m+2\alpha-\alpha)(\frac{x}{2})^{2m+\alpha-1}}{2m!\Gamma(m+\alpha+1)} \\ &= \sum_{m=0}^{\infin} \frac{(m+\alpha)(\frac{x}{2})^{2m+[\alpha-1]}}{m!(m+\alpha)\Gamma(m+[\alpha-1]+1)} - \frac{\alpha}{x}\sum_{m=0}^{\infin} \frac{(\frac{x}{2})(\frac{x}{2})^{2m+\alpha-1}}{m!\Gamma(m+\alpha+1)} \\ &= I_{\alpha-1}(x) - \frac{\alpha}{x} I_{\alpha}(x) \end{aligned} Iα(x)dxdIα=m=0∑∞m!Γ(m+α+1)(2x)2m+α=m=0∑∞2m!Γ(m+α+1)(2m+α)(2x)2m+α−1=m=0∑∞2m!Γ(m+α+1)(2m+2α−α)(2x)2m+α−1=m=0∑∞m!(m+α)Γ(m+[α−1]+1)(m+α)(2x)2m+[α−1]−xαm=0∑∞m!Γ(m+α+1)(2x)(2x)2m+α−1=Iα−1(x)−xαIα(x)
2. 推导 d I α d x = I α + 1 ( x ) + α x I α ( x ) \frac{dI_{\alpha}}{dx} = I_{\alpha+1}(x) + \frac{\alpha}{x} I_{\alpha}(x) dxdIα=Iα+1(x)+xαIα(x):
d
I
α
d
x
=
∑
m
=
0
∞
(
2
m
+
α
)
(
x
2
)
2
m
+
α
−
1
2
m
!
Γ
(
m
+
α
+
1
)
=
∑
m
=
0
∞
m
(
x
2
)
2
m
+
α
−
1
m
!
Γ
(
m
+
α
+
1
)
+
∑
m
=
0
∞
α
(
x
2
)
2
m
+
α
−
1
2
m
!
Γ
(
m
+
α
+
1
)
\begin{aligned} \frac{dI_{\alpha}}{dx} &= \sum_{m=0}^{\infin} \frac{(2m+\alpha)(\frac{x}{2})^{2m+\alpha-1}}{2m!\Gamma(m+\alpha+1)} \\ &= \sum_{m=0}^{\infin} \frac{m(\frac{x}{2})^{2m+\alpha-1}}{m!\Gamma(m+\alpha+1)} + \sum_{m=0}^{\infin} \frac{\alpha(\frac{x}{2})^{2m+\alpha-1}}{2m!\Gamma(m+\alpha+1)} \\ \end{aligned}
dxdIα=m=0∑∞2m!Γ(m+α+1)(2m+α)(2x)2m+α−1=m=0∑∞m!Γ(m+α+1)m(2x)2m+α−1+m=0∑∞2m!Γ(m+α+1)α(2x)2m+α−1 后一项就是
α
x
I
α
(
x
)
\frac{\alpha}{x} I_{\alpha}(x)
xαIα(x), 但前面一项看着不好搞, 式中
x
2
\frac{x}{2}
2x 的次数是
(
2
m
+
α
−
1
)
(2m+\alpha-1)
(2m+α−1), 却能推到
I
α
+
1
(
x
)
I_{\alpha+1}(x)
Iα+1(x), 起初还从
Γ
(
m
+
α
+
1
)
=
Γ
(
m
+
[
α
+
1
]
+
1
)
m
+
α
+
1
\Gamma(m+\alpha+1) = \frac{\Gamma(m+[\alpha+1]+1)}{m+\alpha+1}
Γ(m+α+1)=m+α+1Γ(m+[α+1]+1) 搞, 但发现结果是:
∑
m
=
0
∞
m
(
x
2
)
2
m
+
α
−
1
m
!
Γ
(
m
+
α
+
1
)
=
∑
m
=
0
∞
m
(
m
+
α
+
1
)
(
x
2
)
2
m
+
α
−
1
m
!
Γ
(
m
+
[
α
+
1
]
+
1
)
\sum_{m=0}^{\infin} \frac{m(\frac{x}{2})^{2m+\alpha-1}}{m!\Gamma(m+\alpha+1)} = \sum_{m=0}^{\infin} \frac{m(m+\alpha+1)(\frac{x}{2})^{2m+\alpha-1}}{m!\Gamma(m+[\alpha+1]+1)}
m=0∑∞m!Γ(m+α+1)m(2x)2m+α−1=m=0∑∞m!Γ(m+[α+1]+1)m(m+α+1)(2x)2m+α−1 次数都不对, 咋搞? 发现若约去
m
m
m, 则
(
m
−
1
)
!
∣
m
=
0
=
(
−
1
)
!
(m-1)!|_{m=0} = (-1)!
(m−1)!∣m=0=(−1)!, 那就单独拿出来看看:
m
(
x
2
)
2
m
+
α
−
1
m
!
Γ
(
m
+
α
+
1
)
∣
m
=
0
=
0
\frac{m(\frac{x}{2})^{2m+\alpha-1}}{m!\Gamma(m+\alpha+1)}|_{m=0} = 0
m!Γ(m+α+1)m(2x)2m+α−1∣m=0=0, 则:
d
I
α
d
x
=
∑
m
=
0
∞
m
(
x
2
)
2
m
+
α
−
1
m
!
Γ
(
m
+
α
+
1
)
+
α
x
I
α
(
x
)
=
∑
m
=
1
∞
(
x
2
)
2
m
+
α
−
1
(
m
−
1
)
!
Γ
(
m
+
α
+
1
)
+
α
x
I
α
(
x
)
t
=
m
−
1
⇒
=
∑
t
=
0
∞
(
x
2
)
2
(
t
+
1
)
+
α
−
1
t
!
Γ
(
(
t
+
1
)
+
α
+
1
)
+
α
x
I
α
(
x
)
=
∑
t
=
0
∞
(
x
2
)
2
t
+
[
α
+
1
]
t
!
Γ
(
t
+
[
α
+
1
]
+
1
)
+
α
x
I
α
(
x
)
=
I
α
+
1
(
x
)
+
α
x
I
α
(
x
)
\begin{aligned} \frac{dI_{\alpha}}{dx} &= \sum_{m=0}^{\infin} \frac{m(\frac{x}{2})^{2m+\alpha-1}}{m!\Gamma(m+\alpha+1)} + \frac{\alpha}{x} I_{\alpha}(x) \\ &= \sum_{m=1}^{\infin} \frac{(\frac{x}{2})^{2m+\alpha-1}}{(m-1)!\Gamma(m+\alpha+1)} + \frac{\alpha}{x} I_{\alpha}(x) \\ t = m-1 \Rightarrow &= \sum_{t=0}^{\infin} \frac{(\frac{x}{2})^{2(t+1)+\alpha-1}}{t!\Gamma((t+1)+\alpha+1)} + \frac{\alpha}{x} I_{\alpha}(x) \\ &= \sum_{t=0}^{\infin} \frac{(\frac{x}{2})^{2t+[\alpha+1]}}{t!\Gamma(t+[\alpha+1]+1)} + \frac{\alpha}{x} I_{\alpha}(x) \\ &= I_{\alpha+1}(x) + \frac{\alpha}{x} I_{\alpha}(x) \end{aligned}
dxdIαt=m−1⇒=m=0∑∞m!Γ(m+α+1)m(2x)2m+α−1+xαIα(x)=m=1∑∞(m−1)!Γ(m+α+1)(2x)2m+α−1+xαIα(x)=t=0∑∞t!Γ((t+1)+α+1)(2x)2(t+1)+α−1+xαIα(x)=t=0∑∞t!Γ(t+[α+1]+1)(2x)2t+[α+1]+xαIα(x)=Iα+1(x)+xαIα(x)
3. 其他两个递推式
推了这两个, 那么两式相加得: I α − 1 ( x ) + I α + 1 ( x ) = 2 d I α d x I_{\alpha-1}(x) + I_{\alpha+1}(x) = 2 \frac{dI_{\alpha}}{dx} Iα−1(x)+Iα+1(x)=2dxdIα 两式相减得: I α − 1 ( x ) − I α + 1 ( x ) = 2 α x I α I_{\alpha-1}(x) - I_{\alpha+1}(x) = \frac{2\alpha}{x} I_{\alpha} Iα−1(x)−Iα+1(x)=x2αIα 就很自然了.
4. 积分式的递推式证明
见第一类修正贝塞尔函数的递推公式怎么证明?, 这是阶数
α
\alpha
α 为整数时(
s
i
n
(
α
π
)
=
0
sin(\alpha\pi)=0
sin(απ)=0)的情况.
那
α
\alpha
α 不为整数时呢? 发现
−
s
i
n
(
n
x
)
e
α
c
o
s
x
∣
0
π
=
−
s
i
n
(
n
π
)
e
−
α
≠
0
s
i
n
(
α
π
)
π
≠
0
\begin{aligned} -sin(nx)e^{\alpha cosx}|_0^\pi = -sin(n\pi)e^{-\alpha} &\ne 0 \\ \frac{sin(\alpha\pi)}{\pi} &\ne 0 \end{aligned}
−sin(nx)eαcosx∣0π=−sin(nπ)e−απsin(απ)=0=0 那么我们就来推一遍。由于太长,我们分前后两部分。
4.1 递推式 ①
前半部分: 1 π ( ∫ 0 π e x c o s θ c o s ( ( α − 1 ) θ ) d θ − ∫ 0 π e x c o s θ c o s ( ( α + 1 ) θ ) d θ ) = 1 π ∫ 0 π e x c o s θ ( c o s ( ( α − 1 ) θ ) − c o s ( ( α + 1 ) θ ) ) d θ = 2 π ∫ 0 π s i n θ s i n ( α θ ) e x c o s θ d θ = − 2 π x ∫ 0 π s i n ( α θ ) d ( e x c o s θ ) = − 2 π x ( s i n ( α θ ) e x c o s θ ∣ 0 π − ∫ 0 π e x c o s θ d ( s i n ( α θ ) ) ) = − 2 s i n ( α θ ) π x e x c o s θ ∣ 0 π + 2 α x 1 π ∫ 0 π e x c o s θ c o s ( α θ ) d θ \begin{aligned} & \frac{1}{\pi}\left( \int_0^\pi e^{xcos\theta} cos((\alpha-1)\theta) d\theta - \int_0^\pi e^{xcos\theta} cos((\alpha+1)\theta) d\theta \right) \\ =& \frac{1}{\pi} \int_0^\pi e^{xcos\theta} \left(cos((\alpha-1)\theta) - cos((\alpha+1)\theta)\right) d\theta \\ =& \frac{2}{\pi} \int_0^\pi sin\theta sin(\alpha\theta) e^{xcos\theta} d\theta \\ =& -\frac{2}{\pi x} \int_0^\pi sin(\alpha\theta) d(e^{xcos\theta}) \\ =& -\frac{2}{\pi x} \left(sin(\alpha\theta)e^{xcos\theta}|_0^\pi - \int_0^\pi e^{xcos\theta} d(sin(\alpha\theta))\right) \\ =& -\frac{2sin(\alpha\theta)}{\pi x} e^{xcos\theta}|_0^\pi + \frac{2\alpha}{x}\frac{1}{\pi}\int_0^\pi e^{xcos\theta}cos(\alpha\theta) d\theta \end{aligned} =====π1(∫0πexcosθcos((α−1)θ)dθ−∫0πexcosθcos((α+1)θ)dθ)π1∫0πexcosθ(cos((α−1)θ)−cos((α+1)θ))dθπ2∫0πsinθsin(αθ)excosθdθ−πx2∫0πsin(αθ)d(excosθ)−πx2(sin(αθ)excosθ∣0π−∫0πexcosθd(sin(αθ)))−πx2sin(αθ)excosθ∣0π+x2απ1∫0πexcosθcos(αθ)dθ 再看积分式的后半部分: s i n ( ( α − 1 ) π ) π ∫ 0 ∞ e − x c o s h t − ( α − 1 ) t d t − s i n ( ( α + 1 ) π ) π ∫ 0 ∞ e − x c o s h t − ( α + 1 ) t d t = − s i n ( α π ) π ∫ 0 ∞ ( e − x c o s h t − ( α − 1 ) t − e − x c o s h t − ( α + 1 ) t ) d t = − s i n ( α π ) π ∫ 0 ∞ e − x c o s h t − α t ( e t − e − t ) d t = − 2 s i n ( α π ) π ∫ 0 ∞ s i n h t e − x c o s h t − α t d t = 2 x s i n ( α π ) π ∫ 0 ∞ e − α t d ( e − x c o s h t ) = 2 x s i n ( α π ) π ( e − x c o s h t − α t ∣ 0 ∞ + ∫ 0 ∞ α e − x c o s h t − α t d t ) = 2 s i n ( α π ) π x e − x c o s h t − α t ∣ 0 ∞ + 2 α x s i n ( α π ) π ∫ 0 ∞ e − x c o s h t − α t d t \begin{aligned} & \frac{sin((\alpha-1)\pi)}{\pi} \int_0^{\infin} e^{-xcosht-(\alpha-1) t} dt - \frac{sin((\alpha+1)\pi)}{\pi} \int_0^{\infin} e^{-xcosht-(\alpha+1) t} dt \\ =& -\frac{sin(\alpha\pi)}{\pi} \int_0^{\infin} \left(e^{-xcosht-(\alpha-1) t} - e^{-xcosht-(\alpha+1) t}\right) dt \\ =& -\frac{sin(\alpha\pi)}{\pi} \int_0^{\infin} e^{-xcosht-\alpha t}\left(e^{t} - e^{-t}\right) dt \\ =& -2\frac{sin(\alpha\pi)}{\pi} \int_0^{\infin} sinht e^{-xcosht-\alpha t} dt \\ =& \frac{2}{x}\frac{sin(\alpha\pi)}{\pi} \int_0^{\infin} e^{-\alpha t} d\left(e^{-xcosht}\right) \\ =& \frac{2}{x}\frac{sin(\alpha\pi)}{\pi} \left( e^{-xcosht-\alpha t}|_0^{\infin} + \int_0^{\infin} \alpha e^{-xcosht-\alpha t} dt \right) \\ =& \frac{2sin(\alpha\pi)}{\pi x} e^{-xcosht-\alpha t}|_0^{\infin} + \frac{2\alpha}{x}\frac{sin(\alpha\pi)}{\pi} \int_0^{\infin} e^{-xcosht-\alpha t} dt \end{aligned} ======πsin((α−1)π)∫0∞e−xcosht−(α−1)tdt−πsin((α+1)π)∫0∞e−xcosht−(α+1)tdt−πsin(απ)∫0∞(e−xcosht−(α−1)t−e−xcosht−(α+1)t)dt−πsin(απ)∫0∞e−xcosht−αt(et−e−t)dt−2πsin(απ)∫0∞sinhte−xcosht−αtdtx2πsin(απ)∫0∞e−αtd(e−xcosht)x2πsin(απ)(e−xcosht−αt∣0∞+∫0∞αe−xcosht−αtdt)πx2sin(απ)e−xcosht−αt∣0∞+x2απsin(απ)∫0∞e−xcosht−αtdt 此时, 就看 − 2 s i n ( α θ ) π x e x c o s θ ∣ 0 π − 2 s i n ( α π ) π x e − x c o s h t − α t ∣ 0 ∞ -\frac{2sin(\alpha\theta)}{\pi x} e^{xcos\theta}|_0^\pi - \frac{2sin(\alpha\pi)}{\pi x} e^{-xcosht-\alpha t}|_0^{\infin} −πx2sin(αθ)excosθ∣0π−πx2sin(απ)e−xcosht−αt∣0∞ 了: − 2 s i n ( α θ ) π x e x c o s θ ∣ 0 π − 2 s i n ( α π ) π x e − x c o s h t − α t ∣ 0 ∞ = − 2 s i n ( α π ) π x e − x − 2 s i n ( α π ) π x ( − e − x ) = − 2 s i n ( α π ) π x e − x + 2 s i n ( α π ) π x e − x = 0 \begin{aligned} & -\frac{2sin(\alpha\theta)}{\pi x} e^{xcos\theta}|_0^\pi - \frac{2sin(\alpha\pi)}{\pi x} e^{-xcosht-\alpha t}|_0^{\infin} \\ =& -\frac{2sin(\alpha\pi)}{\pi x} e^{-x} - \frac{2sin(\alpha\pi)}{\pi x} (-e^{-x}) \\ =& -\frac{2sin(\alpha\pi)}{\pi x} e^{-x} + \frac{2sin(\alpha\pi)}{\pi x} e^{-x} \\ =& 0 \end{aligned} ===−πx2sin(αθ)excosθ∣0π−πx2sin(απ)e−xcosht−αt∣0∞−πx2sin(απ)e−x−πx2sin(απ)(−e−x)−πx2sin(απ)e−x+πx2sin(απ)e−x0 I α − 1 ( x ) − I α + 1 ( x ) = 2 α x I α I_{\alpha-1}(x) - I_{\alpha+1}(x) = \frac{2\alpha}{x} I_{\alpha} Iα−1(x)−Iα+1(x)=x2αIα 得证。
4.2 递推式 ②
前半部分: 1 π ( ∫ 0 π e x c o s θ c o s ( ( α − 1 ) θ ) d θ + ∫ 0 π e x c o s θ c o s ( ( α + 1 ) θ ) d θ ) = 1 π ∫ 0 π e x c o s θ ( c o s ( ( α − 1 ) θ ) + c o s ( ( α + 1 ) θ ) ) d θ = 2 π ∫ 0 π c o s θ c o s ( α θ ) e x c o s θ d θ = 2 π d ( ∫ 0 π c o s ( α θ ) e x c o s θ d θ ) d x \begin{aligned} & \frac{1}{\pi}\left( \int_0^\pi e^{xcos\theta} cos((\alpha-1)\theta) d\theta + \int_0^\pi e^{xcos\theta} cos((\alpha+1)\theta) d\theta \right) \\ =& \frac{1}{\pi} \int_0^\pi e^{xcos\theta} \left(cos((\alpha-1)\theta) + cos((\alpha+1)\theta)\right) d\theta \\ =& \frac{2}{\pi} \int_0^\pi cos\theta cos(\alpha\theta) e^{xcos\theta} d\theta \\ =& \frac{2}{\pi} \frac{d\left(\int_0^\pi cos(\alpha\theta) e^{xcos\theta} d\theta\right)}{dx} \end{aligned} ===π1(∫0πexcosθcos((α−1)θ)dθ+∫0πexcosθcos((α+1)θ)dθ)π1∫0πexcosθ(cos((α−1)θ)+cos((α+1)θ))dθπ2∫0πcosθcos(αθ)excosθdθπ2dxd(∫0πcos(αθ)excosθdθ) 再看积分式的后半部分: s i n ( ( α − 1 ) π ) π ∫ 0 ∞ e − x c o s h t − ( α − 1 ) t d t + s i n ( ( α + 1 ) π ) π ∫ 0 ∞ e − x c o s h t − ( α + 1 ) t d t = − s i n ( α π ) π ∫ 0 ∞ ( e − x c o s h t − ( α − 1 ) t + e − x c o s h t − ( α + 1 ) t ) d t = − s i n ( α π ) π ∫ 0 ∞ e − x c o s h t − α t ( e t + e − t ) d t = 2 s i n ( α π ) π ∫ 0 ∞ ( − c o s h t ) e − x c o s h t − α t d t = 2 s i n ( α π ) π d ( ∫ 0 ∞ e − x c o s h t − α t d t ) d x \begin{aligned} & \frac{sin((\alpha-1)\pi)}{\pi} \int_0^{\infin} e^{-xcosht-(\alpha-1) t} dt + \frac{sin((\alpha+1)\pi)}{\pi} \int_0^{\infin} e^{-xcosht-(\alpha+1) t} dt \\ =& -\frac{sin(\alpha\pi)}{\pi} \int_0^{\infin} \left(e^{-xcosht-(\alpha-1) t} + e^{-xcosht-(\alpha+1) t}\right) dt \\ =& -\frac{sin(\alpha\pi)}{\pi} \int_0^{\infin} e^{-xcosht-\alpha t}\left(e^{t} + e^{-t}\right) dt \\ =& 2\frac{sin(\alpha\pi)}{\pi} \int_0^{\infin} (-cosht) e^{-xcosht-\alpha t} dt \\ =& 2\frac{sin(\alpha\pi)}{\pi} \frac{d(\int_0^{\infin} e^{-xcosht-\alpha t} dt)}{dx} \end{aligned} ====πsin((α−1)π)∫0∞e−xcosht−(α−1)tdt+πsin((α+1)π)∫0∞e−xcosht−(α+1)tdt−πsin(απ)∫0∞(e−xcosht−(α−1)t+e−xcosht−(α+1)t)dt−πsin(απ)∫0∞e−xcosht−αt(et+e−t)dt2πsin(απ)∫0∞(−cosht)e−xcosht−αtdt2πsin(απ)dxd(∫0∞e−xcosht−αtdt) 合并: 前半部分 − 后半部分 = 2 π d ( ∫ 0 π c o s ( α θ ) e x c o s θ d θ ) d x − 2 s i n ( α π ) π d ( ∫ 0 ∞ e − x c o s h t − α t d t ) d x = 2 ( d ( 1 π ∫ 0 π c o s ( α θ ) e x c o s θ − s i n ( α π ) π ∫ 0 ∞ e − x c o s h t − α t d t ) d x ) = 2 d I α ( x ) d x \begin{aligned} 前半部分 - 后半部分 =& \frac{2}{\pi} \frac{d\left(\int_0^\pi cos(\alpha\theta) e^{xcos\theta} d\theta\right)}{dx} - 2\frac{sin(\alpha\pi)}{\pi} \frac{d(\int_0^{\infin} e^{-xcosht-\alpha t} dt)}{dx} \\ =& 2\left(\frac{d(\frac{1}{\pi} \int_0^\pi cos(\alpha\theta) e^{xcos\theta} - \frac{sin(\alpha\pi)}{\pi}\int_0^{\infin} e^{-xcosht-\alpha t} dt)}{dx} \right) \\ =& 2\frac{dI_\alpha(x)}{dx} \end{aligned} 前半部分−后半部分===π2dxd(∫0πcos(αθ)excosθdθ)−2πsin(απ)dxd(∫0∞e−xcosht−αtdt)2(dxd(π1∫0πcos(αθ)excosθ−πsin(απ)∫0∞e−xcosht−αtdt))2dxdIα(x) I α − 1 ( x ) + I α + 1 ( x ) = 2 d I α ( x ) d x I_{\alpha-1}(x) + I_{\alpha+1}(x) = 2\frac{dI_{\alpha}(x)}{dx} Iα−1(x)+Iα+1(x)=2dxdIα(x) 得证。
其他两个递推式可由上面两个式子推导出来: ①+② 可得 ③, ①-② 可得 ④.
5. Exponentially Scaled Modified Bessel Function of the First Kind.
Defined as::
ive(v, z) = iv(v, z) * exp(-abs(z.real))
所以当假定 z . r e a l ≥ 0 z.real \ge 0 z.real≥0 时, 求导数就按照莱布尼茨法则, 就可以了:
ive(v, z)' = ive(ctx.v - 1, z) - ive(ctx.v, z) * (ctx.v + z) / z
至于为什么要用 exp(-abs(z.real))
来缩放 iv
函数, 大概是因为 iv
这个函数是呈指数增长的吧:
当经过 e x p ( − x ) exp(-x) exp(−x) 的缩放后, 函数应该会变得更平滑吧.
6. 用 scipy.special
包进行验证
import numpy as np
from scipy import special
v = 5.5
z = 3
iv = special.iv(v, z)
ive = special.ive(v, z) # iv * np.exp(-abs(Re(z)))
print(iv) # 0.04532335799965591
print(ive) # 0.0022565171233900425
print(iv * np.exp(-z)) # 验证 ive = iv * exp(-z), 0.002256517123390042
# %% 验证导数
ivp = special.ivp(v, z)
ivp_1 = (special.iv(v - 1, z) + special.iv(v + 1, z)) / 2
ivp_2 = special.iv(v - 1, z) - v / z * iv
ivp_3 = special.iv(v + 1, z) + v / z * iv
print(ivp_1) # 0.09310529508597687
print(ivp_2) # 0.09310529508597686
print(ivp_3) # 0.09310529508597688
# %% 验证ive的导数
ivep = (ivp - iv) * np.exp(-z)
ivep_1 = special.ive(v - 1, z) - (z + v) / z * ive
print(ivep) # 0.0023789225684656356
print(ivep_1) # 0.002378922568465644
7. 补充材料
7.1 公式之间的关系
I α ( x ) = ( x 2 ) α π Γ ( α + 1 2 ) ∫ − 1 1 e − x t ( 1 − t 2 ) α − 1 2 d t ( R e α > − 1 2 ) = ( x 2 ) α π Γ ( α + 1 2 ) ∫ 0 π c o s h ( x c o s θ ) s i n 2 α θ d θ ( R e α > − 1 2 ) \begin{aligned} I_\alpha(x) =& \frac{(\frac{x}{2})^\alpha}{\sqrt{\pi}\Gamma(\alpha+\frac{1}{2})} \int_{-1}^{1} e^{-xt} (1-t^2)^{\alpha - \frac{1}{2}} dt ~~~ (Re~\alpha \gt -\frac{1}{2}) \\ =& \frac{(\frac{x}{2})^\alpha}{\sqrt{\pi}\Gamma(\alpha+\frac{1}{2})} \int_{0}^{\pi} cosh(x cos\theta) sin^{2\alpha}\theta d\theta ~~~ (Re~\alpha \gt -\frac{1}{2}) \end{aligned} Iα(x)==πΓ(α+21)(2x)α∫−11e−xt(1−t2)α−21dt (Re α>−21)πΓ(α+21)(2x)α∫0πcosh(xcosθ)sin2αθdθ (Re α>−21) 如何转换? 首先想到的是 t = − c o s θ t = -cos\theta t=−cosθ: I α ( x ) = ( x 2 ) α π Γ ( α + 1 2 ) ∫ 0 π e x c o s θ s i n 2 α − 1 θ ( s i n θ d θ ) = ( x 2 ) α π Γ ( α + 1 2 ) ∫ 0 π e x c o s θ s i n 2 α θ d θ (1) \begin{aligned} I_\alpha(x) =& \frac{(\frac{x}{2})^\alpha}{\sqrt{\pi}\Gamma(\alpha+\frac{1}{2})} \int_{0}^{\pi} e^{xcos\theta} sin^{2\alpha-1}\theta (sin\theta d\theta) \\ =& \frac{(\frac{x}{2})^\alpha}{\sqrt{\pi}\Gamma(\alpha+\frac{1}{2})} \int_{0}^{\pi} e^{xcos\theta} sin^{2\alpha}\theta d\theta \tag{1} \end{aligned} Iα(x)==πΓ(α+21)(2x)α∫0πexcosθsin2α−1θ(sinθdθ)πΓ(α+21)(2x)α∫0πexcosθsin2αθdθ(1) 再令 t = c o s θ t = cos\theta t=cosθ: I α ( x ) = ( x 2 ) α π Γ ( α + 1 2 ) ∫ π 0 e − x c o s θ s i n 2 α − 1 θ ( − s i n θ d θ ) = ( x 2 ) α π Γ ( α + 1 2 ) ∫ 0 π e − x c o s θ s i n 2 α θ d θ (2) \begin{aligned} I_\alpha(x) =& \frac{(\frac{x}{2})^\alpha}{\sqrt{\pi}\Gamma(\alpha+\frac{1}{2})} \int_{\pi}^{0} e^{-xcos\theta} sin^{2\alpha-1}\theta (-sin\theta d\theta) \\ =& \frac{(\frac{x}{2})^\alpha}{\sqrt{\pi}\Gamma(\alpha+\frac{1}{2})} \int_{0}^{\pi} e^{-xcos\theta} sin^{2\alpha}\theta d\theta \tag{2} \end{aligned} Iα(x)==πΓ(α+21)(2x)α∫π0e−xcosθsin2α−1θ(−sinθdθ)πΓ(α+21)(2x)α∫0πe−xcosθsin2αθdθ(2) 两种变换求平均, 就得到了.