home *** CD-ROM | disk | FTP | other *** search
/ Simtel MSDOS - Coast to Coast / simteldosarchivecoasttocoast2.iso / c / math.h < prev    next >
C/C++ Source or Header  |  1994-03-04  |  2KB  |  55 lines

  1. /*
  2.  *    S T A N D A R D   H E A D E R    F I L E
  3.  *
  4.  *        M A T H   P A C K A G E
  5.  *
  6.  *        Max R. Dursteler, Rockville Md.
  7.  */
  8.  
  9.     /* Functions */
  10.  
  11. extern double fabs(), floor(), ceil(), fmod();
  12. extern double sqrt(), exp(), exp2(), log(), log10(), pow(), pw10();
  13.  
  14. extern double sin(), cos(), tan(), asin(), acos(), atan();
  15.  
  16. struct complex {     /* structure for complex numbers */
  17.     double rl;
  18.     double im;
  19. };
  20.     /* Usefull constants */
  21.  
  22. #define BLKSIZE 512
  23. #define MAXINT    32767
  24. #define BIG    72057594037927936.        /* Maximum precision of DOUBLE */
  25. #define HUGE    1.701411733192644270e38     /* Largest DOUBLE */
  26. #define LOGHUGE 39                /* 10^39 --> Largest power */
  27. #define LN2    0.69314718055994530941
  28. #define LN10    2.30258509299404568401
  29. #define E    2.7182818284590452353602874
  30. #define SQRT2    1.41421356237309504880
  31. #define HALFSQRT2    .70710678118654752440
  32. #define PI    3.141592653589793238462643
  33. #define QUARTPI 0.78539816339744830962
  34. #define HALFPI    1.57079632679489661923
  35. #define TWOPI    6.28318530717958647692
  36. #define RADPDEG 0.01745329251994329576
  37.  
  38.         /* macros */
  39.  
  40. #define sqr(x)    ((x) * (x))
  41. #define sgn(x)    ((x) < 0 ? -1 : 1)
  42. #define xswap(a,b) a ^= b, b ^= a, a ^= b
  43. #define swap(a,b,c) c = a, a = b, b = c
  44. #define max(x,y)    ((x) >= (y) ? (x) : (y))
  45. #define min(x,y)    ((x) <= (y) ? (x) : (y))
  46. #define abs(x)        ((x)<0? -(x):(x))    /* Integer Absolute value */
  47. #define fabs(x)     ((x)<0.? -(x):(x))    /* Floating absolute value */
  48. #define mod(x,y)    ((x)%(y))        /* Integer modulo */
  49. #define logE(x)     (log(x))        /* Natural log */
  50. #define ln(x)        (log(x))        /* Natural log */
  51. #define cos(x)        (sin(x+HALFPI))     /* Cosinus [radians] */
  52. #define tan(x)        (sin(x)/cos(x))     /* Tangens [radians] */
  53.  
  54. /* End of math.h */
  55.