1#ifndef _AdaptiveRKStepper_h_
2#define _AdaptiveRKStepper_h_
10 class AdaptiveRKStepper:
public RKIntegrator::RKStepper {
40 virtual void step (
const RKIntegrator::RKData * data,
41 const RKIntegrator::RKData::Data & sdata,
42 RKIntegrator::RKData::Data & ddata,
43 double timeLimit)
const ;
67 const double &
rmin()
const;
71 const double &
rmax()
const;
79 const EEStepper *eeStepper;
85 mutable double stepsize;
93 class AdaptiveRKStepper::EEStepper {
100 std::vector<double> & errors)
const = 0;
102 virtual unsigned int order()
const=0;
virtual EEStepper * clone() const =0
virtual void step(const RKIntegrator::RKData *data, const RKIntegrator::RKData::Data &sdata, RKIntegrator::RKData::Data &ddata, std::vector< double > &errors) const =0
virtual unsigned int order() const =0
virtual void step(const RKIntegrator::RKData *data, const RKIntegrator::RKData::Data &sdata, RKIntegrator::RKData::Data &ddata, double timeLimit) const
virtual ~AdaptiveRKStepper()
AdaptiveRKStepper(const EEStepper *eeStepper=NULL)
virtual AdaptiveRKStepper * clone() const
double & startingStepsize()