2
0
mirror of https://github.com/boostorg/odeint.git synced 2026-01-31 08:22:14 +00:00

fixed small typo in integrate section

This commit is contained in:
Karsten Ahnert
2012-02-03 22:12:49 +01:00
parent 8875602b42
commit f59bcf442b
2 changed files with 58 additions and 2 deletions

56
TODO
View File

@@ -7,6 +7,62 @@ OK * rename rb_controller to stiff_controller
error_steppers
OK * check the preamble
error_stepper:
xerr = error( x , xold )
explicit_error_stepper:
xerr = error( x , xold , dxdtold )
explicit_error_stepper_fsal:
xerr = error( x , dxdt , xold , dxdtold )
default_error:
xerr[i] / ( m_abs + m_eps * xold[i] )
default_error_explicit:
xerr[i] / ( m_abs + m_eps * ( a_x * xold[i] + a_dtdt * dxdtold[i] ) )
rb:
xerr[i] / ( m_abs + m_eps * max( x[i] , xold[i] ) )
norm:
val = max_i( xerr[i] );
val = 1 / n * sum_i * xerr[i] * xerr[i];
VORSCHLAG:
ein default_error_checker
mit norm_policy, error_funktor;
error_funktor: je nach stepper
norm_policy
{
public:
typedef Value result_type;
template< class T1 , class T2 >
result_type operator( T1 t1 , T2 t2 ) const
{
}
result_type result( result_type res ) const
{
}
};
* REFACTORING AND CLEANUP

View File

@@ -42,7 +42,7 @@ Note that if you are using a simple __stepper or __error_stepper and want to mak
The actual step size will change due to error control during time evolution.
However, if an observer is provided the step size will be adjusted such that the algorithm always calculates /x(t)/ at ['t = t[sub 0] + n dt] and calls the observer at that point.
Note that the use of __controlled_stepper is reasonable here only if `dt` is considerably larger than typical step sizes used by the stepper.
* If `stepper` is a __dense_out_stepper then `dt` is the initial step size.
* If `stepper` is a __dense_outout_stepper then `dt` is the initial step size.
The actual step size will be adjusted during integration due to error control.
If an observer is provided dense output is used to calculate /x(t)/ at ['t = t[sub 0] + n dt].
@@ -67,7 +67,7 @@ If provided, the observer is called at each step.
The actual step size is changed according to error control of the stepper.
For the last step, the step size will be reduced to ensure we end exactly at `t1`.
If provided, the observer is called after each time step (and before the first step at `t0`).
* If stepper is a __dense_out_stepper then `dt` is the initial step size and `integrate_adaptive` behaves just like for __controlled_stepper above. No dense output is used.
* If stepper is a __dense_output_stepper then `dt` is the initial step size and `integrate_adaptive` behaves just like for __controlled_stepper above. No dense output is used.
[heading Observer calls at given time points]