Commit Graph

1384 Commits

Author SHA1 Message Date
Mario Mulansky
965a8e456d fixed #180
due to inconsistent template parameter type (int <-> size_t) resizing was not
enabled.
2015-11-04 19:46:17 -06:00
Mario Mulansky
1b55d6f218 add remark in docs about max step size limitation 2015-11-03 13:31:09 -06:00
Mario Mulansky
3241363bff added step limit description to integrate docs
the detailed docs on the integrate functions now contain a description
of the new max_step_checker functionality.
2015-11-02 15:18:17 -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
3ae97129c0 fixed harmonic_oscillator example 2015-10-29 12:21:15 -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
headmyshoulder
98080afe5a Update lorenz_point.cpp 2015-10-22 07:53:34 +02:00
Mario Mulansky
d0bbbe19fa use resize in find_crossing example
the additional state requried in the find_condition function was potentially
not allocated. Now odeint's resizing mechanism is used to ensure the correct
memory allocation.
2015-10-21 17:38:43 +02:00
Mario Mulansky
766d2cb063 +example for event detection, see #9
simple example for an event detection implementation based on dopri5
stepper and simple bisection.
Simple, straight forward implementation, but shouldnt be difficult to adapt
to other problems.
2015-10-21 00:22:46 +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
Mario Mulansky
260d848288 refined the exception 2015-10-09 09:51:00 +02:00
Mario Mulansky
fa6a914f1a added overflow exception to other integrate funcs
following the previous additions for integrate_const now also
integrate_n_steps and integrate_times support max_step overflow
exceptions.
2015-10-08 12:57:56 +02:00
Mario Mulansky
44576c3dab add checker reset in integrate_const 2015-10-06 18:06:36 +02:00
Mario Mulansky
23ffb209fa added overflow exception to integrate_const
Following the discussion in #173, the integrate_const function now
provide a mechanisms to check for TOO_MUCH_WORK situations where too
many steps are performed without any progress (i.e. observer calls).
Naturally, this only makes sense for controlled steppers or dense
output steppers.
Also, integrate_adaptive functions do not require such functionality as
there observer calls happen at every time step.
Hence, only integrate_n_steps and integrate_times will be adapted shortly
2015-10-06 17:26:18 +02:00
Mario Mulansky
703350b223 consistent counting of failed steps
the code in integrate_times for a controlled stepper and in the dense out
stepper was inconsistent in terms of when exactly to throw the exception.
See #173 for some discussion on this.
2015-10-05 17:03:08 +02:00
Mario Mulansky
576068fc6b Merge pull request #170 from bjodah/fix_multiprecision_bulirsch_stoer
Fix bug in bulirsch stoer when using multiprecision data types
2015-09-01 18:08:56 +02:00
Björn Dahlgren
95b1030f27 Apply static_cast<value_type>(...) to numerators in calc_h_opt() 2015-08-31 16:48:13 +02:00
Björn Dahlgren
62c8f4d670 Fix bug in bulirsch_stoer_dense_out.hpp when using multiprecision data types 2015-08-30 14:56:59 +02:00
Mario Mulansky
86f1a632ca Merge pull request #10 from nasailja/patch-1
Fix compilation warning
2015-08-22 19:12:40 +02:00
headmyshoulder
3d9de3519c Merge pull request #14 from nasailja/patch-5
Remove unused parameter warnings
2015-08-19 07:05:55 +02:00
headmyshoulder
dfba50ff70 Merge pull request #13 from nasailja/patch-4
Remove unused parameter warnings
2015-08-19 07:02:01 +02:00
headmyshoulder
551ef7f815 Merge pull request #12 from nasailja/patch-3
Remove unused parameter warnings
2015-08-19 07:01:54 +02:00
headmyshoulder
537054ef5b Merge pull request #11 from nasailja/patch-2
Remove unused parameter warnings
2015-08-19 07:01:42 +02:00
Ilja
836a88913b Remove unused parameter warnings 2015-08-18 14:16:07 -04:00
Ilja
55cadcd747 Remove unused parameter warnings 2015-08-18 14:15:29 -04:00
Ilja
c04ad7c090 Remove unused parameter warnings 2015-08-18 14:14:42 -04:00
Ilja
1e08fee9ce Remove unused parameter warnings 2015-08-18 14:13:45 -04:00
Ilja
d4221d9417 Fix compilation warning
warning: struct template 'reference_wrapper' was previously declared as a class template [-Wmismatched-tags]
include/boost/core/ref.hpp:59:25: note: previous use is here
2015-08-18 14:11:45 -04:00
Mario Mulansky
779fa0eac9 Merge branch 'develop' of github.com:boostorg/odeint 2015-07-20 13:22:22 +02:00
Mario Mulansky
f312a809c8 remove const-ness from bulirsch-stoer members
addressing #149
2015-07-10 13:04:25 +02:00
Karsten Ahnert
fbd9ed0010 Merge branch 'master' of https://github.com/headmyshoulder/odeint-v2 into develop 2015-07-09 22:01:48 +02:00
Mario Mulansky
b4f52468e0 removed non-existing file from Jamfile
see https://github.com/boostorg/odeint/pull/2
2015-07-09 11:54:58 +02:00
Mario Mulansky
c9165e121d cleanup travis 2015-06-30 00:24:14 +02:00
Mario Mulansky
20d5069402 use g++ 4.8 and boost 1.58 in travis 2015-06-29 23:54:35 +02:00
Mario Mulansky
f224208601 more travis updates 2015-06-29 23:27:47 +02:00
Mario Mulansky
2f73239bf1 g++4.8 2015-06-29 23:17:12 +02:00