* UNIT TEST NEARLY DONE * test operations * test vector_space_algebra, maybe with some proto lib NEARLY DONE * test copying * include controlled_error_stepper_fsal * include dense_output_explicit * inlcude dense_output_controlled_explicit_fsal * test gsl * test explicit stepper with ranges * split check_concepts into check_stepper_concept, check_error_stepper_concept, check_controlled_stepper_concept * include test/thrust in jam system, use system from * ranges and the integrate functions * symplectic intergrators and ranges * adams_moulton complete * adams_bashforth_moulton complete * DOCUMENTATION * include links to the source of the examples * use classical citations, via [] * GENERAL: * check if everywhere static_cast< value_type > is used * check header guards * check copyright note * documente every file in the preamble * check once more, if all contructor, destructors and assign-operators are present * Factory functions for steppers, controlled_steppers, error_checker und dense_output_stepper * same interface for implicit_euler and rosenbrock4 * implicit euler, include dfdt * Controlled stepper and dense output stepper * check if rosenbrock controller and controlled_stepper can both be used with the explicit steppers * check if rosenbrock4_dense_output and dense_output_explicit can be used unified to one dense output stepper * rename controlled_stepper to a more specific name * skript for setting the include defines according to the position in file system an writing a general copyright comment at the beginning * Documentation * Tutorials * Strategy for values which initializing, resizing etc. if some values change, for example: * dxdt in explicit fsal stepper, if size changes or if time is not appropriate. * the buffer in adams bashforth if dt changes oder the size of x. * UNIT TEST Requirements (NEW): * test stepper concepts * top level concepts (stepper, error_stepper, controlled_stepper, dense_output_stepper) * adjust_size, algebras, various versions of do_step, try_step, ... * test resizing and resize functionality * test copying (copy ctor, assign operator) * stepper results ? * stepper with ranges * stepper with units TO BE DISCUSSED: * Concept Jungle - describe problem, find solution (algebra, do_steps) * boost range enhancement: copy, construct, descruct, resize, adjust_size ... * boost::ref for system functions * algebras as Proto expression and as instances DONE: OK * INTEGRATE FUNCTIONS OK * check forwarding problem, ranges OK * check where exactly the observer will be called (before, after each step?) OK * functions without obversers OK * integrate without stepper , intelligent choice of the stepper OK * check function signatures OK * what to throw? OK * check lambdas, lambda is broken OK * move error_checker into controlled_stepper OK * finishing change of controlled_stepper to units OK * dense output for rosenbrock OK * symplecit_stepper OK * find an appropriate name, (symplectic stroemer nystroem) OK * check is the coefficients are named good OK * include do_step( system , q , p , t , dt ) OK * rename error_checker_standard to default_error_checker OK * check the order of arguments in the observer in integrate functions and initialize in dense_output_stepper OK * decrease complexity: LATER * remove construct, destruct, copy ? OK * remove the overloads solving the forwarding problem. boost::range can not be used then anymore OK * file cleanup OK * split resizing and copy/destruct/construct in different files OK * subfolder algebra, operations, util OK * change standard_operations::rel_error in order to word with units and test it OK * include implicit euler OK * call via std::pair< deriv , jacobi > OK * resizing OK * operations that fit units OK * operations that fit result_of OK * change stepper to stepper_units OK * change error_stepper to error_stepper_units OK * change dense_output to units OK * roll out dense_output_explicit_euler::calc_state() to explicit_euler::dense_output() OK * roll out dense_output_dopri5::calc_state() to explicit_error_dopri5::dense_output() OK * create dense_output_explicit OK * create dense_output_explicit_controlled_fsal OK * change resizing concept, in order to word within the implicit steppers OK * in all tests and regression test do not include odeint.hpp, only include the headers which are really needed OK * start new doc or cleanup the old project OK * unit test OK * test standard_algebra OK * test fusion_algebra OK * test, if copy construct of stepper_base is called when explicit_euler is used OK * test units with dense output OK * include rosenbrock4 in trunk * ranges: OK * test ranges in symplectic_rkn_stepper OK * dense_output OK * explicit_stepper_and_error_stepper_fsal_base OK * controlled_error_stepper OK * check comments (spelling and if the comment is true, in some versions dxdt is already const) OK * check names of the impl functions