@@ -40,12 +40,10 @@ function _ellipk(m::Float64)
4040 (m === - Inf ) && return 0.0
4141
4242 flag_is_m_neg = false
43- if m < 0.0
43+ if flag_is_m_neg
4444 x = m / (m- 1 ) # dealing with negative args
45- flag_is_m_neg = true
46- elseif m >= 0.0
45+ else
4746 x = m
48- flag_is_m_neg = false
4947 end
5048
5149 if x == 0.0
@@ -57,7 +55,7 @@ function _ellipk(m::Float64)
5755 elseif x > 1.0
5856 throw (DomainError (m, " `m` must lie between -Inf and 1 ---- Domain: (-Inf,1.0]" ))
5957
60- elseif 0.0 <= x < 0.1 # Table 2 from paper
58+ elseif 0.0 < x < 0.1 # Table 2 from paper
6159 t = x- 0.05
6260 t = @horner (t,
6361 1.591003453790792180 , 0.416000743991786912 , 0.245791514264103415 ,
@@ -149,7 +147,8 @@ function _ellipk(m::Float64)
149147 1170222242422.439893 , 8777948323668.937971 , 66101242752484.95041 ,
150148 499488053713388.7989 , 37859743397240299.20 )
151149
152- elseif x >= 0.9
150+ else
151+ @assert 0.9 <= x < 1
153152 td = 1 - x
154153 td1 = td- 0.05
155154 qd = @horner (td,
@@ -214,12 +213,10 @@ function _ellipe(m::Float64)
214213 (m === - Inf ) && return Inf
215214
216215 flag_is_m_neg = false
217- if m < 0.0
216+ if flag_is_m_neg
218217 x = m / (m- 1 ) # dealing with negative args
219- flag_is_m_neg = true
220- elseif m >= 0.0
218+ else
221219 x = m
222- flag_is_m_neg = false
223220 end
224221
225222 if x == 0.0
@@ -230,7 +227,7 @@ function _ellipe(m::Float64)
230227 elseif x > 1.0
231228 throw (DomainError (m," `m` must lie between -Inf and 1 ---- Domain : (-inf,1.0]" ))
232229
233- elseif 0.0 <= x < 0.1 # Table 2 from paper
230+ elseif 0.0 < x < 0.1 # Table 2 from paper
234231 t = x- 0.05
235232 t = @horner (t ,
236233 + 1.550973351780472328 , - 0.400301020103198524 , - 0.078498619442941939 ,
@@ -317,7 +314,8 @@ function _ellipe(m::Float64)
317314 - 16120097.81581656797 , - 109209938.5203089915 , - 749380758.1942496220 ,
318315 - 5198725846.725541393 , - 36409256888.12139973 )
319316
320- elseif x >= 0.9
317+ else
318+ @assert 0.9 <= x < 1.0
321319 td = 1 - x
322320 td1 = td- 0.05
323321
0 commit comments