static public double k0e(double x) throws ArithmeticException {
  double y;
  if (x <= 0.0)   throw new ArithmeticException();
  if (x <= 2.0) {
    y=x * x - 2.0;
    y=Arithmetic.chbevl(y,A_k0,10) - Math.log(0.5 * x) * i0(x);
    return (y * Math.exp(x));
  }
  y=Arithmetic.chbevl(8.0 / x - 2.0,B_k0,25) / Math.sqrt(x);
  return (y);
}

static public double k0e ( double x ) throws ArithmeticException { double y ; if ( x <= 0.0 ) throw new ArithmeticException ( ) ; if ( x <= 2.0 ) { y = x * x - 2.0 ; y = Arithmetic . chbevl ( y , A_k0 , 10 ) - Math . log ( 0.5 * x ) * i0 ( x ) ; return ( y * Math . exp ( x ) ) ; } y = Arithmetic . chbevl ( 8.0 / x - 2.0 , B_k0 , 25 ) / Math . sqrt ( x ) ; return ( y ) ; }
returns the exponentially scaled modified bessel function of the third kind of order 0 of the argument .
