36#ifndef G4BULIRSCH_STOER_HH
37#define G4BULIRSCH_STOER_HH
109 void extrapolate(std::size_t k,
G4double xest[]);
130 const static G4int m_k_max = 8;
142 G4bool m_last_step_rejected{
false};
152 G4int m_current_k_opt;
158 G4int m_interval_sequence[m_k_max+1];
161 G4double m_coeff[m_k_max+1][m_k_max];
164 G4int m_cost[m_k_max+1];
176#include "G4BulirschStoer.icc"
void SetEquationOfMotion(G4EquationOfMotion *equation)
G4EquationOfMotion * GetEquationOfMotion() const
~G4BulirschStoer()=default
void set_max_dt(G4double max_dt)
G4BulirschStoer(G4EquationOfMotion *equation, G4int nvar, G4double eps_rel, G4double max_dt=DBL_MAX)
G4int GetNumberOfVariables() const
step_result try_step(const G4double in[], const G4double dxdt[], G4double &t, G4double out[], G4double &dt)
void set_max_relative_error(G4double eps_rel)
G4EquationOfMotion is the abstract base class for the right hand size of the equation of motion of a ...
G4ModifiedMidpoint implements a midpoint method adapted from Boost odeint.