Skip to content

Commit d982cf3

Browse files
committed
fix type/decrease U poly
1 parent 4f2219d commit d982cf3

File tree

2 files changed

+5
-13
lines changed

2 files changed

+5
-13
lines changed

src/U_polynomials.jl

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,37 +2,29 @@ function Uk_poly_Kn(p, v, p2, ::Type{Float32})
22
u0 = one(p)
33
u1 = 1 / 24 * evalpoly(p2, (3, -5))
44
u2 = 1 / 1152 * evalpoly(p2, (81, -462, 385))
5-
u3 = 1 / 414720 * evalpoly(p2, (30375, -369603, 765765, -425425))
6-
u4 = 1 / 39813120 * evalpoly(p2, (4465125, -94121676, 349922430, -446185740, 185910725))
7-
return evalpoly(-p/v, (u0, u1, u2, u3, u4))
5+
return evalpoly(-p/v, (u0, u1, u2))
86
end
97
function Uk_poly_Kn(p, v, p2, ::Type{T}) where T <: Float64
108
u0 = one(T)
119
u1 = 1 / 24 * evalpoly(p2, (3, -5))
1210
u2 = 1 / 1152 * evalpoly(p2, (81, -462, 385))
1311
u3 = 1 / 414720 * evalpoly(p2, (30375, -369603, 765765, -425425))
1412
u4 = 1 / 39813120 * evalpoly(p2, (4465125, -94121676, 349922430, -446185740, 185910725))
15-
u5 = 1 / 6688604160 * evalpoly(p2, (1519035525, -49286948607, 284499769554, -614135872350, 566098157625, -188699385875))
16-
u6 = 1 / 4815794995200 * evalpoly(p2, (2757049477875, -127577298354750, 1050760774457901, -3369032068261860,5104696716244125, -3685299006138750, 1023694168371875))
17-
return evalpoly(-p/v, (u0, u1, u2, u3, u4, u5, u6))
13+
return evalpoly(-p/v, (u0, u1, u2, u3, u4))
1814
end
1915
function Uk_poly_In(p, v, p2, ::Type{T}) where T <: Float64
2016
u0 = one(T)
2117
u1 = -1 / 24 * evalpoly(p2, (3, -5))
2218
u2 = 1 / 1152 * evalpoly(p2, (81, -462, 385))
2319
u3 = -1 / 414720 * evalpoly(p2, (30375, -369603, 765765, -425425))
2420
u4 = 1 / 39813120 * evalpoly(p2, (4465125, -94121676, 349922430, -446185740, 185910725))
25-
u5 = -1 / 6688604160 * evalpoly(p2, (1519035525, -49286948607, 284499769554, -614135872350, 566098157625, -188699385875))
26-
u6 = 1 / 4815794995200 * evalpoly(p2, (2757049477875, -127577298354750, 1050760774457901, -3369032068261860,5104696716244125, -3685299006138750, 1023694168371875))
27-
return evalpoly(-p/v, (u0, u1, u2, u3, u4, u5, u6))
21+
return evalpoly(-p/v, (u0, u1, u2, u3, u4))
2822
end
2923
function Uk_poly_In(p, v, p2, ::Type{Float32})
3024
u0 = one(p)
3125
u1 = -1 / 24 * evalpoly(p2, (3, -5))
3226
u2 = 1 / 1152 * evalpoly(p2, (81, -462, 385))
33-
u3 = -1 / 414720 * evalpoly(p2, (30375, -369603, 765765, -425425))
34-
u4 = 1 / 39813120 * evalpoly(p2, (4465125, -94121676, 349922430, -446185740, 185910725))
35-
return evalpoly(-p/v, (u0, u1, u2, u3, u4))
27+
return evalpoly(-p/v, (u0, u1, u2))
3628
end
3729

3830
#=

src/besseli.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@ function besseli_large_orders(v, x::T) where T <: Union{Float32, Float64}
178178
p = inv(zs)
179179
p2 = v^2/fma(max(v,x), max(v,x), min(v,x)^2)
180180

181-
return T(coef*Uk_poly_In(p, v, p2, Float64))
181+
return coef*Uk_poly_In(p, v, p2, T)
182182
end
183183
function besseli_large_orders_scaled(v, x::T) where T <: Union{Float32, Float64}
184184
S = promote_type(T, Float64)

0 commit comments

Comments
 (0)