8 #include <boost/numeric/odeint.hpp> 17 template <
size_t STATE_DIM,
typename SCALAR =
double>
18 using euler_t = boost::numeric::odeint::euler<Eigen::Matrix<SCALAR, STATE_DIM, 1>,
20 Eigen::Matrix<SCALAR, STATE_DIM, 1>,
22 boost::numeric::odeint::vector_space_algebra>;
25 template <
size_t STATE_DIM,
typename SCALAR =
double>
26 using modified_midpoint_t = boost::numeric::odeint::modified_midpoint<Eigen::Matrix<SCALAR, STATE_DIM, 1>,
28 Eigen::Matrix<SCALAR, STATE_DIM, 1>,
30 boost::numeric::odeint::vector_space_algebra>;
33 template <
size_t STATE_DIM,
typename SCALAR =
double>
34 using runge_kutta_4_t = boost::numeric::odeint::runge_kutta4<Eigen::Matrix<SCALAR, STATE_DIM, 1>,
36 Eigen::Matrix<SCALAR, STATE_DIM, 1>,
38 boost::numeric::odeint::vector_space_algebra>;
41 template <
size_t STATE_DIM,
typename SCALAR =
double>
42 using runge_kutta_dopri5_t = boost::numeric::odeint::runge_kutta_dopri5<Eigen::Matrix<SCALAR, STATE_DIM, 1>,
44 Eigen::Matrix<SCALAR, STATE_DIM, 1>,
46 boost::numeric::odeint::vector_space_algebra>;
49 template <
size_t STATE_DIM,
typename SCALAR =
double>
52 Eigen::Matrix<SCALAR, STATE_DIM, 1>,
54 boost::numeric::odeint::vector_space_algebra>;
57 template <
size_t STATE_DIM,
typename SCALAR =
double>
58 using bulirsch_stoer_t = boost::numeric::odeint::bulirsch_stoer<Eigen::Matrix<SCALAR, STATE_DIM, 1>,
60 Eigen::Matrix<SCALAR, STATE_DIM, 1>,
62 boost::numeric::odeint::vector_space_algebra>;
65 template <
size_t STATE_DIM,
size_t STEPS,
typename SCALAR =
double>
67 Eigen::Matrix<SCALAR, STATE_DIM, 1>,
69 Eigen::Matrix<SCALAR, STATE_DIM, 1>,
71 boost::numeric::odeint::vector_space_algebra>;
78 template <
size_t POS_DIM,
size_t VEL_DIM,
typename SCALAR =
double>
79 using symplectic_rk_t = boost::numeric::odeint::symplectic_rkn_sb3a_mclachlan<Eigen::Matrix<SCALAR, POS_DIM, 1>,
80 Eigen::Matrix<SCALAR, POS_DIM, 1>,
82 Eigen::Matrix<SCALAR, POS_DIM, 1>,
83 Eigen::Matrix<SCALAR, POS_DIM, 1>,
85 boost::numeric::odeint::vector_space_algebra>;
88 template <
size_t POS_DIM,
size_t VEL_DIM,
typename SCALAR =
double>
89 using symplectic_euler_t = boost::numeric::odeint::symplectic_euler<Eigen::Matrix<SCALAR, POS_DIM, 1>,
90 Eigen::Matrix<SCALAR, POS_DIM, 1>,
92 Eigen::Matrix<SCALAR, POS_DIM, 1>,
93 Eigen::Matrix<SCALAR, POS_DIM, 1>,
95 boost::numeric::odeint::vector_space_algebra>;
boost::numeric::odeint::euler< Eigen::Matrix< SCALAR, STATE_DIM, 1 >, SCALAR, Eigen::Matrix< SCALAR, STATE_DIM, 1 >, SCALAR, boost::numeric::odeint::vector_space_algebra > euler_t
Simple Euler stepper.
Definition: SteppersODEIntDefinitions.h:22
CppAD::AD< CppAD::cg::CG< double > > SCALAR
boost::numeric::odeint::symplectic_euler< Eigen::Matrix< SCALAR, POS_DIM, 1 >, Eigen::Matrix< SCALAR, POS_DIM, 1 >, SCALAR, Eigen::Matrix< SCALAR, POS_DIM, 1 >, Eigen::Matrix< SCALAR, POS_DIM, 1 >, SCALAR, boost::numeric::odeint::vector_space_algebra > symplectic_euler_t
Definition: SteppersODEIntDefinitions.h:95
boost::numeric::odeint::bulirsch_stoer< Eigen::Matrix< SCALAR, STATE_DIM, 1 >, SCALAR, Eigen::Matrix< SCALAR, STATE_DIM, 1 >, SCALAR, boost::numeric::odeint::vector_space_algebra > bulirsch_stoer_t
Bulirsch Stoer stepper.
Definition: SteppersODEIntDefinitions.h:62
boost::numeric::odeint::symplectic_rkn_sb3a_mclachlan< Eigen::Matrix< SCALAR, POS_DIM, 1 >, Eigen::Matrix< SCALAR, POS_DIM, 1 >, SCALAR, Eigen::Matrix< SCALAR, POS_DIM, 1 >, Eigen::Matrix< SCALAR, POS_DIM, 1 >, SCALAR, boost::numeric::odeint::vector_space_algebra > symplectic_rk_t
A symplictic rk type stepper.
Definition: SteppersODEIntDefinitions.h:85
boost::numeric::odeint::runge_kutta_dopri5< Eigen::Matrix< SCALAR, STATE_DIM, 1 >, SCALAR, Eigen::Matrix< SCALAR, STATE_DIM, 1 >, SCALAR, boost::numeric::odeint::vector_space_algebra > runge_kutta_dopri5_t
Runge-Kutta Dormand Price 5 stepper.
Definition: SteppersODEIntDefinitions.h:46
boost::numeric::odeint::runge_kutta4< Eigen::Matrix< SCALAR, STATE_DIM, 1 >, SCALAR, Eigen::Matrix< SCALAR, STATE_DIM, 1 >, SCALAR, boost::numeric::odeint::vector_space_algebra > runge_kutta_4_t
Runge-Kutta4 stepper.
Definition: SteppersODEIntDefinitions.h:38
boost::numeric::odeint::adams_bashforth< STEPS, Eigen::Matrix< SCALAR, STATE_DIM, 1 >, SCALAR, Eigen::Matrix< SCALAR, STATE_DIM, 1 >, SCALAR, boost::numeric::odeint::vector_space_algebra > adams_bashforth_uncontrolled_t
Adams Bashforth stepper.
Definition: SteppersODEIntDefinitions.h:71
boost::numeric::odeint::modified_midpoint< Eigen::Matrix< SCALAR, STATE_DIM, 1 >, SCALAR, Eigen::Matrix< SCALAR, STATE_DIM, 1 >, SCALAR, boost::numeric::odeint::vector_space_algebra > modified_midpoint_t
Modified Midpoint stepper.
Definition: SteppersODEIntDefinitions.h:30
boost::numeric::odeint::runge_kutta_fehlberg78< Eigen::Matrix< SCALAR, STATE_DIM, 1 >, SCALAR, Eigen::Matrix< SCALAR, STATE_DIM, 1 >, Time, boost::numeric::odeint::vector_space_algebra > runge_kutta_fehlberg78_t
Runge Kutta Fehlberg 78 stepper.
Definition: SteppersODEIntDefinitions.h:54
double Time
Definition: Time.h:11