Commit Graph

1510 Commits

Author SHA1 Message Date
Luc Maisonobe 4da38a0b39 added in user guide a reference to the Vector3DFormat class for input/output.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@680034 13f79535-47bb-0310-9956-ffa450edef68
2008-07-26 19:47:56 +00:00
Luc Maisonobe ac99bbd13c filtered out findbugs warnings for intentional and documented features
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@680032 13f79535-47bb-0310-9956-ffa450edef68
2008-07-26 19:35:35 +00:00
Luc Maisonobe ccbe22eb02 added a Vector3DFormat class
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@680029 13f79535-47bb-0310-9956-ffa450edef68
2008-07-26 18:31:41 +00:00
Luc Maisonobe 7004e490aa extracted a CompositeFormat base class from ComplexFormat
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@680026 13f79535-47bb-0310-9956-ffa450edef68
2008-07-26 18:28:45 +00:00
Niall Pemberton 51a7a27740 change commons-parent to version 11
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@678500 13f79535-47bb-0310-9956-ffa450edef68
2008-07-21 17:45:31 +00:00
Niall Pemberton 60131cca73 change commons-parent to version 11
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@678495 13f79535-47bb-0310-9956-ffa450edef68
2008-07-21 17:43:58 +00:00
Luc Maisonobe f745b46abf fixed javadoc related checkstyle errors
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@676891 13f79535-47bb-0310-9956-ffa450edef68
2008-07-15 11:53:23 +00:00
Luc Maisonobe 642e3f63f2 removed false comment
(coefficients are not cached, they are computed for each new instance)

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@676882 13f79535-47bb-0310-9956-ffa450edef68
2008-07-15 11:34:46 +00:00
Luc Maisonobe 8365d33be2 New ODE integrators have been added: the explicit Adams-Bashforth and implicit
Adams-Moulton multistep methods. These methods support customizable starter
integrators and support discrete events even during the start phase.
All these methods provide the same rich features has the existing ones:
continuous output, step handlers, discrete events, G-stop ...


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@676737 13f79535-47bb-0310-9956-ffa450edef68
2008-07-14 21:13:23 +00:00
Luc Maisonobe 4fb3ee4e70 preparing test to work with multistep integrators
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@676622 13f79535-47bb-0310-9956-ffa450edef68
2008-07-14 15:16:11 +00:00
Luc Maisonobe a28698bb0c fixed test which did not bounce properly when convergence setting was low
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@676620 13f79535-47bb-0310-9956-ffa450edef68
2008-07-14 15:14:42 +00:00
Luc Maisonobe 0c125f71ed fixed a problem preventing integration stop when end time was exactly 0
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@676618 13f79535-47bb-0310-9956-ffa450edef68
2008-07-14 15:12:36 +00:00
Luc Maisonobe e1306edb51 fixed step size handling in borderline cases.
When an even occurred at step start, the step size dropped to zero
which put integration in an infinite loop

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@676615 13f79535-47bb-0310-9956-ffa450edef68
2008-07-14 15:08:51 +00:00
Luc Maisonobe 87d350f022 FixedStepHandler now extends Serializable.
This should have been done before when the integrator and problem
interfaces were changed too, but was forgotten.

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@676612 13f79535-47bb-0310-9956-ffa450edef68
2008-07-14 14:58:57 +00:00
Luc Maisonobe 77cd728359 improved robustness in case of events just at integration start
When an event occurs exactly at integration start, the first truncated
steps ends up with zero size. This induced problems with forward/backward
sensing based on this step alone. This also induced an infinite loop in
the calling integrators.

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@676610 13f79535-47bb-0310-9956-ffa450edef68
2008-07-14 14:51:33 +00:00
Luc Maisonobe 1c3e5de60b fixed a problem introduced by recent changes,
thanks to Phil to spot it

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@676291 13f79535-47bb-0310-9956-ffa450edef68
2008-07-13 09:55:01 +00:00
Phil Steitz 22d13e1232 Refactored data specification in multiple regression api. JIRA: MATH-255. Patched by Mauro Televi.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@676241 13f79535-47bb-0310-9956-ffa450edef68
2008-07-12 21:41:17 +00:00
Luc Maisonobe b51a782d1b Simplified integration end handling using the same method as other integrators
(based on a dedicated event handler)

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@675589 13f79535-47bb-0310-9956-ffa450edef68
2008-07-10 14:22:13 +00:00
Luc Maisonobe df6766e1e3 prevent zero-length steps from generating NaN
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@675578 13f79535-47bb-0310-9956-ffa450edef68
2008-07-10 14:06:17 +00:00
Luc Maisonobe e7a11765d4 updated test after step handling changes
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@675576 13f79535-47bb-0310-9956-ffa450edef68
2008-07-10 14:05:01 +00:00
Luc Maisonobe b3cfa0fdb9 allow root search even in reverse direction
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@675554 13f79535-47bb-0310-9956-ffa450edef68
2008-07-10 12:49:54 +00:00
Luc Maisonobe 22e5ce3884 Replaced size adjustment of all steps of fixed steps Runge-Kutta integrators by a truncation of the last step only.
JIRA: MATH-214

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@675552 13f79535-47bb-0310-9956-ffa450edef68
2008-07-10 12:42:30 +00:00
Luc Maisonobe b0b7c6ef38 Replaced size adjustment of all steps of fixed steps Runge-Kutta integrators by a truncation of the last step only.
JIRA: MATH-214

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@675551 13f79535-47bb-0310-9956-ffa450edef68
2008-07-10 12:40:44 +00:00
Luc Maisonobe f6c3d3f104 introduced an upper level interface for all ODE integrators
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@674821 13f79535-47bb-0310-9956-ffa450edef68
2008-07-08 13:39:27 +00:00
Luc Maisonobe e6b0184007 introduced an upper level interface for all ODE integrators
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@674820 13f79535-47bb-0310-9956-ffa450edef68
2008-07-08 13:37:09 +00:00
Luc Maisonobe 086a0ede1e The ODE integrators now support several step handlers at once, instead of just one.
This is more consistent with event handlers management.
The setStepHandler method has therefore been replaced by addStephandler, the
getStepHandler method has been replaced by getStepHandlers which returns a Collection
and a clearStepHandlers method has been added.

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@674817 13f79535-47bb-0310-9956-ffa450edef68
2008-07-08 13:32:00 +00:00
Luc Maisonobe 08dae2254b The ODE integrators now support several step handlers at once, instead of just one.
This is more consistent with event handlers management.
The setStepHandler method has therefore been replaced by addStephandler, the
getStepHandler method has been replaced by getStepHandlers which returns a Collection
and a clearStepHandlers method has been added.


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@674814 13f79535-47bb-0310-9956-ffa450edef68
2008-07-08 13:26:59 +00:00
Luc Maisonobe c52ab55875 fixed javadoc links
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@673953 13f79535-47bb-0310-9956-ffa450edef68
2008-07-04 08:25:26 +00:00
Luc Maisonobe 31b3876063 renamed AbstractStepInterpolatorTest into StepInterpolatorAbstractTest
to match existing maven exclusion patterns

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@673772 13f79535-47bb-0310-9956-ffa450edef68
2008-07-03 19:31:58 +00:00
Luc Maisonobe 8c3ae1b97a added a common abstract class for testing time-derivatives consistencies in step interpolators
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@673762 13f79535-47bb-0310-9956-ffa450edef68
2008-07-03 18:56:38 +00:00
Luc Maisonobe f8a38cb73e All step interpolators for ODE integrators now provide interpolation for
both the state and its time derivatives. The interpolated derivatives are
the exact derivatives of the interpolated state, thus preserving consistency.
The general step handlers hence do not need to call the derivation function
anymore. The fixed step handlers also get the time derivative of the state
as an additional argument along with the state when they are called.


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@673759 13f79535-47bb-0310-9956-ffa450edef68
2008-07-03 18:51:56 +00:00
Luc Maisonobe 79287ddb7c pushed common code up in the AbstractIntegrator base class
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@673755 13f79535-47bb-0310-9956-ffa450edef68
2008-07-03 18:36:03 +00:00
Luc Maisonobe 3fdd549c50 added a way to retrieve the meta-data associated with event handlers
(max iteration count, convergence, check interval)

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@673752 13f79535-47bb-0310-9956-ffa450edef68
2008-07-03 18:29:32 +00:00
Luc Maisonobe 84e30a013d fixed typos
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@673751 13f79535-47bb-0310-9956-ffa450edef68
2008-07-03 18:25:30 +00:00
Luc Maisonobe 24e6771406 added a top-level AbstractIntegrator class to manage events and step handlers
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@673069 13f79535-47bb-0310-9956-ffa450edef68
2008-07-01 12:36:20 +00:00
Luc Maisonobe 1d078f3d10 added missing keywords
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@673068 13f79535-47bb-0310-9956-ffa450edef68
2008-07-01 12:34:18 +00:00
Luc Maisonobe 6d4200df71 Changed return type for FirstOrderIntegrator.integrate() to double
in order to retrieve exact stop time. This allows to handle properly
integration interruption due to an EventHandler instance asking to
stop the integration when its associated event is triggered. The state
was already set to the current state at interruption time, but it was
difficult to get the corresponding time (it involved setting a step
handler monitoring the last step specially).

JIRA: MATH-213


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@671168 13f79535-47bb-0310-9956-ffa450edef68
2008-06-24 13:38:28 +00:00
Luc Maisonobe f11d7217fd ported all changes from trunk between r6152100 (branch 2.0 creation) and r670469 (today)
These changes contain fixes for MATH-204 and MATH-205


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@670569 13f79535-47bb-0310-9956-ffa450edef68
2008-06-23 13:46:46 +00:00
Luc Maisonobe 0010754c0b clarified the ODE package by breaking in into several sub-packages and renaming
classes. This also prepares future work for non-stiff solvers.

SwitchingFunctions is now known as EventHandler
SwitchingFunctionsHandler is now known as CombinedEventsManager

The user manual as also been slightly improved, both to reflect these changes
and to make it easier to grasp the underlying principles in our implementation
of ODE solving


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@670469 13f79535-47bb-0310-9956-ffa450edef68
2008-06-23 08:01:38 +00:00
Luc Maisonobe 60042cfcd2 Changed return type for FirstOrderIntegrator.getSwitchingFunctions()
to a collection of SwitchingFunction instances. This better suits the
intended use of the method and fixes a visibility error since the
previous return type referenced the package private SwitchState class.

JIRA: MATH-210


git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@669851 13f79535-47bb-0310-9956-ffa450edef68
2008-06-20 10:59:33 +00:00
Luc Maisonobe 6f4e48d42a fixed dimension error in operate method for RealMatrixImpl and BigMatrixImpl
JIRA: MATH-209

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@668798 13f79535-47bb-0310-9956-ffa450edef68
2008-06-17 19:09:36 +00:00
Luc Maisonobe 87e066ad31 replaced inefficient constructors Character(char) by Character.valueOf(char)
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@668117 13f79535-47bb-0310-9956-ffa450edef68
2008-06-16 11:28:34 +00:00
Luc Maisonobe 151be95053 missing dot at end of javadoc first sentence
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@668107 13f79535-47bb-0310-9956-ffa450edef68
2008-06-16 10:47:50 +00:00
Luc Maisonobe e2a9416471 The FirstOrderDifferentialEquations and FirstOrderIntegrator interfaces now extends Serializable.
This allows users to embed implementations of these interfaces in their objects when their
objects needs to be serializable.

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@668106 13f79535-47bb-0310-9956-ffa450edef68
2008-06-16 10:46:44 +00:00
Luc Maisonobe 57fbcf7362 fixed javadoc link
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@668105 13f79535-47bb-0310-9956-ffa450edef68
2008-06-16 10:40:12 +00:00
Phil Steitz f9b8731e89 Added another OLS test case.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@667880 13f79535-47bb-0310-9956-ffa450edef68
2008-06-14 20:59:31 +00:00
Phil Steitz 240749484c Made assertEquals display difference between arguments.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@667879 13f79535-47bb-0310-9956-ffa450edef68
2008-06-14 20:58:43 +00:00
Luc Maisonobe 815cb8949d putting the <project> tag on one line as recommended by the commons wiki
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@667869 13f79535-47bb-0310-9956-ffa450edef68
2008-06-14 19:30:44 +00:00
Luc Maisonobe d056eaadab replaced inefficient use of constructors for Integer, Long, Float and Double
by the recommended static valueOf methods that cache results

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@666292 13f79535-47bb-0310-9956-ffa450edef68
2008-06-10 19:32:52 +00:00
Luc Maisonobe 71174b5602 fixed a type error in array parameter
(String[] instead of Object[] as in super constructor ... and all other exceptions)
fixed a typo

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/branches/MATH_2_0@666287 13f79535-47bb-0310-9956-ffa450edef68
2008-06-10 19:21:24 +00:00