[latexpage]
我在极坐标下的二维无规行走中讨论到Rice分布:
\begin{equation}\label{eq:1}
p_R\left(r\right)=\frac{r}{\sigma^2}I_0\left(\frac{r\mu_r}{\sigma^2}\right)\exp\left(-\frac{r^2+\mu_r^2}{2\sigma^2}\right)
\end{equation}
当无规行走发生的“位置”($\mu_r$)离原点很远时,$\mu_r$值很大,而分布的极值也大至处于$r=\mu_r$处,因此,能看到分布主要特征的$r$范围也在$\mu_r$附近。这时,式(\ref{eq:1})中的第一类修正贝塞尔函数$I_0\left(\frac{r\mu_r}{\sigma^2}\right)$的值会很大,而自然指数项$\exp\left(-\frac{r^2+\mu_r^2}{2\sigma^2}\right)$会很小,但整个式(\ref{eq:1})的值仍然是适中的。在MATLAB输入上式计算时,会因为计算过程中涉及到很大的和很小的值,所以尽管最终结果的值是适中的,计算也会溢出。这时可以利用第一类修正贝塞尔函数的渐近展开1。当$\alpha$为定值、$\left|z\right|$很大且$\left|\mathrm{arg}z\right|<\frac{\pi}{2}$时, \begin{equation}\label{eq:2} \begin{aligned} I_\alpha\left(z\right)&=\frac{\exp\left(z\right)}{\sqrt{2\pi z}}\left[1-\frac{4\alpha^2-1}{8z}-\frac{\left(4\alpha^2-1\right)\left(4\alpha^2-9\right)}{2!\left(8z\right)^2}\right.\\ &\left.-\frac{\left(4\alpha^2-1\right)\left(4\alpha^2-9\right)\left(4\alpha^2-25\right)}{3!\left(8z\right)^3}+\cdots\right]\\ &\approx\frac{\exp\left(z\right)}{\sqrt{2\pi z}}\left[1+O\left(z^{-1}\right)\right] \end{aligned} \end{equation} $z$越大,级数会衰减得越快.如果$z$足够大,$I_0$可近似为$\frac{\exp\left(z\right)}{\sqrt{2\pi z}}$。这个近似式并不改变$I_0$很大的事实。但如果将式(\ref{eq:2})代入式(\ref{eq:1}), \begin{equation}\label{eq:3} p_R\left(r\right)=\frac{r\exp\left[-\frac{\left(r-\mu_r\right)^2}{2\sigma^2}\right]}{\sqrt{2\pi r\mu_r\sigma^2}}\left[1+\frac{\sigma^2}{8r\mu_r}-\frac{9\sigma^4}{128r^2\mu_r^2}+\cdots\right] \end{equation} 可见,无论$\mu_r$多大,$p_r\left(r\right)$其实只跟$r$与$\mu_r$之差有关。式(\ref{eq:3})只需要计算$\exp\left[-\left(r-\mu_r\right)^2\right]$。由于Rice分布的$r$范围主要在$\mu_r$附近,因此$r$与$\mu_r$之差是很小的,因此这一计算不会溢出。 实际计算时,可先判断$\mu_r$和$\sigma^2$的取值是否使式(\ref{eq:1})的计算溢出了,若溢出,按式(\ref{eq:3})计算时,可根据$\mu_r$和$\sigma^2$的取值大小决定舍去级数的哪些尾项。按照MATLAB的计算极限,能让式(\ref{eq:1})溢出的情况,也就必然能使式(\ref{eq:3})的所有尾项都舍去了。
