gamma(x): Gamma¶
Gamma function.
Declaration¶
Syntax¶
retval = gamma(x)
elemental real function gamma(x)
Arguments¶
x the input value must be of type real. It should not be zero or a negative
integer.
Return values¶
The return value is of same type and kind as of x.
Description¶
gamma(x) computes \(\gamma(x)\). For positive, integer value of x, the Gamma
function simplifies to factorial function:
\(\gamma(x) = (x-1)!\)
In general, if \(x > 0\):
\(\gamma(x) = \int_{0}^{\infty} e^{-t} dt\)
and if \(-n-1 < x < -n\) where n is an integer >= 0:
\(\gamma(x) = \int_{0}^{\infty}(e ^{-t} - \sum\limits_{k=0}^n \frac{(-t)^k}{k!} dt)\)
Types¶
Supported argument types is real.
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
Examples¶
program intrinsics_gamma
print *, gamma(0.5)
print *, gamma(1.0)
end program
Result:
1.77245
1.000