Share via


Bessel Functions: _y0, _y1, _yn

Compute the Bessel function.

double_y0(doublex**);**

double_y1(doublex**);**

double_yn(intn**,doublex);**

Routine Required Header Compatibility
_y0 <math.h> Win 95, Win NT
_y1 <math.h> Win 95, Win NT
_yn <math.h> Win 95, Win NT

For additional compatibility information, see Compatibility in the Introduction.

Libraries

LIBC.LIB Single thread static library, retail version
LIBCMT.LIB Multithread static library, retail version
MSVCRT.LIB Import library for MSVCRT.DLL, retail version

Return Value

Each of these routines returns a Bessel function of x. If x is negative, the routine sets errno to EDOM, prints a _DOMAIN error message to stderr, and returns _HUGE_VAL. You can modify error handling by using _matherr.

Parameters

x

Floating-point value

n

Integer order of Bessel function

Remarks

The _y0, _y1, and _yn routines return Bessel functions of the second kind: orders 0, 1, and n, respectively.

Example

/* BESSEL.C: This program illustrates Bessel functions,
 * including:    _j0   _j1   _jn   _y0   _y1   _yn
 */

#include <math.h>
#include <stdio.h>

void main( void )
{
   double x = 2.387;
   int n = 3, c;

   printf( "Bessel functions for x = %f:\n", x );
   printf( " Kind\t\tOrder\tFunction\tResult\n\n" );
   printf( " First\t\t0\t_j0( x )\t%f\n", _j0( x ) );
   printf( " First\t\t1\t_j1( x )\t%f\n", _j1( x ) );
   for( c = 2; c < 5; c++ )
      printf( " First\t\t%d\t_jn( n, x )\t%f\n", c, _jn( c, x ) );
   printf( " Second\t0\t_y0( x )\t%f\n", _y0( x ) );
   printf( " Second\t1\t_y1( x )\t%f\n", _y1( x ) );
   for( c = 2; c < 5; c++ )
      printf( " Second\t%d\t_yn( n, x )\t%f\n", c, _yn( c, x ) );
}

Output

Bessel functions for x = 2.387000:
  Kind      Order   Function   Result

  First      0   _j0( x )   0.009288
  First      1   _j1( x )   0.522941
  First      2   _jn( n, x )   0.428870
  First      3   _jn( n, x )   0.195734
  First      4   _jn( n, x )   0.063131
  Second   0   _y0( x )   0.511681
  Second   1   _y1( x )   0.094374
  Second   2   _yn( n, x )   -0.432608
  Second   3   _yn( n, x )   -0.819314
  Second   4   _yn( n, x )   -1.626833

Floating-Point Support RoutinesBessel Functions

See Also   _matherr