CoolProp 6.8.1dev
An open-source fluid property and humid air property database
ODEIntegrators.h
Go to the documentation of this file.
1#ifndef ODEINTEGRATORS_H
2#define ODEINTEGRATORS_H
3
4#include <vector>
5
6namespace ODEIntegrators {
7
10{
11 public:
12 virtual std::vector<double> get_initial_array() const = 0;
13
14 virtual void pre_step_callback() = 0;
15
16 virtual void post_deriv_callback() = 0;
17
18 virtual void post_step_callback(double t, double h, std::vector<double>& x) = 0;
19
20 virtual bool premature_termination() = 0;
21
22 virtual void derivs(double t, std::vector<double>& x, std::vector<double>& f) = 0;
23};
24
36bool AdaptiveRK54(AbstractODEIntegrator& ode, double tmin, double tmax, double hmin, double hmax, double eps_allowed, double step_relax);
37
38} // namespace ODEIntegrators
39
40#endif