|
| static const static double double | one = 1.00000000000000000000e+00 |
| |
| static const static double double | huge = 1.000e+300 |
| |
| static const static double double | pio2_hi = 1.57079632679489655800e+00 |
| |
| static const static double double | pio2_lo = 6.12323399573676603587e-17 |
| |
| static const static double double | pio4_hi = 7.85398163397448278999e-01 |
| |
| static const static double double | pS0 = 1.66666666666666657415e-01 |
| |
| static const static double double | pS1 = -3.25565818622400915405e-01 |
| |
| static const static double double | pS2 = 2.01212532134862925881e-01 |
| |
| static const static double double | pS3 = -4.00555345006794114027e-02 |
| |
| static const static double double | pS4 = 7.91534994289814532176e-04 |
| |
| static const static double double | pS5 = 3.47933107596021167570e-05 |
| |
| static const static double double | qS1 = -2.40339491173441421878e+00 |
| |
| static const static double double | qS2 = 2.02094576023350569471e+00 |
| |
| static const static double double | qS3 = -6.88283971605453293030e-01 |
| |
| static const static double double | qS4 = 7.70381505559019352791e-02 |
| |
| int | hx |
| |
| int | ix = hx & 0x7fffffff |
| |
| | w = one - fabs(x) |
| |
| | t = w * 0.5 |
| |
| | p = t * (pS0 + t * (pS1 + t * (pS2 + t * (pS3 + t * (pS4 + t * pS5))))) |
| |
| | q = one + t * (qS1 + t * (qS2 + t * (qS3 + t * qS4))) |
| |
| | s = sqrt(t) |
| |
| | else |
| |
| | c = (t - w * w) / (s + w) |
| |
| | r = p / q |
| |