besselI.nuAsym {Bessel} R Documentation

## Asymptotic Expansion of Bessel I(x,nu) and K(x,nu) for Large nu (and x)

### Description

Compute Bessel functions I_{\nu}(x) and K_{\nu}(x) for large \nu and possibly large x, using asymptotic expansions in Debye polynomials.

### Usage

besselI.nuAsym(x, nu, k.max, expon.scaled = FALSE, log = FALSE)
besselK.nuAsym(x, nu, k.max, expon.scaled = FALSE, log = FALSE)


### Arguments

 x numeric or complex, with real part \ge 0. nu numeric; The order (maybe fractional!) of the corresponding Bessel function. k.max integer number of terms in the expansion. Must be in 0:5, currently. expon.scaled logical; if TRUE, the results are exponentially scaled, the same as in the corresponding BesselI() and BesselK() functions in order to avoid overflow (I_{\nu}) or underflow (K_{\nu}), respectively. log logical; if TRUE, \log(f(.)) is returned instead of f.

### Details

Abramowitz & Stegun , page 378, has formula 9.7.7 and 9.7.8 for the asymptotic expansions of I_{\nu}(x) and K_{\nu}(x), respectively, also saying When \nu \to +\infty, these expansions (of I_{\nu}(\nu z) and K_{\nu}(\nu z)) hold uniformly with respect to z in the sector |arg z| \le \frac{1}{2} \pi - \epsilon, where \epsilon iw qn arbitrary positive number. and for this reason, we require \Re(x) \ge 0.

The Debye polynomials u_k(x) are defined in 9.3.9 and 9.3.10 (page 366).

### Value

a numeric vector of the same length as the long of x and nu. (usual argument recycling is applied implicitly.)

Martin Maechler

### References

Abramowitz, M., and Stegun, I. A. (1955, etc). Handbook of mathematical functions (NBS AMS series 55, U.S. Dept. of Commerce), pp. 366, 378.

From this package Bessel: BesselI(); further, besselIasym() for the case when x is large and \nu is small or moderate.

Further, from base: besselI, etc.

### Examples

x <- c(1:10, 20, 50, 100, 100000)
nu <- c(1, 10, 20, 50, 10^(2:10))

sapply(0:4, function(k.)
sapply(nu, function(n.)
besselI.nuAsym(x, nu=n., k.max = k., log = TRUE)))

sapply(0:4, function(k.)
sapply(nu, function(n.)
besselK.nuAsym(x, nu=n., k.max = k., log = TRUE)))


[Package Bessel version 0.6-0 Index]