2
0
mirror of https://github.com/boostorg/odeint.git synced 2026-01-26 18:52:20 +00:00
Files
odeint/iterator_ideas.txt
2013-01-18 09:05:38 +01:00

85 lines
1.3 KiB
Plaintext

Iterator versions:
class XYZ_iterator
{
};
* never use iterators directly, always use the generation functions
* state this clearly in the docs
* const__iterator
* stepper ->
* solver, system, state und zeit gehören zusammen. Wie kann das ausgedrueckt werden
do_step( stepper , system , x , t , dt );
do_step( stepper , system , in , t , out , dt );
* controlled stepper: solver, system, state und zeit gehören zusammen
try_step( stepper , system , x , t , dt );
try_step( stepper , system , in , t , out , dt );
* dense_output_stepper solver, system, alter state, neuer state, alte zeit, neue zeit gehören zusammen
do_step( stepper , system , x_old , t_old , x_new , t_new , dt );
* stepper, state, system
stepper s( sys , x , t );
s.do_step( dt );
do_step( s , t );
order( s );
state( s );
time( s );
initialize( sys , x , t );
Problem: wie ändert man algebra?
controlled_stepper s( sys , x , t , dt );
s.try_step();
do_step( s );
dense_output_stepper s( sys , x , t );
s.do_step( dt );
do_step( s , dt );
controlled_dense_output_stepper s( sys , x , t , dt );
s.do_step();
do_step( s );
iterator iter( s , dt );
integrate( make_xyz_stepper( stepper , sys , x , t_start ) , t_start , dt , t_end );
structure:
low-level
* steppers
* algebras
* operations
* utils
high-level sitzt auf v2
* stepper
* integrate
* iterate
* do_step