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
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
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
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
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
ff755ff96e
fixes #168
...
fixed bug in less_eq_with_sign. equality was not correctly checked for, which
resulted in wrong behavior when the numeric type had
std::numeric_limits<T>::epsilon() == 0.
2015-06-29 15:27:44 +02:00
Mario Mulansky
45fd4331c2
fix #166
...
use correct iterator (const) in norm_inf of openmp_range_algebra.
2015-06-14 16:23:54 +02:00
Mario Mulansky
656e1466cf
Merge pull request #161 from ds283/bulirsch-stoer-segfault
...
Adjust allocation of bulirsch_stoer_dense_out::m_diffs to avoid segmentation fault
2015-04-23 12:03:55 +02:00
David Seery
3625ae1ef1
Adjust allocation of bulirsch_stoer_dense_out::m_diffs to avoid segmentation fault
2015-04-22 11:57:17 +01:00
Arash
25febac10b
Update integrate_adaptive.hpp
...
This assignment inside the while loop is redundant.
2015-04-22 14:32:01 +10:00
David Seery
d7d2dd5743
Fix formatting
2015-04-19 12:51:54 +01:00
David Seery
307aff4f5e
Switch <iterator>-1 for --<iterator> in integrate_times() to allow use with bidirectional iterators
2015-04-19 09:21:45 +01:00
Karsten Ahnert
69d6b39e32
Merge branch 'develop' of https://github.com/boostorg/odeint into develop
2015-03-09 07:01:46 +01:00
Karsten Ahnert
9a14adf963
using using std::max
2015-03-08 21:53:13 +01:00
akumta
c5b3053f84
Update implicit_euler.hpp
...
Per ticket 11081.
2015-03-06 11:57:58 -08:00
Karsten Ahnert
304a1d459b
fixes Trac Ticket #11011
2015-02-12 10:32:14 +01:00
Mario Mulansky
f9c7763eda
doxygen text
2015-02-01 18:14:09 +01:00
Mario Mulansky
c23fdbeb8f
extrapolation stepper as init stepper for abm
...
extrapolation stepper has a configurable order, so we can use it as
initializing stepper in the adams-bashforth algorithm. All numeric tests pass.
2015-02-01 18:08:39 +01:00
Mario Mulansky
0721600e50
new extrapolation stepper
2015-02-01 16:32:18 +01:00
Karsten Ahnert
d3ca31a8e3
removing warnings, see track ticket #10931
2015-01-29 23:27:44 +01:00
Karsten Ahnert
4adf0b0f80
fixes #150
2015-01-29 21:45:06 +01:00
Mario Mulansky
f5079fb258
add init_stepper as template param to abm stepper
...
The Adams-Bashforth-Moulton stepper has now also the initializing stepper
as a template parameter.
This allows to get rid of the specific test case for multi-step methods in
order_quadrature_formula. Furthermore, some cosmetic adjustments were made in
this test: global variables, camel case naming, while loop -> for loop.
2015-01-21 13:52:56 +01:00
Mario Mulansky
d323be0220
renamed do_step_dxdt to do_step_dxdt_impl
2015-01-13 20:20:32 +01:00
Mario Mulansky
4cadbe5164
fixes #147
...
when state_type == time_type (e.g. 1d odes with state_type = double), some
do_step overloads are disabled due to ambiguities of parameter structure.
However, the initialization of the Adams-Bashforth needs some of those
disabled functions in its initialization. As a fix, I added do_step_dxdt to
the stepper base classes to provide direct access to the required functions
that will not be disabled in the case of state_type == time_type.
2015-01-10 16:17:06 +01:00
Mario Mulansky
ee3ea15d58
fix #144 , including test case
...
The Adams-Bashforth-Moulton stepper called the corrector step with the wrong time value, as pointed out by GregorDeCillia in Issue #144 . This commit fixes this bug and adds a test to check the correct behavior.
2014-12-19 10:06:16 -06:00
Mario Mulansky
54856f3913
fixes #142 , fixes boost include issue in bjam
2014-11-12 10:01:05 +01:00
Mario Mulansky
df07f80123
Merge branch 'master' of github.com:headmyshoulder/odeint-v2
2014-11-11 18:32:41 +01:00
Mario Mulansky
f171a84ba7
algebra dispatcher now recognizes dts::array
2014-11-11 18:32:11 +01:00
Karsten Ahnert
61df23d75e
fixed https://svn.boost.org/trac/boost/ticket/10499
2014-11-11 17:59:06 +01:00
Mario Mulansky
133fb843d3
generalized array_algebra
...
array_algebra now works with any Array<T,N> structure
2014-11-11 17:32:58 +01:00
Mario Mulansky
589bdc45c0
some perf comments
2014-10-17 11:34:37 +02:00
Mario Mulansky
b6ebc0f156
new performance tests
2014-10-17 11:09:24 +02:00
Mario Mulansky
cc6969cca5
fixing #141
2014-10-07 13:00:20 +02:00
Karsten Ahnert
5eebbb56d8
fixing #140
2014-08-18 21:00:12 +02:00
Karsten Ahnert
b497ca56de
adding documentation for second integrate version
2014-08-16 21:07:35 +02:00
Karsten Ahnert
d81e685e73
Merge branch 'master' of github.com:headmyshoulder/odeint-v2
2014-08-16 21:05:30 +02:00
Karsten Ahnert
720a926e45
fixes #139
2014-08-16 21:05:16 +02:00
Karsten Ahnert
87dae441ef
removing old include from external test jamfiles, adding nounused local typedef warning, adding newline to toolset.jam.patch
2014-08-16 14:12:08 +02:00
mariomulansky
0ca187cd6e
added unnamed namespace around placeholders
...
addressing #138
2014-08-15 09:44:56 +02:00
mariomulansky
9473d7f067
added thrust backend vectors to operations_dispatcher
2014-08-01 19:38:45 +02:00
mariomulansky
286b87a872
some cosmetics and more dispatcher specializations
2014-08-01 19:26:03 +02:00
slayoo
ca69d012bb
adding thrust resizing macros for thrust::cpp::vector, thrust::omp::vector, thrust::tbb::vector and thrust::cuda::vector (addressing #136 )
2014-08-01 14:36:56 +02:00
mariomulansky
ab613676d9
fix double include
2014-07-31 23:03:50 +02:00
mariomulansky
bf7b9f64c9
added macros for thrust resizing, addressing #136
2014-07-31 22:53:52 +02:00
mariomulansky
b3a6581842
fixes #135
2014-07-31 16:08:34 +02:00
mariomulansky
ef35151e09
Merge branch 'master' of github.com:headmyshoulder/odeint-v2
2014-07-11 13:56:00 +02:00
mariomulansky
6e9d680cb5
some fixes for c++11, clang and msvc
2014-07-11 13:55:20 +02:00
Karsten Ahnert
2f021f760c
disable the default boost bind placeholders
2014-07-05 11:07:35 +02:00
mariomulansky
26beea5455
Merge branch 'nt2_specializations' of https://github.com/MetaScale/odeint-v2
2014-07-01 19:18:22 +02:00
Mario Mulansky
02e1c223ae
Merge pull request #130 from MetaScale/boost_throw_exception
...
exceptions are handled by BOOST_THROW_EXCEPTION so that the compiler opt...
2014-07-01 18:48:13 +02:00
Karsten Ahnert
b94b3c1b29
Revert "Revert "Merge branch 'sfinae'""
...
This reverts commit 56a7c4040e
.
2014-06-29 22:21:36 +02:00
Karsten Ahnert
56a7c4040e
Revert "Merge branch 'sfinae'"
...
This reverts commit a593879d23
, reversing
changes made to d575761ead
.
2014-06-29 21:47:24 +02:00
Karsten Ahnert
a593879d23
Merge branch 'sfinae'
2014-06-29 21:31:41 +02:00
alankelly
9728651b50
exceptions are handled by BOOST_THROW_EXCEPTION so that the compiler option fno-exceptions may safely be used
2014-06-26 18:42:45 +02:00
alankelly
31ed4aadde
nt2_norm_inf defines the infinity norm of a multi-dimensional matrix in the same manner as eigen - that is the largest absolute value
2014-06-26 17:42:04 +02:00
alankelly
9d0fc0a1b8
norm_inf updated to use new mnorminf function
2014-06-26 15:36:10 +02:00
alankelly
a3b64c2a0b
infinity norm on a matrix is defined as the max of the row sums
2014-06-26 15:36:10 +02:00
alankelly
033d5cb76b
minimal table header, code cleaned, extent used instead of size for resizing/size comparison
2014-06-26 15:36:10 +02:00