贝塞尔先生同名函数的故事Mr. Bessel’s eponymous functions
在验证梯形法则计算积分的高效性时,通常需要与精确的数学解析解进行对比,而 Mathematica 会输出包含贝塞尔函数(如 −2π J1(1))的结果。贝塞尔函数并非凭空出现的数学魔术,而是在圆柱坐标系中求解拉普拉斯方程时自然衍生出的核心特殊函数。文章详细追溯了贝塞尔函数的数学性质及其在物理和工程计算中的广泛应用。理解这些特殊函数背后的逻辑,有助于解开计算机代数系统给出的看似“无中生有”的积分答案。
John
昨天我写了一篇文章,展示了梯形法则计算积分
非常高效。但是我们如何知道用于比较的精确积分值是多少呢?如果你去问 Mathematica,它会告诉你这个积分等于 −2π J1(1),其中 J1 是 Bessel 函数。这可能看起来像变魔术一样,但考虑到 Bessel 函数的积分定义,这其实是个简单的计算:
由于余弦函数是偶函数,我们可以将在 [−π, π] 上的积分写成在 [0, π] 上的积分的两倍。然后,通过变量代换,这就会变成 n = 1 且 z = 1 时的 Jn(z) 的定义。
一个更深层次的问题是,我们仅仅给本质上与最初相同的问题起了一个新名字,这到底有什么意义呢?另一个问题是,Bessel 函数究竟为什么要像上面那样定义。
至于我们取得了什么成果,我们已经将这个积分问题与一个被充分研究的函数联系起来了。Bessel 函数已经被研究了两个世纪,很容易找到用于计算它们的软件。即使是通常极其简化的命令行计算器 bc,都有一个函数 j(x, n) 用于在 n 为整数时计算 Jn(x)。我们可以像下面这样将我们的积分计算到小数点后 50 位。
~$ bc -l
>>> scale = 50
>>> -8*a(1)*j(1,1)
-2.76491937476833705153256665538788207487495025542883需要注意的是,bc 并没有内置 π 的值,但 a(x) 可以计算反正切函数,而 π = 4 arctan(1)。
定义 Bessel 函数有多种方式。三种主要方式分别是通过其幂级数、通过它们所满足的微分方程,以及通过其积分表示来定义。Friedrich Bessel 正是根据积分表示,定义了我们现在所说的第一类 Bessel 函数,即 Jn 函数。
为什么 Bessel 会关注这些积分呢?这是出于他在天体力学方面的计算。其中一个例子就是用 Fourier 级数求解开普勒方程;其 Fourier 系数由 Bessel 函数给出。在 Bessel 先生引起人们对它们的注意并进行系统研究之前,Bessel 函数就已经出现在实际应用中了。
数学是归纳发展的,却是演绎教学的。常见的情况是,某些概念被反复探讨多年后,才有人决定赋予它们一个名称并进行系统研究。关于中心极限定理的这篇文章就是另一个例子。CLT 的历史比 Gaussian 分布还要悠久,甚至比 Gauss 本人还要早。
相关文章
需要完整排版与评论请前往来源站点阅读。