Skip to content

Commit 99d1d6b

Browse files
authored
Merge pull request #1 from putianyi889/patch-1
Update specialfunctions.jl
2 parents d2add70 + 5814f60 commit 99d1d6b

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

src/specialfunctions.jl

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,8 @@ pochhammer(x::AbstractArray{T,1},n::Integer) where {T<:Number} = [pochhammer(x[i
4949
pochhammer(x::AbstractArray{T,2},n::Integer) where {T<:Number} = [pochhammer(x[i,j],n) for i=1:size(x,1),j=1:size(x,2)]
5050
pochhammer(x::AbstractArray{T},n::Integer) where {T<:Number} = reshape([ pochhammer(x[i],n) for i in eachindex(x) ], size(x))
5151

52-
pochhammer(x::Number,n::Number) = gamma(x+n)/gamma(x)
53-
pochhammer(x::AbstractArray{T},n::Number) where {T<:Number} = gamma(x+n)./gamma(x)
52+
pochhammer(x::Number,n::Number) = newgamma(x+n)/newgamma(x)
53+
pochhammer(x::AbstractArray{T},n::Number) where {T<:Number} = newgamma(x+n)./newgamma(x)
5454

5555
function pochhammer(x::Number,n::UnitRange{T}) where T<:Real
5656
ret = Vector{promote_type(typeof(x),T)}(length(n))
@@ -61,6 +61,14 @@ function pochhammer(x::Number,n::UnitRange{T}) where T<:Real
6161
ret
6262
end
6363

64+
function newgamma(x::Number)
65+
if isinteger(x) && x<0
66+
Inf
67+
else
68+
gamma(x)
69+
end
70+
end
71+
6472
"""
6573
Stirling's asymptotic series for ``\\Gamma(z)``.
6674
"""

0 commit comments

Comments
 (0)