gamma(x):伽马函数

伽马函数。

声明

语法

retval = gamma(x)
elemental real function gamma(x)

参数

x 输入值必须是实数类型。它不应为零或负整数。

返回值

返回值与 x 的类型和种类相同。

描述

gamma(x) 计算 \(\gamma(x)\)。对于 x 的正整数值,Gamma 函数简化为阶乘函数:

\(\gamma(x) = (x-1)!\)

一般来说,如果 \(x > 0\)

\(\gamma(x) = \int_{0}^{\infty} e^{-t} dt\)

如果 \(-n-1 < x < -n\) 其中 n 是整数 >= 0:

\(\gamma(x) = \int_{0}^{\infty}(e ^{-t} - \sum\limits_{k=0}^n \frac{(-t)^k}{k!} dt)\)

类型

支持的参数类型是实数。

interface gamma
    module procedure sgamma, dgamma
end interface

contains

elemental real(sp) function sgamma(x)
real(sp), intent(in) :: x
end function

elemental real(dp) function dgamma(x)
real(dp), intent(in) :: x
end function

示例

program intrinsics_gamma
	print *, gamma(0.5)
	print *, gamma(1.0)
end program

结果:

1.77245
1.000

也可以看看

epsilon