.C(zbiry, ..)
correctly now, thanks to Alexios Galanos.
Using cospi(nu)
instead of cos(pi*nu)
, for
negative nu
, both in BesselJ()
and BesselY()
may
increase accuracy.
Rd-crossrefs: replace \linkS4class{mpfr}
by
\link[Rmpfr:mpfr-class]{mpfr}
.
The exponential rescaling for the asymptotic version of the
I()
function has been changed (for non-real
complex arguments) to be compatible to the scaling for
BesselI()
.
deprecate bI()
to use besselIs()
instead –
enable log = TRUE
option and test it.
new besselJs()
, i.e., Taylor series for J_n(x)
;
using lssum()
for alternating exp/log sum, also works with
Rmpfr's mpfr()
high precision numbers.
use C routine registration, adding safety and a bit of speed.
improved documentation for Bessel functions Ai,Bi, H, I,J,K,Y.
besselI.nuAsym()
and besselK.nuAsym()
now allow maximal
k.max = 5
(instead of 4
).
new besselKasym()
(9.7.2 of A.&S. p.378).
All the TOMS 644 routines get an optional argument
verbose
indicating the verbosity level of output notably from
C code. The output itself may change and is not part of the API.
fix BesselI(<cmplx>, nu < 0, expo..=TRUE)
bug thanks
to Hiroyuki Kawakatsu.
better warning message (r29).
the TOMS 644 routines Bessel[HIYJK] and Airy[AB] now all
return NaN
with a warning instead of stopping with an error
in case of low level error ierr == 4
.
BesselK(0,*)
is zero now, and BesselH(m,
z=0,..)
returns Inf/NaN combinations.
Both no longer end with an error (from ierr == 1
).
BesselK(<negative>, 3)
and BesselJ(*)
now also
return the correct imaginary part instead of just a numeric value.
besselIs(z, nu)
now also works for complex
z
.
Adapt to new standard: move vignettes to own ‘vignettes/’ directory.
Improved vignette
BesselY(0, nu)
should not give an error message
from zbesy()
, but either -Inf (real 0) or something like
"Inf + NaN i"
.
Cosmetic, mainly for R CMD check
besselI.nuAsym()
and besselK.nuAsym()
asymptotic versions for large nu
and/or x
See the ‘ChangeLog’ file in the sources.