181 Commits

Author SHA1 Message Date
Valentin Hartmann
dc2fbddd7a added self-initialization to adaptive adams stepper 2017-06-23 11:14:22 +02:00
Valentin Hartmann
92e76299f1 corrected indentation 2017-06-22 17:50:49 +02:00
Valentin Hartmann
d0dad9a53a changed tabs to spaces in all files 2017-06-22 17:44:49 +02:00
Valentin Hartmann
b29586d9d3 implemented adaptive adams bashforth moulton to enable make_controlled 2017-06-21 18:13:25 +02:00
Valentin Hartmann
16801429c9 modifications to stepper to allow make_controlled 2017-06-20 17:04:15 +02:00
Valentin Hartmann
5fe4175a61 removed print used in debugging 2017-06-19 16:28:29 +02:00
Valentin Hartmann
28b01caee7 minor naming changes 2017-06-19 16:13:58 +02:00
Valentin Hartmann
ca966c2736 compiles without c++11 2017-06-19 10:41:38 +02:00
Valentin Hartmann
fa769dd236 Fixed small bug and added more functionality to the controller 2017-06-19 10:04:37 +02:00
Valentin Hartmann
2f098f7d86 removed tmp-file 2017-05-25 18:45:38 +02:00
Valentin Hartmann
8e2b3c2550 fixed minor things in stepper 2017-05-25 16:40:31 +02:00
Valentin Hartmann
233ebc5792 changes to files to fix warnings 2017-05-24 16:31:40 +02:00
Valentin Hartmann
6a00e946f7 Initial commit from Bitbucket to Github 2017-05-23 09:29:37 +02:00
Denis Demidov
491df811e3 Provide algebra dispatcher for boost::multi_array
Fixes #205
2017-05-10 11:35:13 +03:00
Mario Mulansky
c0e1cf30f9 Merge pull request #19 from boostorg/from_headmyshoulder
Merge from headmyshoulder/odeint-v2
2017-05-09 20:57:34 -07:00
Mario Mulansky
67e1908720 Merge branch 'master' into odeint_boost_develop
Merging headmyshoulder/master into boostorg/develop
2017-05-09 20:49:33 -07:00
Tim Keitt
f1255a8319 Fix unused variable warning 2017-01-26 12:05:53 -06:00
Karsten Ahnert
b816e93fcf fixing #12107 2016-04-01 21:39:42 +02:00
akumta
9c4a5d8f42 update for ticket #12034 2016-02-29 19:50:21 -08:00
Mario Mulansky
31c29dd948 fixes #189
A bug introduced with the recent max_dt facility prevented the rosenbrock
controller to increase step size in most cases (if max_dt=0). This is fixed
now, and a regression test case has been added.
2016-01-19 15:37:50 +01:00
Mario Mulansky
cc9b1963e7 BS stepper: correct exponents for optimal h
Becoming suspicious by the difference of the exponents used for computing the
new step size in the BS and BS denseout stepper (see
0f943fbf8b303a8083876bb1fba677d4c4677417) I checked again the Hairer book and
I'm now convinced there was a mistake in our implementation and both
steppers should use 1/(2*k+1) as exponent. The background is the this exponent
represents the order of the error of the k-th iteration, and this order is
always 2k+1, independent of the interval_sequence. This error is computed from
the difference of the k-th and k-1 - th iteration, which have the orders 2k+2
2k respectively, which means the computed error has order 2k+1.
2015-12-28 15:26:00 +01:00
Martin Langer
a625f532b1 corrected rushed fix 2015-12-28 12:04:39 +01:00
Martin Langer
0f943fbf8b fixed wrong precomputation in BS dense stepper 2015-12-27 22:42:33 +01:00
Martin Langer
61a74d2bfc fixed missing semicolon 2015-12-18 16:14:48 +01:00
Martin Langer
607bb768ba table for precomputed facmin in bulirsch_stoer_dense_out 2015-12-18 15:40:53 +01:00
Martin Langer
cc8c9772ac table for precomputed facmin in bulirsch_stoer 2015-12-18 15:32:48 +01:00
Mario Mulansky
eb2804b281 resetting optimal order when resetting BS stepper
addressing #184, simple fix is to also reset m_current_k_opt and therefore
make sure the loop doesnt overshoot.
2015-12-10 17:22:44 +01:00
Mario Mulansky
a569bdc0c5 fixing #183 2015-12-10 17:18:09 +01:00
Mario Mulansky
9d02efbff2 added reset to adams bashforth moulton
The ABM stepper was missing reset functionality, see #182
2015-12-09 12:51:50 +01:00
Mario Mulansky
1eefa78c96 Bugfix for #144 also in const version
Issue #144 has been fixed some time ago, but only for the non-const ref do_step
interface. This fixes also the const ref interface implementation.
2015-12-09 12:09:39 +01:00
Mario Mulansky
fa99c05538 Merge branch 'master' into develop 2015-12-07 17:14:46 +01:00
Mario Mulansky
f51691421c Merge branch 'master' of github.com:headmyshoulder/odeint-v2 into develop 2015-11-13 12:30:41 +01:00
Mario Mulansky
0c8e003341 Merge branch 'master' of github.com:headmyshoulder/odeint-v2
Conflicts:
	test/Jamfile.v2
2015-11-05 21:30:58 -06:00
Mario Mulansky
8385e469ed removed unnecessary comment 2015-11-02 15:17:54 -06:00
Mario Mulansky
0cba21e14b updated docstrings in integrate routines 2015-11-02 14:15:16 -06:00
Mario Mulansky
60cd09818d add max_dt to rosenbrock steppers
now all controlled and dense out steppers have step size limitation
functionality.
2015-11-01 14:21:02 -06:00
Mario Mulansky
936af851bb added max_dt to bs dense out 2015-11-01 13:38:10 -06:00
Mario Mulansky
80da40f6b5 test step limiter with negative dt + bugfix
Bugfix in error computation with negative dt.
2015-10-31 14:22:29 -06:00
Mario Mulansky
3d87ce360e added step size limitation to bulirsch stoer 2015-10-31 13:24:11 -06:00
Mario Mulansky
ed2040d48f refactored step size adjustment into own class
step size adjustment is now performed by a separate step_adjuster instead
of the error_checker. Repsonsibilities are now more clear.
2015-10-29 11:51:30 -06:00
Mario Mulansky
f338e6f12c introduced odeint exceptions
All exceptions thrown by odeint are now derived from odeint_error to
allow for a detailed exception handling.
2015-10-28 21:11:36 -06:00
Mario Mulansky
c8f28df99e removed null_checker
with the latest refactoring, the null checker is not necessary anymore.
2015-10-28 20:38:37 -06:00
Mario Mulansky
c3856f83a5 refactor all integrate functions
all integrate function now use the adaption to provide checking functionality
the implementations in detail::integrate_* are not aware of the checkers at
all.
2015-10-28 13:49:27 -06:00
Mario Mulansky
5efc181f4c refactor of integrate_times complete
integrate_times now uses checked_stepper and checked_observer to implement
the checking facility. Not that this means the integrate implementations in
detail::integrate_times have no knowledge on the checkers at all.
2015-10-28 12:50:55 -06:00
Mario Mulansky
c9eeb0f367 first step of refactoring using adapters
instead of adding the functionality within the integrate functions we
will use adapters, i.e. checked_stepper and checked_observer to implement
the checking functionality
this commit contains the first implementation of this for integrate_times
2015-10-27 18:55:11 -06:00
Mario Mulansky
6825d7af8b add max_dt support to generation functions + test
generate function now support additional max_dt parameter for setting the set
size limit.
Added a test case to check limiter behavior for controlled and dense out
integration.
2015-10-23 21:27:57 +02:00
Mario Mulansky
a006cb51fa bug fixes regarding the new step adjustment
all tests are now passing
2015-10-23 19:34:22 +02:00
Mario Mulansky
a2cd50a9dc refactor step adjustment into error_checker
the logic for step size adjustment is moved to the error_checker.
this removes code duplication and will make it easier to add step size
limiting functionality.
2015-10-23 04:27:43 +02:00
Mario Mulansky
4b7c39cbb6 updated copyright years 2015-10-09 12:24:11 +02:00
Mario Mulansky
f5ee194e7c refactor step adjustment exception
Checks for step size adjustment errors done in integrate routines and
controlled steppers are now managed by a separate failed_step_checker class.
2015-10-09 11:20:01 +02:00