Exemplo n.º 1
0
float k1f(float xx)
{
  float x, y;

  x = xx;
  if( x <= 2.0 )
    {
      y = x * x - 2.0;
      y =  logf( 0.5f * x ) * i1f(x)  +  chbevlf( y, A, 7 ) / x;
      return( y );
    }
  return(  expf(-x) * chbevlf( (float)(8.0/x - 2.0), B, 10 ) / sqrtf(x) );
}
Exemplo n.º 2
0
float i0f( float x )
{
float y;

if( x < 0 )
	x = -x;
if( x <= 8.0f )
	{
	y = 0.5f*x - 2.0f;
	return( expf(x) * chbevlf( y, A_i0f, 18 ) );
	}

return(  expf(x) * chbevlf( 32.0f/x - 2.0f, B_i0f, 7 ) / sqrtf(x) );
}
Exemplo n.º 3
0
float i1f(float xx)
{ 
float x, y, z;

x = xx;
z = fabsf(x);
if( z <= 8.0f )
	{
	y = 0.5f*z - 2.0f;
	z = chbevlf( y, A_i1f, 17 ) * z * expf(z);
	}
else
	{
	z = expf(z) * chbevlf( 32.0f/z - 2.0f, B_i1f, 7 ) / sqrtf(z);
	}
if( x < 0.0f )
	z = -z;
return( z );
}
Exemplo n.º 4
0
float k1f(float xx)
{
float x, y;

x = xx;
if( x <= MINNUMF )
        /*
	{
	mtherr( "k1f", DOMAIN );
	return( MAXNUMF );
	}
	*/
	assert(0);

if( x <= 2.0f )
	{
	y = x * x - 2.0f;
	y =  logf( 0.5f * x ) * i1f(x)  +  chbevlf( y, A_k1f, 7 ) / x;
	return( y );
	}

return(  expf(-x) * chbevlf( 8.0f/x - 2.0f, B_k1f, 10 ) / sqrtf(x) );

}
Exemplo n.º 5
0
float k0f( float xx )
{
float x, y, z;

x = xx;
if( x <= 0.0f )
	/*
	{
	mtherr( "k0f", DOMAIN );
	return( MAXNUMF );
	}
        */
	assert(0);

if( x <= 2.0f )
	{
	y = x * x - 2.0f;
	y = chbevlf( y, A_k0f, 7 ) - logf( 0.5f * x ) * i0f(x);
	return( y );
	}
z = 8.0f/x - 2.0f;
y = expf(-x) * chbevlf( z, B_k0f, 10 ) / sqrtf(x);
return(y);
}