Commit Graph

2520 Commits

Author SHA1 Message Date
Sebastian Bazley 38b3ea4a57 Check all FastMath methods against StrictMath results
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062895 13f79535-47bb-0310-9956-ffa450edef68
2011-01-24 17:34:02 +00:00
Sebastian Bazley 3e737a51f4 MATH-477 FastMath Javadoc should show which methods actually use java.lang.Math internally
Also fixed round(int) to use local FastMath method

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062765 13f79535-47bb-0310-9956-ffa450edef68
2011-01-24 13:20:28 +00:00
Sebastian Bazley 36d220f3dd MATH-493 FastMath min and max fail with (Infinity,-Infinity) and (0,0, -0.0)
Fixing (0,0, -0.0) by using code from Harmony.

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062759 13f79535-47bb-0310-9956-ffa450edef68
2011-01-24 12:48:15 +00:00
Gilles Sadowski ac701188fe MATH-500
Deprecation.


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062691 13f79535-47bb-0310-9956-ffa450edef68
2011-01-24 09:12:47 +00:00
Phil Steitz 010a45dd4d Reverted incompatible change.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062564 13f79535-47bb-0310-9956-ffa450edef68
2011-01-23 22:55:43 +00:00
Luc Maisonobe f55eb717d2 added FastMath.hypot
JIRA: MATH-478

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062558 13f79535-47bb-0310-9956-ffa450edef68
2011-01-23 22:37:15 +00:00
Luc Maisonobe 483954b005 javadoc
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062553 13f79535-47bb-0310-9956-ffa450edef68
2011-01-23 22:27:12 +00:00
Luc Maisonobe 9af0c6fc0f added FastMath.scalb(double, int) and FastMath.scalb(float, int)
deprecated MathUtils.scalb(double, int)
JIRA: MATH-498

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062549 13f79535-47bb-0310-9956-ffa450edef68
2011-01-23 22:19:37 +00:00
Sebastian Bazley c111a2fe34 Split testPerformance() into new class
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062455 13f79535-47bb-0310-9956-ffa450edef68
2011-01-23 15:42:34 +00:00
Sebastian Bazley c3d918b031 Update nextAfter Javadoc
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062407 13f79535-47bb-0310-9956-ffa450edef68
2011-01-23 12:21:36 +00:00
Luc Maisonobe 562b0c8823 fixed nextAfter implementations for handling of some special values
fixed the signature of the float version, as the spec is to have a double second argument
moved the existing tests that were used in the former implementation in MathUtils,
fixing them also as two of them were not compliant with the spec for equal numbers
Jira: MATH-478

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062385 13f79535-47bb-0310-9956-ffa450edef68
2011-01-23 11:04:32 +00:00
Luc Maisonobe 93b6030cce added getExponent methods to FastMath
JIRA: MATH-497

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062365 13f79535-47bb-0310-9956-ffa450edef68
2011-01-23 10:26:36 +00:00
Luc Maisonobe 38e62e398c announced bugs fixed by sebb
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062362 13f79535-47bb-0310-9956-ffa450edef68
2011-01-23 10:24:07 +00:00
Luc Maisonobe 213b03288e javadoc
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062360 13f79535-47bb-0310-9956-ffa450edef68
2011-01-23 10:17:29 +00:00
Sebastian Bazley 86ae7efc71 MATH-496 Create FastMath copySign methods
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062304 13f79535-47bb-0310-9956-ffa450edef68
2011-01-23 00:58:07 +00:00
Sebastian Bazley fcc41aa360 Should only test against public methods.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062302 13f79535-47bb-0310-9956-ffa450edef68
2011-01-23 00:53:08 +00:00
Sebastian Bazley ebe4b3e92b Javadoc tweak
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062261 13f79535-47bb-0310-9956-ffa450edef68
2011-01-22 20:28:59 +00:00
Sebastian Bazley 5ac0307deb Simplify code by using doubleHighPart
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062258 13f79535-47bb-0310-9956-ffa450edef68
2011-01-22 20:26:34 +00:00
Sebastian Bazley fd9fbe39b6 Update changes
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062255 13f79535-47bb-0310-9956-ffa450edef68
2011-01-22 20:22:51 +00:00
Sebastian Bazley 0dfbea22f6 MATH-494 FastMath atan2 does not agree with StrictMath for special cases
Add doubleHighPart() method to better handle splitting high absolute values
Add getSign() utility method

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062254 13f79535-47bb-0310-9956-ffa450edef68
2011-01-22 20:20:48 +00:00
Sebastian Bazley 29b239c339 Tidy up debug output
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062188 13f79535-47bb-0310-9956-ffa450edef68
2011-01-22 16:22:47 +00:00
Sebastian Bazley bef749d133 MATH-494 Allow for sufficiently close numbers but still detect +/- 0 difference
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062088 13f79535-47bb-0310-9956-ffa450edef68
2011-01-22 01:43:22 +00:00
Sebastian Bazley 6e8eb2db36 MATH-493 FastMath min and max fail with (Infinity,-Infinity)
(still to fix zero case)

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062038 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 21:45:29 +00:00
Sebastian Bazley 82ceb5bd8b Correct list of unique methods
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1062008 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 20:24:53 +00:00
Sebastian Bazley 61cf9a03bb MATH-478 FastMath is not an exact replacement for StrictMath
Add missing methods - TODO implement our own versions
Document which methods are additional to StrictMath

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061994 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 20:04:00 +00:00
Sebastian Bazley db32be75ed Make Special test methods generic
Add tests for two parameters
Add checks for missing or extra methods

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061985 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 19:57:06 +00:00
Gilles Sadowski b75950b99c MATH-492
Deprecation.


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061843 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 15:22:43 +00:00
Gilles Sadowski c2d100638e MATH-491
Deprecation.


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061778 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 12:12:39 +00:00
Gilles Sadowski 465289b2d6 MATH-488
Deprecation.


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061720 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 10:21:23 +00:00
Sebastian Bazley 2bffd4c500 Bugs have been fixed; fail in future
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061629 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 04:38:29 +00:00
Sebastian Bazley cfb6896015 Typo in constant name
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061627 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 04:36:26 +00:00
Sebastian Bazley 431d2ac4aa MATH-476 FastMath code contains 'magic' numbers
Extracted 2^52 value as a constant

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061626 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 04:35:21 +00:00
Sebastian Bazley f22cf44524 MATH-476 FastMath code contains 'magic' numbers
Extracted "splitter" value as a constant

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061620 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 04:02:29 +00:00
Sebastian Bazley 76670baf34 MATH-489 FastMath acos fails when input abs value is less than about 5.7851920321187236E-300 - returns NaN
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061610 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 03:30:02 +00:00
Sebastian Bazley f7a55439e3 MATH-489 Fix overflows in acos calculation
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061608 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 03:23:13 +00:00
Sebastian Bazley 74ea427b00 Javadoc
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061604 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 02:54:13 +00:00
Sebastian Bazley 07743b18ea Fix up double nextAfter special cases; add float test
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061603 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 02:46:14 +00:00
Sebastian Bazley 1f34194a4e Only check public methods
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061598 13f79535-47bb-0310-9956-ffa450edef68
2011-01-21 02:23:34 +00:00
Luc Maisonobe 9d38793a28 improved javadoc on infinite values for nextAfter
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061554 13f79535-47bb-0310-9956-ffa450edef68
2011-01-20 22:38:14 +00:00
Luc Maisonobe a22dc58437 fixed behavior of nextAfter(double, double) for infinity,
added nextAfter(float, float) and nextUp(float)
JIRA: MATH-478

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061550 13f79535-47bb-0310-9956-ffa450edef68
2011-01-20 22:33:38 +00:00
Luc Maisonobe 07095c2b48 limit visibility of event states list to AbstractIntegrator class only
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061526 13f79535-47bb-0310-9956-ffa450edef68
2011-01-20 21:31:34 +00:00
Luc Maisonobe 1de860722e separate discrete event detection from adaptive step size handling in ODE solvers,
thus improving robustness, maintainability and speed
JIRA: MATH-484


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061507 13f79535-47bb-0310-9956-ffa450edef68
2011-01-20 20:55:00 +00:00
Luc Maisonobe 1264fc3c07 added MathInternalError
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061496 13f79535-47bb-0310-9956-ffa450edef68
2011-01-20 20:32:16 +00:00
Sebastian Bazley 045305d491 Rearrange DOUBLE_SPECIAL_VALUES in decreasing absolute value to help catch first failure
Add MathUtils.EPSILON and SAFE_MIN as other likely break points

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061320 13f79535-47bb-0310-9956-ffa450edef68
2011-01-20 14:44:52 +00:00
Sebastian Bazley d8e10dccd9 Javadoc clarification for signum
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1061095 13f79535-47bb-0310-9956-ffa450edef68
2011-01-20 01:27:35 +00:00
Sebastian Bazley 8ed1ec3a3d Update changes with recent fixes
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1060977 13f79535-47bb-0310-9956-ffa450edef68
2011-01-19 20:41:38 +00:00
Sebastian Bazley b2ef8f7c91 MATH-486 FastMath toRadian and toDegree don't handle large double numbers well
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1060966 13f79535-47bb-0310-9956-ffa450edef68
2011-01-19 20:25:52 +00:00
Sebastian Bazley 4b430370aa Synchronise with copy from trunk
No functional changes

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1060961 13f79535-47bb-0310-9956-ffa450edef68
2011-01-19 20:17:38 +00:00
Sebastian Bazley 485d717636 Ensure correct sign when toRadians() returns zero
[Not needed for toDegrees() as the calculation does not underflow]

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1060960 13f79535-47bb-0310-9956-ffa450edef68
2011-01-19 20:13:11 +00:00
Sebastian Bazley 6cdfda8ce1 MATH-483 FastMath does not handle all special cases correctly
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_X@1060930 13f79535-47bb-0310-9956-ffa450edef68
2011-01-19 19:42:50 +00:00