Commit Graph

1918 Commits

Author SHA1 Message Date
Sebastian Bazley 7f8175d4f6 Fix thread-safety issues
- code failed to use synch. read
- code could potentially use two different random Generators if another thread changed it

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786918 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 22:17:36 +00:00
Phil Steitz f4275f3371 Made aggregation threadsafe.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786911 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 21:35:32 +00:00
Luc Maisonobe aa118ca31c removed old maven 1 stuff
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786900 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 20:02:27 +00:00
Luc Maisonobe 45786158ab adding missing Apache header
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786890 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 19:23:44 +00:00
Luc Maisonobe b6de8e8e8f documented Adams-Bashforth and Adams-Moulton ODE integrators
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786885 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 19:06:55 +00:00
Luc Maisonobe a4ef3f9941 fixed a warning about a mission serializeVersionUID.
However, should this really be serializable at all ?

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786883 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 18:57:30 +00:00
Luc Maisonobe 4474f96263 removed lots of serialization in ODE
the only classes/interfaces for which serialization is really important in this package are the step interpolators. The reason for that is that the ContinuousOutputModel is explicitly serializable and contains step interpolators. This allows users to perform integration of any complex model and to save the result of the integration for all integration range by serializing a ContinuousOutputModel instance. This feature is a major one.

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786881 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 18:53:08 +00:00
Luc Maisonobe 5fc860d2c1 removed serialization for multistart optimizers
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786878 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 18:17:32 +00:00
Luc Maisonobe d8575cde51 changed the Adams-Bashforth and Adams-Moulton multistep integrators to adaptive stepsize.
this was made possible thanks to the Nordsieck representation of integration state

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786877 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 18:15:54 +00:00
Luc Maisonobe 83ec0f9328 completely changed integration start phase: now the starter integrator for
multistep methods do not advance time anymore, it is interrupted at first step
end and the interpolator is used to reconstruct Nordsieck vector information at
integration start. Then the normal multistep integrators does start also exactly
at integration start and is responsible for all time advancing stuff, including
step handlers and events handlers management.

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786875 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 18:13:24 +00:00
Luc Maisonobe 8702a27155 simplified arrays allocation and copying
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786874 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 18:09:16 +00:00
Luc Maisonobe 1308cc984e error messages for Loess interpolation
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786821 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 13:43:29 +00:00
Luc Maisonobe c5f6dff523 added Loess interpolator, applying Eugene Kirpichov's patch
JIRA: MATH-278

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786819 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 13:42:56 +00:00
Luc Maisonobe 90fee3729f fixed checkstyle errors
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786817 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 13:31:48 +00:00
William Barker 355857cbeb Change Complex to use readResolve instead of introspection
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786751 13f79535-47bb-0310-9956-ffa450edef68
2009-06-20 03:00:18 +00:00
Luc Maisonobe 136d06b2b3 added back findbugs exclusion rules for a deprecated class that is still there under its old name
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786482 13f79535-47bb-0310-9956-ffa450edef68
2009-06-19 12:38:01 +00:00
Luc Maisonobe 2a1842f3ef merged curve fitting from mantissa into commons-math
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786479 13f79535-47bb-0310-9956-ffa450edef68
2009-06-19 12:36:16 +00:00
Luc Maisonobe 6463532544 added internal error generation for defensive programming
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786478 13f79535-47bb-0310-9956-ffa450edef68
2009-06-19 12:33:36 +00:00
Luc Maisonobe 74a6186c3e added new tests
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786467 13f79535-47bb-0310-9956-ffa450edef68
2009-06-19 12:04:01 +00:00
Luc Maisonobe e81ef196cd added protection against infinite loops by setting a maximal number of evaluations
(some classes were forgotten in the first pass to fix this problem)

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786466 13f79535-47bb-0310-9956-ffa450edef68
2009-06-19 12:03:14 +00:00
William Barker b09a8717be Change the Complex isNaN and isInfinite fields to be transient
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@786359 13f79535-47bb-0310-9956-ffa450edef68
2009-06-19 03:26:28 +00:00
Phil Steitz b353f0daa6 Optimized isNaN, isInfinite. Jira: MATH-2276. Contributed by Mark Anderson.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@785552 13f79535-47bb-0310-9956-ffa450edef68
2009-06-17 11:00:40 +00:00
William Barker 913ff1facc More Serialization changes, mostly for ode and friends.
Unfortunately, had to leave some abstract base classes as Serializable, since they had no senible default construters.  But left them with meaningless UIDs, to break anyone that doesn't override it.

Of course, if anyone has a better patch, I'm happy to implement it.  At this point, the serialization changes for [math] should be almost done.


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@785473 13f79535-47bb-0310-9956-ffa450edef68
2009-06-17 04:02:35 +00:00
Phil Steitz e082a039f8 Added Genetic Algorithm implementation.
JIRA: MATH-207
Contributed by David Stefka

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@784604 13f79535-47bb-0310-9956-ffa450edef68
2009-06-14 19:04:32 +00:00
Luc Maisonobe 496d85cf17 removed remaining references to DenseXxx{Matrix/Vector}
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@783741 13f79535-47bb-0310-9956-ffa450edef68
2009-06-11 12:35:42 +00:00
Luc Maisonobe 30ab6c8c3d renamed RealMatrixImpl, RealVectorImpl, FieldMatrixImpl and FieldVectorImpl
into Array2DRowRealMatrix, ArrayRealVector, Array2DRowFieldMatrix and ArrayFieldVector
as suggested by Sam in http://markmail.org/message/hh37ivxpzaoapekj

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@783702 13f79535-47bb-0310-9956-ffa450edef68
2009-06-11 08:54:02 +00:00
Luc Maisonobe 6fb3ae713e switch the matrix type built by factory methods depending on the dimension
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@783680 13f79535-47bb-0310-9956-ffa450edef68
2009-06-11 08:06:05 +00:00
Luc Maisonobe 37ee8dbfe6 renamed Dense{Real/Field}Matrix into Block{Real/Field}Matrix
as suggested by Phil in http://markmail.org/message/iibgiz4bsv6hjjvh

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@783678 13f79535-47bb-0310-9956-ffa450edef68
2009-06-11 08:05:24 +00:00
Luc Maisonobe 9d4fb6760b prevent too small (sometimes exactly 0) steps to occur
when an event is within convergence tolerance to the step end

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@783529 13f79535-47bb-0310-9956-ffa450edef68
2009-06-10 21:44:33 +00:00
Luc Maisonobe b63d261b54 fixed a forgotten field in copy constructor
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@783516 13f79535-47bb-0310-9956-ffa450edef68
2009-06-10 20:58:29 +00:00
Luc Maisonobe ed2301fb81 fixed checkstyle errors
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@783114 13f79535-47bb-0310-9956-ffa450edef68
2009-06-09 19:43:55 +00:00
Luc Maisonobe a70c0de4a2 added support for max number of evaluations to ODE integrators
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@783103 13f79535-47bb-0310-9956-ffa450edef68
2009-06-09 19:33:19 +00:00
Luc Maisonobe 23055a70ce removed unneeded import
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@783044 13f79535-47bb-0310-9956-ffa450edef68
2009-06-09 15:36:29 +00:00
Luc Maisonobe d96d9b3b15 removed unneeded import
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@783041 13f79535-47bb-0310-9956-ffa450edef68
2009-06-09 15:34:55 +00:00
William Barker d088734d25 Serialization changes for optimization.
Still need to add junit test, but for this it doesn't look like a blocker.


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@782468 13f79535-47bb-0310-9956-ffa450edef68
2009-06-07 21:24:18 +00:00
Luc Maisonobe aaf87073b5 changed again the Adams-Bashforth and Adams-Moulton integrators
they now both use Nordsieck representation
this is the first really usable implementation, it still integrates only with fixed stepsize,
but thanks to Nordsieck representation they will be improved to adaptive stepsize soon

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@782442 13f79535-47bb-0310-9956-ffa450edef68
2009-06-07 19:19:35 +00:00
Luc Maisonobe 677c5e1ab9 removed step interpolator prototype
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@782438 13f79535-47bb-0310-9956-ffa450edef68
2009-06-07 19:15:14 +00:00
Luc Maisonobe 2138d3bfba added serialization test
changed tests to Junit 4

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@782435 13f79535-47bb-0310-9956-ffa450edef68
2009-06-07 19:13:17 +00:00
Luc Maisonobe 6dec8fa07d improved max errors computations: previously, NaN values induces the error update to be skipped, thus leading to artificially good results
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@782434 13f79535-47bb-0310-9956-ffa450edef68
2009-06-07 19:12:18 +00:00
Luc Maisonobe d2429d337c updated step interpolators implementations tests to latest interface changes
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@782433 13f79535-47bb-0310-9956-ffa450edef68
2009-06-07 19:10:23 +00:00
Luc Maisonobe 5124ebc4c2 updated step interpolators implementations to latest interface changes
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@782432 13f79535-47bb-0310-9956-ffa450edef68
2009-06-07 19:08:26 +00:00
Luc Maisonobe 7de1b628c6 added a lazy evaluation for step interpolators
moved the possible exceptions from setInterpolatedTime (which now does almost nothing) to getInterpolatedState and getInterpolatedDerivatives (which now do the evaluations)
renamed an internal function to make sure people overriding it don't forget to set the derivatives


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@782431 13f79535-47bb-0310-9956-ffa450edef68
2009-06-07 19:04:37 +00:00
Luc Maisonobe edb1f394c0 removed a print
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@781847 13f79535-47bb-0310-9956-ffa450edef68
2009-06-04 20:18:50 +00:00
Luc Maisonobe 6b547ba222 fixed detection of not positive definite matrices
JIRA: MATH-274

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@781845 13f79535-47bb-0310-9956-ffa450edef68
2009-06-04 20:07:29 +00:00
Luc Maisonobe 59434c2dce Fixed a wrong check for basic variables
JIRA: MATH-273

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@781304 13f79535-47bb-0310-9956-ffa450edef68
2009-06-03 09:06:08 +00:00
Luc Maisonobe 10cdc1066f fixed javadoc link
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@781167 13f79535-47bb-0310-9956-ffa450edef68
2009-06-02 21:02:14 +00:00
Luc Maisonobe 2e55dbbe69 removed unneeded import statement
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@781160 13f79535-47bb-0310-9956-ffa450edef68
2009-06-02 20:46:45 +00:00
Luc Maisonobe 4db6140e9a reenabled tests
removed a development test that was committed by error

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@781159 13f79535-47bb-0310-9956-ffa450edef68
2009-06-02 20:45:53 +00:00
Luc Maisonobe 1cdc029378 fixed event handling during multistep restart phase,
the interpolator used for regular integration and the interpolator used during restart went out of sync

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@781158 13f79535-47bb-0310-9956-ffa450edef68
2009-06-02 20:43:59 +00:00
Luc Maisonobe b2fa57cbfe fixed corner cases when events occur right at integration start
(which in fact always happen when a resetting event forces a restart just after the event has occurred)

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@781157 13f79535-47bb-0310-9956-ffa450edef68
2009-06-02 20:42:15 +00:00