00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #include "dsim_integrator.h"
00011
00012 class dsim_rk4 : public dsim_integrator
00013 {
00014 public:
00015 dsim_rk4(const char *name);
00016 virtual void setup_variable(dsim_variable &variable);
00017 virtual void cleanup_variable(dsim_variable &variable);
00018
00019 virtual double effective_time_for_step(int step,double t,double dt);
00020 virtual dsim_integrator::dsim_integrator_result step_integration(dsim_variable &variable,int step,double t,double dt);
00021 virtual void setup_for_first_step(dsim_variable &variable,double t,double dt);
00022 virtual void setup_for_next_step(dsim_variable &variable,int step,double t,double dt);
00023 };