Modified Bessel Function of the First Kind

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π)2pI2p1(κ)κ2p1eκμ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=0m!Γ(m+α+1)(2x)2m+α=m=02m!Γ(m+α+1)(2m+α)(2x)2m+α1=m=02m!Γ(m+α+1)(2m+2αα)(2x)2m+α1=m=0m!(m+α)Γ(m+[α1]+1)(m+α)(2x)2m+[α1]xαm=0m!Γ(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=02m!Γ(m+α+1)(2m+α)(2x)2m+α1=m=0m!Γ(m+α+1)m(2x)2m+α1+m=02m!Γ(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=0m!Γ(m+α+1)m(2x)2m+α1=m=0m!Γ(m+[α+1]+1)m(m+α+1)(2x)2m+α1 次数都不对, 咋搞? 发现若约去 m m m, 则 ( m − 1 ) ! ∣ m = 0 = ( − 1 ) ! (m-1)!|_{m=0} = (-1)! (m1)!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+α1m=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=m1=m=0m!Γ(m+α+1)m(2x)2m+α1+xαIα(x)=m=1(m1)!Γ(m+α+1)(2x)2m+α1+xαIα(x)=t=0t!Γ((t+1)+α+1)(2x)2(t+1)+α1+xαIα(x)=t=0t!Γ(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αcosx0π=sin()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θ)π10πexcosθ(cos((α1)θ)cos((α+1)θ))dθπ20πsinθsin(αθ)excosθdθπx20πsin(αθ)d(excosθ)πx2(sin(αθ)excosθ0π0πexcosθd(sin(αθ)))πx2sin(αθ)excosθ0π+x2απ10π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)π)0excosht(α1)tdtπsin((α+1)π)0excosht(α+1)tdtπsin(απ)0(excosht(α1)texcosht(α+1)t)dtπsin(απ)0excoshtαt(etet)dt2πsin(απ)0sinhtexcoshtαtdtx2πsin(απ)0eαtd(excosht)x2πsin(απ)(excoshtαt0+0αexcoshtαtdt)πx2sin(απ)excoshtαt0+x2απsin(απ)0excoshtα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(απ)excoshtαt0 了: − 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(απ)excoshtαt0πx2sin(απ)exπx2sin(απ)(ex)πx2sin(απ)ex+πx2sin(απ)ex0 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θ)π10πexcosθ(cos((α1)θ)+cos((α+1)θ))dθπ20π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)π)0excosht(α1)tdt+πsin((α+1)π)0excosht(α+1)tdtπsin(απ)0(excosht(α1)t+excosht(α+1)t)dtπsin(απ)0excoshtαt(et+et)dt2πsin(απ)0(cosht)excoshtαtdt2πsin(απ)dxd(0excoshtα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(0excoshtαtdt)2(dxd(π10πcos(αθ)excosθπsin(απ)0excoshtα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.real0 时, 求导数就按照莱布尼茨法则, 就可以了:

ive(v, z)' = ive(ctx.v - 1, z) - ive(ctx.v, z) * (ctx.v + z) / z

至于为什么要用 exp(-abs(z.real)) 来缩放 iv 函数, 大概是因为 iv 这个函数是呈指数增长的吧:

Wikipedia: Modified Bessel Functions of the First Kind, Iα(x), for α = 0, 1, 2, 3

当经过 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)α11ext(1t2)α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)απ0excosθsin2α1θ(sinθdθ)π Γ(α+21)(2x)α0πexcosθsin2αθdθ(2) 两种变换求平均, 就得到了.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值