Commit Graph

2947 Commits

Author SHA1 Message Date
Luc Maisonobe 03fa7c1431 A complete generic implementation of Binary Space Partitioning Trees (BSP trees)
has been added. A few specializations of this implementation are also provided
for 1D, 2D and 3D Euclidean geometry. This allows support for arbitrary
intervals sets (1D), polygons sets (2D) and polyhedrons sets (3D) with all
sets operations (union, intersection, symmetric difference, difference, complement),
with predicates (point inside/outside/on boundary, emptiness, other region contained),
with geometrical computation (barycenter, size, boundary size) and with conversions
from and to boundary representation.

JIRA: MATH-576


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1103438 13f79535-47bb-0310-9956-ffa450edef68
2011-05-15 16:02:05 +00:00
Luc Maisonobe e401d4ac06 add a retry feature for randomly failing CMA-ES optimizer test
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1103418 13f79535-47bb-0310-9956-ffa450edef68
2011-05-15 15:00:33 +00:00
Luc Maisonobe e12caa8de1 specify the field to use for field vectors and field matrices when possible
JIRA: MATH-573

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1103370 13f79535-47bb-0310-9956-ffa450edef68
2011-05-15 13:16:29 +00:00
Phil Steitz 026fb14740 Improved javadoc and added infinite/NaN argument tests for reduce.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1103182 13f79535-47bb-0310-9956-ffa450edef68
2011-05-14 18:51:26 +00:00
Phil Steitz 3424131d52 Fixed javadoc typo.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1103142 13f79535-47bb-0310-9956-ffa450edef68
2011-05-14 16:04:46 +00:00
Gilles Sadowski ee37a5197c MATH-574
Allow outer product of vectors of different sizes.


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1102704 13f79535-47bb-0310-9956-ffa450edef68
2011-05-13 13:03:30 +00:00
Gilles Sadowski b8243cc166 MATH-574
Allow outer product for vectors of different sizes.


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1102356 13f79535-47bb-0310-9956-ffa450edef68
2011-05-12 15:49:40 +00:00
Gilles Sadowski 716a7bb2df Class "RandomAdaptorTest" needlessly inherited from "RandomDataTest".
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1102229 13f79535-47bb-0310-9956-ffa450edef68
2011-05-12 10:07:19 +00:00
Luc Maisonobe 45ec0d393f Added field parameter on various constructors in Array2DRowFieldMatrix.
JIRA: MATH-573

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1102057 13f79535-47bb-0310-9956-ffa450edef68
2011-05-11 19:57:42 +00:00
Luc Maisonobe 35d78323b2 Avoid some remaining array copying in ArrayFieldVector, AbstractFieldMAtrix and AbstractRealMatrix.
JIRA: MATH-573

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1101763 13f79535-47bb-0310-9956-ffa450edef68
2011-05-11 06:57:47 +00:00
Luc Maisonobe 8ef3dd0269 Avoid some array copying in add and subtract ArrayFieldVector.
JIRA: MATH-573

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1101579 13f79535-47bb-0310-9956-ffa450edef68
2011-05-10 18:19:36 +00:00
Luc Maisonobe d84695d151 Fixed an unused constructor parameter in ArrayFieldVector.
JIRA: MATH-572

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1101575 13f79535-47bb-0310-9956-ffa450edef68
2011-05-10 18:09:07 +00:00
Gilles Sadowski c7f092e022 MATH-566
Changed all exception classes to use the new "ExceptionContext".


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1101029 13f79535-47bb-0310-9956-ffa450edef68
2011-05-09 13:54:34 +00:00
Luc Maisonobe ec6dbad43a Fixed conversion problems to/from 0 in Decimal Floating Point (Dfp) class.
JIRA: MATH-567

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1099938 13f79535-47bb-0310-9956-ffa450edef68
2011-05-05 19:41:28 +00:00
Gilles Sadowski 1df5ae529c MATH-566
Created "ExceptionContext" class.
Made "MathIllegalArgumentException" inherit from the Java standard
"IllegalArgumentException".


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1099771 13f79535-47bb-0310-9956-ffa450edef68
2011-05-05 12:37:31 +00:00
Phil Steitz ec198897ee Reuse is one word :).
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1097918 13f79535-47bb-0310-9956-ffa450edef68
2011-04-29 19:08:09 +00:00
Luc Maisonobe 556576e645 Fixed initialization of multistep ODE integrators. Relying on the interpolation model of the starter integrator inside only one step was wrong. The model may have a too low order to compute high degrees derivatives in the Nordsieck vector. Now we use several steps and use only grid points instead of interpolated points.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1097891 13f79535-47bb-0310-9956-ffa450edef68
2011-04-29 17:15:59 +00:00
Luc Maisonobe 1047f93f68 Added solve methods using double[][] to linear algebra decomposition solvers.
JIRA: MATH-564

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1097730 13f79535-47bb-0310-9956-ffa450edef68
2011-04-29 08:48:38 +00:00
Gilles Sadowski 40daf0a0d5 Doc fix (description of release 2.2 was missing).
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1097502 13f79535-47bb-0310-9956-ffa450edef68
2011-04-28 15:23:34 +00:00
Gilles Sadowski 8af698213b Doc fix.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1097462 13f79535-47bb-0310-9956-ffa450edef68
2011-04-28 13:53:23 +00:00
Gilles Sadowski dcfb76fa00 MATH-562
Interpolator adapter for periodic data.


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1097426 13f79535-47bb-0310-9956-ffa450edef68
2011-04-28 11:57:11 +00:00
Gilles Sadowski 2340a5e94c Added "@Retry" annotations.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1097418 13f79535-47bb-0310-9956-ffa450edef68
2011-04-28 11:23:06 +00:00
Gilles Sadowski 3dff269818 Javadoc fix.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1097399 13f79535-47bb-0310-9956-ffa450edef68
2011-04-28 10:27:00 +00:00
Gilles Sadowski 54bdd4a006 Unused (except in Javadoc) "import".
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1097384 13f79535-47bb-0310-9956-ffa450edef68
2011-04-28 09:41:42 +00:00
Gilles Sadowski f7b4430490 Replaced "Math" with "FastMath".
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1097094 13f79535-47bb-0310-9956-ffa450edef68
2011-04-27 12:26:48 +00:00
Gilles Sadowski e39775be72 MATH-561
Map a value to the interval [O, period).


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1097088 13f79535-47bb-0310-9956-ffa450edef68
2011-04-27 11:54:16 +00:00
Luc Maisonobe bb49301290 Added a "rectangular" Cholesky decomposition for positive semidefinite matrices.
JIRA: MATH-541

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1096496 13f79535-47bb-0310-9956-ffa450edef68
2011-04-25 15:28:12 +00:00
Luc Maisonobe 6ac4c4d226 fixed copy-paste error in javadoc
(hope to get it right this time ...)

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1096477 13f79535-47bb-0310-9956-ffa450edef68
2011-04-25 13:38:01 +00:00
Luc Maisonobe 0b9bc8cc10 grammar
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1096476 13f79535-47bb-0310-9956-ffa450edef68
2011-04-25 13:34:59 +00:00
Luc Maisonobe dad2f01046 expand javadoc to explain what Cholesky decomposition is
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1096473 13f79535-47bb-0310-9956-ffa450edef68
2011-04-25 13:31:47 +00:00
Luc Maisonobe 9853e1ba0c Added setters allowing to change the step size control parameters of adaptive step size ODE integrators
Jira: MATH-563

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1096443 13f79535-47bb-0310-9956-ffa450edef68
2011-04-25 09:45:49 +00:00
Luc Maisonobe 3bfed2129c Fixed misleading javadoc, the user supplied min and max step size are internally forced to positive and integration direction is handled later on. Asking for a positive step size was superfluous.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1096440 13f79535-47bb-0310-9956-ffa450edef68
2011-04-25 09:23:30 +00:00
Gilles Sadowski 00e957d447 Added (trivial) tests for NaNs.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1092402 13f79535-47bb-0310-9956-ffa450edef68
2011-04-14 17:37:36 +00:00
Luc Maisonobe 2bc9b4b4d1 removed obsolete field
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1091526 13f79535-47bb-0310-9956-ffa450edef68
2011-04-12 18:07:42 +00:00
Gilles Sadowski fc409e886d MATH-559
Removed "assert" statements.


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1091378 13f79535-47bb-0310-9956-ffa450edef68
2011-04-12 11:46:20 +00:00
Gilles Sadowski 47e0ef5d2e Trailing spaces.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1091376 13f79535-47bb-0310-9956-ffa450edef68
2011-04-12 11:29:02 +00:00
Gilles Sadowski 4f1c54a445 Javadoc.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1091358 13f79535-47bb-0310-9956-ffa450edef68
2011-04-12 10:04:32 +00:00
Gilles Sadowski 3fa068440f Simplified test.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1091346 13f79535-47bb-0310-9956-ffa450edef68
2011-04-12 09:41:02 +00:00
Luc Maisonobe 402279e151 make sure the test runs correctly even in a non-US environment
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1091153 13f79535-47bb-0310-9956-ffa450edef68
2011-04-11 18:02:52 +00:00
Luc Maisonobe f69fd48e53 replaced remaining getEpsilon by using ulps in double comparisons
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1091143 13f79535-47bb-0310-9956-ffa450edef68
2011-04-11 17:43:40 +00:00
Luc Maisonobe b278d97dce replaced the custom comparison method in SimplexSolver with the new MathUtils.compareTo(double, double, int) with maxUlps as the third parameter, as per Gilles advice.
Jira: MATH-434

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1090823 13f79535-47bb-0310-9956-ffa450edef68
2011-04-10 16:00:56 +00:00
Luc Maisonobe 13e5edb1b9 Added a compareTo method to MathUtils that uses a number of ulps as a tolerance error, and works well on all numbers, including normals, subnormals, signed zeroes, infinities and NaNs
Jira: MATH-557

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1090820 13f79535-47bb-0310-9956-ffa450edef68
2011-04-10 15:56:51 +00:00
Luc Maisonobe 133cbc2dbf Fixed two errors in simplex solver when entries are close together or
when variables are not restricted to non-negative.

Jira: MATH-434

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1090656 13f79535-47bb-0310-9956-ffa450edef68
2011-04-09 19:20:47 +00:00
Gilles Sadowski a3c552e324 Wrong chaining of constructors made the interesting message (indicating the maximal
count) disappear.


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1089891 13f79535-47bb-0310-9956-ffa450edef68
2011-04-07 14:33:08 +00:00
Phil Steitz 3c3c66c84f Changed to use, rathern than duplicate Realmatrix Frobenius norm.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1088902 13f79535-47bb-0310-9956-ffa450edef68
2011-04-05 05:52:21 +00:00
Phil Steitz d30be5671d Javadoc only.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1088900 13f79535-47bb-0310-9956-ffa450edef68
2011-04-05 05:33:17 +00:00
Phil Steitz f88d38ff18 Removed trailing space.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1088896 13f79535-47bb-0310-9956-ffa450edef68
2011-04-05 04:57:19 +00:00
Phil Steitz 71b826accd Changed CMAESOptimizer constructors to copy, rather than reference array arguments.
JIRA: MATH-556




git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1088895 13f79535-47bb-0310-9956-ffa450edef68
2011-04-05 04:53:53 +00:00
Phil Steitz 2394a77405 Javadoc only.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1088813 13f79535-47bb-0310-9956-ffa450edef68
2011-04-04 22:40:31 +00:00
Luc Maisonobe 129bca8975 Improved robustness of k-means++ algorithm, by tracking changes in points assignments to clusters
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1088702 13f79535-47bb-0310-9956-ffa450edef68
2011-04-04 18:32:52 +00:00