28 void intDriver (
const int NUM,
const double t,
const double t_end,
29 const double *pr_global,
double *y_global)
32 #pragma omp parallel for shared(y_global, pr_global) private(tid) 33 for (tid = 0; tid < NUM; ++tid) {
37 double pr_local = pr_global[tid];
41 for (
int i = 0; i <
NSP; i++)
43 y_local[i] = y_global[tid + i * NUM];
51 for (
int i = 0; i <
NSP; i++)
53 y_global[tid + i * NUM] = y_local[i];
int integrate(const double t_start, const double t_end, const double pr, double *y)
A header definition of the integrate method, that must be implemented by various solvers.
void intDriver(const int NUM, const double t, const double t_end, const double *pr_global, double *y_global)
Integration driver for the CPU integrators.
Contains skeleton of all methods that need to be defined on a per solver basis.
void check_error(int, int)
Checks the return code of the given thread (IVP) for an error, and exits if found.