...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Home | Libraries | People | FAQ | More |
boost::numeric::odeint::rosenbrock4_controller
// In header: <boost/numeric/odeint/stepper/rosenbrock4_controller.hpp> template<typename Stepper> class rosenbrock4_controller { public: // types typedef Stepper stepper_type; typedef stepper_type::value_type value_type; typedef stepper_type::state_type state_type; typedef stepper_type::wrapped_state_type wrapped_state_type; typedef stepper_type::time_type time_type; typedef stepper_type::deriv_type deriv_type; typedef stepper_type::wrapped_deriv_type wrapped_deriv_type; typedef stepper_type::resizer_type resizer_type; typedef controlled_stepper_tag stepper_category; typedef rosenbrock4_controller< Stepper > controller_type; // construct/copy/destruct rosenbrock4_controller(value_type = 1.0e-6, value_type = 1.0e-6, const stepper_type & = stepper_type()); rosenbrock4_controller(value_type, value_type, time_type, const stepper_type & = stepper_type()); // public member functions value_type error(const state_type &, const state_type &, const state_type &); value_type last_error(void) const; template<typename System> boost::numeric::odeint::controlled_step_result try_step(System, state_type &, time_type &, time_type &); template<typename System> boost::numeric::odeint::controlled_step_result try_step(System, const state_type &, time_type &, state_type &, time_type &); template<typename StateType> void adjust_size(const StateType &); stepper_type & stepper(void); const stepper_type & stepper(void) const; // private member functions template<typename StateIn> bool resize_m_xerr(const StateIn &); template<typename StateIn> bool resize_m_xnew(const StateIn &); };
rosenbrock4_controller
public member functionsvalue_type error(const state_type & x, const state_type & xold, const state_type & xerr);
value_type last_error(void) const;
template<typename System> boost::numeric::odeint::controlled_step_result try_step(System sys, state_type & x, time_type & t, time_type & dt);
template<typename System> boost::numeric::odeint::controlled_step_result try_step(System sys, const state_type & x, time_type & t, state_type & xout, time_type & dt);
template<typename StateType> void adjust_size(const StateType & x);
stepper_type & stepper(void);
const stepper_type & stepper(void) const;