Skip to content

Commit c82ba6e

Browse files
call rational algorithms if outside numerical radius of convergence (remove parameter length check)
add tests for #33
1 parent 5866fe5 commit c82ba6e

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

src/generalized.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ function pFq(α::AbstractVector, β::AbstractVector, z; kwds...)
1212
return exp(-α[1]*log1p(-z))
1313
elseif length(α) == 2 && length(β) == 1
1414
return _₂F₁(α[1], α[2], β[1], float(z))
15-
elseif abs(z) ρ || length(α) length(β)
15+
elseif abs(z) ρ
1616
return pFqmaclaurin(α, β, float(z); kwds...)
1717
else
1818
return pFqweniger(α, β, float(z); kwds...)

test/runtests.jl

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,14 @@ const NumberType = Float64
7777
@test pFq(a, b, c) result atol=eps() rtol=rtol
7878
(a, b, c, result) = NumberType.([-1.30148]), NumberType.([-0.0397773, 0.452281]), NumberType(2.9085746526416285), 134.70529132344416
7979
@test pFq(a, b, c) result atol=eps() rtol=rtol
80+
(a, b, c, result) = NumberType.([1/2]), NumberType.([1, 3/2]), NumberType(-10.0), 0.1215046687753564
81+
@test pFq(a, b, c) result atol=eps() rtol=rtol
82+
(a, b, c, result) = NumberType.([1/2]), NumberType.([1, 3/2]), NumberType(-100.0), 0.05291894107105639
83+
@test pFq(a, b, c) result atol=eps() rtol=rtol
84+
(a, b, c, result) = NumberType.([1/2]), NumberType.([1, 3/2]), NumberType(-1000.0), 0.015220788412455796
85+
@test pFq(a, b, c) result atol=eps() rtol=rtol
86+
(a, b, c, result) = NumberType.([1/2]), NumberType.([1, 3/2]), NumberType(-10000.0), 0.004728870002692929
87+
@test pFq(a, b, c) result atol=eps() rtol=rtol
8088
(a, b, c, result) = NumberType.([1.79664]), NumberType.([2.5454, -2.0446, -1.84776]), NumberType(-1.5647341841975129), 10.224086634371103
8189
@test pFq(a, b, c) result atol=eps() rtol=rtol
8290
(a, b, c, result) = NumberType.([-1.08954]), NumberType.([-1.09992, -0.0898055, -1.21452]), NumberType(2.911146030454528), -281.8950930467646

0 commit comments

Comments
 (0)