通过MCP连接 →

输入计算

数学公式

Show calculation steps (1)
  1. Upper Incomplete Gamma

    Upper Incomplete Gamma: 不完全伽马函数计算器

    Upper incomplete gamma; complement of lower with respect to the complete gamma.

广告

结果

Lower incomplete gamma γ(a,x)
0.8646647168
第一类,从 0 到 x 的积分
Upper incomplete gamma Γ(a,x) 0.1353352832
Complete gamma Γ(a) 1
Identity check γ + Γ 0.86466471676338730.1353352832

什么是不完全伽马函数?

不完全伽马函数是对普通(完全)伽马函数的推广:它把积分在某个有限点处截断,而不是一直积分到无穷大。其中,下不完全伽马函数 \(\gamma(a,x)\) 把 \(t^{a-1} e^{-t}\) 从 0 积分到 \(x\);而上不完全伽马函数 \(\Gamma(a,x)\) 则从 \(x\) 积分到无穷大。两者都依赖于形状参数 \(a\) 和自变量 \(x\),且都是纯粹的无量纲实数。它们在统计学(卡方分布与伽马分布的累积分布函数)、物理学、可靠性工程以及排队论中频繁出现。

t^(a-1)e^(-t)曲线下的面积在x处分为下区域和上区域
下不完全伽马是从0到x的面积;上不完全伽马是从x到无穷的尾部;二者相加即为完整伽马。

如何使用本计算器

输入形状参数 a(必须为正,\(a>0\))和自变量 x(必须非负,\(x\geq 0\))。计算器会返回 \(\gamma(a,x)\)、\(\Gamma(a,x)\) 以及完全伽马函数 \(\Gamma(a)\),方便你验证恒等式 \(\gamma(a,x) + \Gamma(a,x) = \Gamma(a)\)。当 \(x = 0\) 时,下不完全函数为 0,上不完全函数等于 \(\Gamma(a)\);随着 \(x\) 不断增大,下不完全函数趋近于 \(\Gamma(a)\),上不完全函数则趋近于 0。

公式与算法

其定义积分为:

$$\gamma\!\left(a,\, x\right) = \int_{0}^{x} t^{\,a-1}\, e^{-t}\, dt$$$$\Gamma\!\left(a,\, x\right) = \int_{x}^{\infty} t^{\,a-1}\, e^{-t}\, dt = \Gamma\!\left(a\right) - \gamma\!\left(a,\, x\right)$$

为保证数值计算的稳定性,本工具采用正则化形式 \(P(a,x) = \gamma(a,x)/\Gamma(a)\) 与 \(Q(a,x) = \Gamma(a,x)/\Gamma(a)\)。当 \(x < a+1\) 时,使用快速收敛的幂级数计算 \(P\);否则采用 Lentz 连分式计算 \(Q\)。完全伽马函数 \(\Gamma(a)\) 则通过 \(\ln \Gamma(a)\) 的 Lanczos 近似求得。这正是经典《Numerical Recipes》中 gammp/gammq 的分段算法,在双精度下可达到约 15 位有效数字的精度。

Advertisement
算法选择:小x用级数展开,大x用连分数
当x相对于a较小时,计算器选择级数展开,否则选择连分数,以实现快速收敛。

计算实例

取 \(a = 1\)、\(x = 2\)。由于 \(t^{a-1} = t^0 = 1\),下不完全函数即为 \(e^{-t}\) 从 0 到 2 的积分

$$1 - e^{-2} = 1 - 0.13533528 = 0.86466472$$

上不完全函数为 \(e^{-2} = 0.13533528\),而 \(\Gamma(1) = 1\)。恒等式验证:

$$0.86466472 + 0.13533528 = 1.0$$

结果正确。

常见问题

为什么 a 必须为正? 收敛的积分定义以及 Lanczos 的 ln-gamma 计算都要求 \(a>0\);在非正整数处,\(\Gamma(a)\) 存在极点。

当 x 为 0 时会怎样? \(\gamma(a,0) = 0\),\(\Gamma(a,0) = \Gamma(a)\),也就是说上不完全函数此时等于完全伽马函数。

结果有多精确? 双精度运算结合级数/连分式分段算法,在整个有效定义域内可提供约 15 位有效数字的精度。

最后更新: