| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 | /*							mconf.h * *	Common include file for math routines * * * * SYNOPSIS: * * #include "mconf.h" * * * * DESCRIPTION: * * This file contains definitions for error codes that are * passed to the common error handling routine mtherr() * (which see). * * The file also includes a conditional assembly definition * for the type of computer arithmetic (IEEE, DEC, Motorola * IEEE, or UNKnown). * * For Digital Equipment PDP-11 and VAX computers, certain * IBM systems, and others that use numbers with a 56-bit * significand, the symbol DEC should be defined.  In this * mode, most floating point constants are given as arrays * of octal integers to eliminate decimal to binary conversion * errors that might be introduced by the compiler. * * For computers, such as IBM PC, that follow the IEEE  * Standard for Binary Floating Point Arithmetic (ANSI/IEEE * Std 754-1985), the symbol IBMPC should be defined.  These * numbers have 53-bit significands.  In this mode, constants * are provided as arrays of hexadecimal 16 bit integers. * * To accommodate other types of computer arithmetic, all * constants are also provided in a normal decimal radix * which one can hope are correctly converted to a suitable * format by the available C language compiler.  To invoke * this mode, the symbol UNK is defined. * * An important difference among these modes is a predefined * set of machine arithmetic constants for each.  The numbers * MACHEP (the machine roundoff error), MAXNUM (largest number * represented), and several other parameters are preset by * the configuration symbol.  Check the file const.c to * ensure that these values are correct for your computer. * *//*Cephes Math Library Release 2.0:  April, 1987by Stephen L. MoshierDirect inquiries to 30 Frost Street, Cambridge, MA 02140*//* Constant definitions for math error conditions */#define DOMAIN		1	/* argument domain error */#define SING		2	/* argument singularity */#define OVERFLOW	3	/* overflow range error */#define UNDERFLOW	4	/* underflow range error */#define TLOSS		5	/* total loss of precision */#define PLOSS		6	/* partial loss of precision */#define EDOM		33#define ERANGE		34/*typedef struct	{	double r;	double i;	}cmplx;*//* Type of computer arithmetic *//* PDP-11, Pro350, VAX: *//*define DEC 1*//* Intel IEEE, low order words come first: */#define IBMPC 1/* Motorola IEEE, high order words come first * (Sun workstation): *//*define MIEEE 1*//* UNKnown arithmetic, invokes coefficients given in * normal decimal format.  Beware of range boundary * problems (MACHEP, MAXLOG, etc. in const.c) and * roundoff problems in pow.c: */ /*define UNK 1*//* Define to ask for infinity support, else undefine. */#define INFINITY/* Define to ask for Not-a-Number support, else undefine. */#define NANS/* Define to support denormal numbers, else undefine. */#define DENORMAL
 |