home *** CD-ROM | disk | FTP | other *** search
- /*
- * math.h glue functions (double precision math) ...
- */
-
- #ifndef __FP__
- #include <fp.h>
- #endif
-
- /*
- * We can't include both fp.h and math.h since their definitions of cos, etc... conflict
- */
-
- #ifdef cplusplus
- extern "C" {
- #endif
- double cosd(double);
- double sind(double);
- double tand(double);
- double acosd(double);
- double asind(double);
- double atand(double);
- double atan2d(double, double);
- double coshd(double);
- double sinhd(double);
- double tanhd(double);
- double expd(double);
- double frexpd(double, int *);
- double ldexpd(double, int);
- double logd(double);
- double log10d(double);
- double modfd(double, double *);
- double fabsd(double);
- double powd(double, double);
- double sqrtd(double);
- double ceild(double);
- double floord(double);
- double fmodd(double, double);
- #ifdef cplusplus
- }
- #endif
-
- /*******************************************************************************
- * Trigonometric functions *
- *******************************************************************************/
-
- /* double definitions */
- double cosd(double x)
- {
- return((cos)(x));
- }
-
- double sind(double x)
- {
- return((sin)(x));
- }
-
- double tand(double x)
- {
- return((tan)(x));
- }
-
- double acosd(double x)
- {
- return((acos)(x));
- }
-
- double asind(double x)
- {
- return((asin)(x));
- }
-
- double atand(double x)
- {
- return((atan)(x));
- }
-
- double atan2d(double x, double y)
- {
- return((atan2)(x,y));
- }
-
- /*******************************************************************************
- * Hyperbolic functions *
- *******************************************************************************/
-
- double coshd(double x)
- {
- return((cosh)(x));
- }
-
- double sinhd(double x)
- {
- return((sinh)(x));
- }
-
- double tanhd(double x)
- {
- return((tanh)(x));
- }
-
- /*******************************************************************************
- * Exponential functions *
- *******************************************************************************/
-
- double expd(double x)
- {
- return((exp)(x));
- }
-
- double frexpd(double x, int *exponent)
- {
- return((frexp)(x,exponent));
- }
-
- double ldexpd(double x, int n)
- {
- return((ldexp)(x,n));
- }
-
- double logd(double x)
- {
- return((log)(x));
- }
-
- double log10d(double x)
- {
- return((log10)(x));
- }
-
- double modfd(double x, double *iptr)
- {
- double_t result, iptr_dt=*iptr;
-
- result = (modf)(x,&iptr_dt);
- *iptr=iptr_dt;
- return(result);
- }
-
- /*******************************************************************************
- * Power and absolute value functions *
- *******************************************************************************/
-
- double fabsd(double x)
- {
- return((fabs)(x));
- }
-
- double powd(double x, double y)
- {
- return((pow)(x,y));
- }
-
- double sqrtd(double x)
- {
- return((sqrt)(x));
- }
-
- /*******************************************************************************
- * Nearest integer functions *
- *******************************************************************************/
-
- double ceild(double x)
- {
- return((ceil)(x));
- }
-
- double floord(double x)
- {
- return((floor)(x));
- }
-
- /*******************************************************************************
- * Remainder functions *
- *******************************************************************************/
-
- double fmodd(double x, double y)
- {
- return((fmod)(x,y));
- }
-