@@ -228,14 +228,9 @@ for f in (
228
228
# base/special/log.jl
229
229
:log , :log1p ,
230
230
# base/special/gamma.jl
231
- :gamma , :lfact , :digamma , :trigamma , :zeta , :eta ,
232
- # base/special/erf.jl
233
- :erfcx , :erfi , :dawson ,
234
- # base/special/bessel.jl
235
- :airyai , :airyaiprime , :airybi , :airybiprime ,
236
- :besselj0 , :besselj1 , :bessely0 , :bessely1 ,
231
+ :gamma , :lfact ,
237
232
# base/math.jl
238
- :cbrt , :sinh , :cosh , :tanh , :atan , :asinh , :exp , :erf , :erfc , : exp2 ,
233
+ :cbrt , :sinh , :cosh , :tanh , :atan , :asinh , :exp , :exp2 ,
239
234
:expm1 , :exp10 , :sin , :cos , :tan , :asin , :acos , :acosh , :atanh ,
240
235
#= :log,=# :log2 , :log10 , :lgamma , #= :log1p,=# :sqrt ,
241
236
# base/floatfuncs.jl
@@ -254,8 +249,6 @@ for f in ( :acos_fast, :acosh_fast, :angle_fast, :asin_fast, :asinh_fast,
254
249
@eval FastMath Base. @dep_vectorize_1arg Number $ f
255
250
end
256
251
for f in (
257
- :invdigamma , # base/special/gamma.jl
258
- :erfinc , :erfcinv , # base/special/erf.jl
259
252
:trunc , :floor , :ceil , :round , # base/floatfuncs.jl
260
253
:rad2deg , :deg2rad , :exponent , :significand , # base/math.jl
261
254
:sind , :cosd , :tand , :asind , :acosd , :atand , :asecd , :acscd , :acotd , # base/special/trig.jl
294
287
# Deprecate @vectorize_2arg-vectorized functions from...
295
288
for f in (
296
289
# base/special/gamma.jl
297
- :polygamma , :zeta , :beta , :lbeta ,
298
- # base/special/bessel.jl
299
- :besseli , :besselix , :besselj , :besseljx ,
300
- :besselk , :besselkx , :bessely , :besselyx , :besselh ,
301
- :besselhx , :hankelh1 , :hankelh2 , :hankelh1x , :hankelh2x ,
290
+ :beta , :lbeta ,
302
291
# base/math.jl
303
292
:log , :hypot , :atan2 ,
304
293
)
674
663
# Deprecate isimag (#19947).
675
664
@deprecate isimag (z:: Number ) iszero (real (z))
676
665
677
- @deprecate airy (z:: Number ) airyai (z)
678
- @deprecate airyx (z:: Number ) airyaix (z)
679
- @deprecate airyprime (z:: Number ) airyaiprime (z)
680
- @deprecate airy (x:: AbstractArray{<:Number} ) airyai .(x)
681
- @deprecate airyx (x:: AbstractArray{<:Number} ) airyaix .(x)
682
- @deprecate airyprime (x:: AbstractArray{<:Number} ) airyprime .(x)
683
-
684
- function _airy (k:: Integer , z:: Complex128 )
685
- depwarn (" `airy(k,x)` is deprecated, use `airyai(x)`, `airyaiprime(x)`, `airybi(x)` or `airybiprime(x)` instead." ,:airy )
686
- id = Int32 (k== 1 || k== 3 )
687
- if k == 0 || k == 1
688
- return Base. Math. _airy (z, id, Int32 (1 ))
689
- elseif k == 2 || k == 3
690
- return Base. Math. _biry (z, id, Int32 (1 ))
691
- else
692
- throw (ArgumentError (" k must be between 0 and 3" ))
693
- end
694
- end
695
- function _airyx (k:: Integer , z:: Complex128 )
696
- depwarn (" `airyx(k,x)` is deprecated, use `airyaix(x)`, `airyaiprimex(x)`, `airybix(x)` or `airybiprimex(x)` instead." ,:airyx )
697
- id = Int32 (k== 1 || k== 3 )
698
- if k == 0 || k == 1
699
- return Base. Math. _airy (z, id, Int32 (2 ))
700
- elseif k == 2 || k == 3
701
- return Base. Math. _biry (z, id, Int32 (2 ))
702
- else
703
- throw (ArgumentError (" k must be between 0 and 3" ))
704
- end
705
- end
706
-
707
- for afn in (:airy ,:airyx )
708
- _afn = Symbol (" _" * string (afn))
709
- suf = string (afn)[5 : end ]
710
- @eval begin
711
- function $afn (k:: Integer , z:: Complex128 )
712
- afn = $ (QuoteNode (afn))
713
- suf = $ (QuoteNode (suf))
714
- depwarn (" `$afn (k,x)` is deprecated, use `airyai$suf (x)`, `airyaiprime$suf (x)`, `airybi$suf (x)` or `airybiprime$suf (x)` instead." ,$ (QuoteNode (afn)))
715
- $ _afn (k,z)
716
- end
717
-
718
- $ afn (k:: Integer , z:: Complex ) = $ afn (k, float (z))
719
- $ afn (k:: Integer , z:: Complex{<:AbstractFloat} ) = throw (MethodError ($ afn,(k,z)))
720
- $ afn (k:: Integer , z:: Complex64 ) = Complex64 ($ afn (k, Complex128 (z)))
721
- $ afn (k:: Integer , x:: Real ) = $ afn (k, float (x))
722
- $ afn (k:: Integer , x:: AbstractFloat ) = real ($ afn (k, complex (x)))
723
-
724
- function $afn (k:: Number , x:: AbstractArray{<:Number} )
725
- $ afn .(k,x)
726
- end
727
- function $afn (k:: AbstractArray{<:Number} , x:: Number )
728
- $ afn .(k,x)
729
- end
730
- function $afn (k:: AbstractArray{<:Number} , x:: AbstractArray{<:Number} )
731
- $ afn .(k,x)
732
- end
733
- end
734
- end
735
-
736
666
# Deprecate vectorized xor in favor of compact broadcast syntax
737
667
@deprecate xor (a:: Bool , B:: BitArray ) xor .(a, B)
738
668
@deprecate xor (A:: BitArray , b:: Bool ) xor .(A, b)
@@ -1231,6 +1161,24 @@ end
1231
1161
1232
1162
# TODO : remove warning for using `_` in parse_input_line in base/client.jl
1233
1163
1164
+ # Special functions have been moved to a package
1165
+ for f in (:airyai , :airyaiprime , :airybi , :airybiprime , :airyaix , :airyaiprimex , :airybix , :airybiprimex ,
1166
+ :besselh , :besselhx , :besseli , :besselix , :besselj , :besselj0 , :besselj1 , :besseljx , :besselk ,
1167
+ :besselkx , :bessely , :bessely0 , :bessely1 , :besselyx ,
1168
+ :dawson , :erf , :erfc , :erfcinv , :erfcx , :erfi , :erfinv ,
1169
+ :eta , :zeta , :digamma , :invdigamma , :polygamma , :trigamma ,
1170
+ :hankelh1 , :hankelh1x , :hankelh2 , :hankelh2x ,
1171
+ :airy , :airyx , :airyprime )
1172
+ @eval begin
1173
+ function $f (args... ; kwargs... )
1174
+ error (string ($ f, args, " has been moved to the package SpecialFunctions.jl.\n " ,
1175
+ " Run Pkg.add(\" SpecialFunctions\" ) to install SpecialFunctions on Julia v0.6 and later,\n " ,
1176
+ " and then run `using SpecialFunctions`." ))
1177
+ end
1178
+ export $ f
1179
+ end
1180
+ end
1181
+
1234
1182
# END 0.6 deprecations
1235
1183
1236
1184
# BEGIN 1.0 deprecations
0 commit comments