1 extern float A[], B[]; 2 extern float MAXNUMF; 3 float chbevlf(float, float *, int); 4 float expf(float), i1f(float), logf(float), sqrtf(float); 5 k1f(float xx)6float k1f(float xx) 7 { 8 float x, y; 9 10 x = xx; 11 if( x <= 2.0 ) 12 { 13 y = x * x - 2.0; 14 y = logf( 0.5f * x ) * i1f(x) + chbevlf( y, A, 7 ) / x; 15 return( y ); 16 } 17 return( expf(-x) * chbevlf( (float)(8.0/x - 2.0), B, 10 ) / sqrtf(x) ); 18 } 19