Main Page | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

math.h File Reference

Go to the source code of this file.

Defines

#define HUGE_VAL   1.79769313486231570000e+308

Functions

double acos (double)
double asin (double)
double atan (double)
double atan2 (double, double)
double ceil (double)
double cos (double)
double cosh (double)
double exp (double)
double fabs (double)
double floor (double)
double fmod (double, double)
double frexp (double, int *)
double ldexp (double, int)
double log (double)
double log10 (double)
double modf (double, double *)
double pow (double, double)
double sin (double)
double sinh (double)
double sqrt (double)
double tan (double)
double tanh (double)


Define Documentation

#define HUGE_VAL   1.79769313486231570000e+308
 

Definition at line 4 of file math.h.


Function Documentation

double acos double   ) 
 

double asin double   ) 
 

double atan double   ) 
 

double atan2 double  ,
double 
 

double ceil double   ) 
 

double cos double   ) 
 

double cosh double   ) 
 

double exp double   ) 
 

double fabs double   ) 
 

double floor double   ) 
 

double fmod double  ,
double 
 

double frexp double  ,
int * 
 

double ldexp double  ,
int 
 

double log double   ) 
 

double log10 double   ) 
 

double modf double  ,
double * 
 

double pow double  ,
double 
 

Definition at line 2176 of file paranoia.c.

02178 {
02179     extern double exp(), frexp(), ldexp(), log(), modf();
02180     double xy, ye;
02181     long i;
02182     int ex, ey = 0, flip = 0;
02183 
02184     if (!y) return 1.0;
02185 
02186     if ((y < -1100. || y > 1100.) && x != -1.) return exp(y * log(x));
02187 
02188     if (y < 0.) { y = -y; flip = 1; }
02189     y = modf(y, &ye);
02190     if (y) xy = exp(y * log(x));
02191     else xy = 1.0;
02192     /* next several lines assume >= 32 bit integers */
02193     x = frexp(x, &ex);
02194     if (i = ye) for(;;) {
02195         if (i & 1) { xy *= x; ey += ex; }
02196         if (!(i >>= 1)) break;
02197         x *= x;
02198         ex *= 2;
02199         if (x < .5) { x *= 2.; ex -= 1; }
02200         }
02201     if (flip) { xy = 1. / xy; ey = -ey; }
02202     return ldexp(xy, ey);
02203 }

double sin double   ) 
 

double sinh double   ) 
 

double sqrt double   ) 
 

double tan double   ) 
 

double tanh double   ) 
 


Generated on Thu Aug 25 15:48:34 2005 for Quake III Arena by  doxygen 1.3.9.1