围棋:贝塞尔函数

Go: Bessel functions

我注意到标准围棋库(Y0)中定义了一阶、二阶和N阶贝塞尔函数(Y0, Y1, Yn)。我似乎无法确定这些数学函数的实际应用会使它们变得如此重要以至于包含在标准库中。

有人可以帮帮我吗?似乎 Bessels(我以前没听说过)与描述二次曲线的 [毕业?] 形状有关,但我不确定为什么这对一般开发具有特殊意义。

我相信它在那里主要是因为 standard POSIX library 中有一个同名的函数(大写除外)和行为。您 link 访问的页面中的许多其他功能也是如此,例如 ldexplgammanextafter.

说到贝塞尔函数的用途,只是偶尔在数学模拟中派上用场罢了。它们与球对称性的拉普拉斯问题紧密相关,球对称性涉及物理模型,例如理想圆鼓的物理模型、氢的量子力学模型或 FM 无线电信号的边带(在此列表中均已大大简化)。贝塞尔函数的一个值是 von Mises distribution 的分母,这是一个在圆或球上表现良好的概率分布,这也非常有用。还有很多,这些只是我想到的第一个想法。

说到动机,在某种程度上 J₀ 是仅次于指数的下一个表现最佳的特殊函数。在计算指数时,对由逆阶乘加权的幂级数求和。对于J₀,与逆阶乘平方基本相同。如果对余弦或 erf 有足够的理由,那么也有同样多的理由。简而言之,它只是一个非常简单的函数,在数学中无处不在,并且有足够多的类 C 语言的程序员来这里进行高性能计算,实际上在制定标准方面产生了一些动力。