兰佐斯近似法

在数学中,兰佐斯近似法是一种用于数值计算伽马函数的方法。它是更流行的Stirling近似法的一个实用替代方法,用于计算具有固定精度的伽马函数。

兰佐斯近似法的简介

兰佐斯近似法由以下方程组成这里g是一个实数常数,可以在Re(z+g+1/2)>0的限制下任意选择。系数p取决于g,计算起来稍微困难一些。虽然这里描述的公式只对右复半平面的参数有效,但它可以通过反射公式扩展到整个复平面。数列A是收敛的,可以被截断以获得具有所需精度的近似值。通过选择一个合适的g,只需要系列中的5-10项就可以用典型的单或双浮点精度计算伽玛函数。如果选择一个固定的g,系数可以提前计算,由于部分分数分解,和可以重塑为以下形式。

兰佐斯近似法

这样一来,计算伽马函数就变成了只需评估少量基本函数并乘以存储的常数的问题。Lanczos近似法被NumericalRecipes所概括,根据该方法,计算伽马函数并不比其他我们认为理所当然的内置函数困难多少。

兰佐斯近似法的系数

系数由以下公式给出Godfrey描述了如何获得截断序列A的系数和值作为矩阵的乘积。

简单实现

以下在Python编程语言中的实现适用于复数参数,这些参数通常有13位正确的小数。请注意,省略最小的系数会得到完全不准确的结果;必须从头开始计算系数。

0

点评

点赞

相关文章