Benjamin Peterson
9de7298102
remove redundant sentence
2008-12-20 22:49:24 +00:00
Benjamin Peterson
fed67fd41e
beef up docstring
2008-12-20 02:57:19 +00:00
Mark Dickinson
4c96fa5525
Issues #3167 , #3682 : tests for math.log and math.log10 were failing on
...
Solaris and OpenBSD. Fix this by handling special values and domain
errors directly in mathmodule.c, passing only positive nonspecial floats
to the system log/log10.
2008-12-11 19:28:08 +00:00
Mark Dickinson
ff3fdce0d2
Replace math.sum with math.fsum in a couple of comments
...
that were missed by r65308
2008-07-30 16:25:16 +00:00
Mark Dickinson
fef6b13c32
Rename math.sum to math.fsum
2008-07-30 16:20:10 +00:00
Mark Dickinson
abe0aee3cf
Fix special-value handling for math.sum.
...
Also minor cleanups to the code: fix tabbing, remove
trailing whitespace, and reformat to fit into 80
columns.
2008-07-30 12:01:41 +00:00
Mark Dickinson
2fcd8c9703
Fix another typo in math_sum comment
2008-06-20 15:26:19 +00:00
Andrew M. Kuchling
5f198bee4e
Fix comment typos
2008-06-20 02:11:42 +00:00
Raymond Hettinger
2281da42b0
Fix double decref.
2008-06-18 00:56:57 +00:00
Mark Dickinson
fb1c4b98e9
Issue 3118: make test_math pass on Ubuntu/ia64. exp(-745.0) was raising
...
OverflowError incorrectly on this platform, presumably as a result of
the libm setting errno = ERANGE for this call.
2008-06-17 21:16:55 +00:00
Raymond Hettinger
d623414141
Unhappy buildbots. Revert 64052. Long doubles have unexpected effects on some builds.
2008-06-09 11:24:47 +00:00
Raymond Hettinger
7b1ed66372
Address double-rounding scenarios by setting all variables to long doubles.
2008-06-09 09:29:17 +00:00
Raymond Hettinger
ecbdd2e9b0
Issue #2138 : Add math.factorial().
2008-06-09 06:54:45 +00:00
Raymond Hettinger
ef712d6fd3
* Mark intermedidate computes values (hi, lo, yr) as volatile.
...
* Expand comments.
* Swap variable names in the sum_exact code so that x and y
are consistently chosen as the larger and smaller magnitude
values respectively.
2008-05-30 18:20:50 +00:00
Raymond Hettinger
2a9179ac73
Fix two typos.
2008-05-29 08:38:23 +00:00
Raymond Hettinger
778d5cc4fb
Tweak the comments and formatting.
2008-05-23 04:32:43 +00:00
Mark Dickinson
99dfe92759
Issue #2819 : Add math.sum, a function that sums a sequence of floats
...
efficiently but with no intermediate loss of precision. Based on
Raymond Hettinger's ASPN recipe. Thanks Jean Brouwers for the patch.
2008-05-23 01:35:30 +00:00
Mark Dickinson
f8476c1573
Issue #2487 . math.ldexp(x, n) raised OverflowError when n was large and
...
negative; fix to return an (appropriately signed) zero instead.
2008-05-09 17:54:23 +00:00
Mark Dickinson
0da94c8a34
Silence 'r may be used uninitialized' compiler warning.
2008-04-21 01:55:50 +00:00
Mark Dickinson
92483cd8da
math.atan2 is misbehaving on Windows; this patch
...
should fix the problem in the same way that
the cmath.phase problems were fixed.
2008-04-20 21:39:04 +00:00
Mark Dickinson
cec3f138d8
Yet more explicit special case handling to make
...
math.pow behave on alpha Tru64. All IEEE 754
special values are now handled directly; only
the finite**finite case is handled by libm.
2008-04-20 04:13:13 +00:00
Mark Dickinson
b2f7090239
FreeBSD doesn't follow C99 for modf(inf); so add explicit
...
special-value handling to math.modf code.
2008-04-20 01:39:24 +00:00
Mark Dickinson
a1293eb65f
Additional special-case handling for math.pow.
...
Windows/VS2008 doesn't like (-1)**(+-inf).
2008-04-19 19:41:52 +00:00
Mark Dickinson
e941d97d12
Additional tests for math.pow, and extra special-case
...
handling code in math.pow, in the hope of making all
tests pass on the alpha Tru64 buildbot.
2008-04-19 18:51:48 +00:00
Christian Heimes
6f34109384
I finally got the time to update and merge Mark's and my trunk-math branch. The patch is collaborated work of Mark Dickinson and me. It was mostly done a few months ago. The patch fixes a lot of loose ends and edge cases related to operations with NaN, INF, very small values and complex math.
...
The patch also adds acosh, asinh, atanh, log1p and copysign to all platforms. Finally it fixes differences between platforms like different results or exceptions for edge cases. Have fun :)
2008-04-18 23:13:07 +00:00