cc [ flags ] -I/usr/local/include file(s) -L/usr/local/lib -lmcw [ ... ] #include <mathcw.h> extern void vbif (int n, float I[/* n+1 */], float x); extern void vbi (int n, double I[/* n+1 */], double x); extern void vbil (int n, long double I[/* n+1 */], long double x); extern void vbiw (int n, __float80 I[/* n+1 */], __float80 x); extern void vbiq (int n, __float128 I[/* n+1 */], __float128 x); extern void vbill (int n, long_long_double I[/* n+1 */], long_long_double x); extern void vbidf (int n, decimal_float I[/* n+1 */], decimal_float x); extern void vbid (int n, decimal_double I[/* n+1 */], decimal_double x); extern void vbidl (int n, decimal_long_double decimal_long_double I[/* n+1 */], decimal_long_double x); extern void vbidll (int n, decimal_long_long_double decimal_long_long_double I[/* n+1 */], decimal_long_long_double x);
NB: Functions with prototypes containing underscores in type names may be available only with certain extended compilers.
This function is considerably faster than one that simply invokes bin(k,x) for each element.
The modified Bessel functions provided by these software implementations are defined according to Chapter 9, Bessel Functions of Integer Order, of the Handbook of Mathematical Functions, edited by Milton Abramowitz and Irene A. Stegun, National Bureau of Standards Applied Mathematics Series #55, US Department of Commerce, Washington, DC (1964).
The I(n,x) functions grow exponentially with increasing x, and overflow even with moderate x values. For that reason, there is a related family of functions that return values of this Bessel function reduced by a factor of exp(-x); see vbis(3CW).