accelerInt  v0.1
radau2a_props.cuh
Go to the documentation of this file.
1 
8 #ifndef RADAU2A_PROPS_CUH
9 #define RADAU2A_PROPS_CUH
10 
11 #include "header.cuh"
12 #include <cuComplex.h>
13 #include <stdio.h>
14 
15 #ifdef GENERATE_DOCS
16 namespace radau2acu {
17 #endif
18 
20 #define STRIDE (NSP)
21 
24 {
26  double* E1;
28  cuDoubleComplex* E2;
30  double* scale;
32  int* ipiv1;
34  int* ipiv2;
36  double* Z1;
38  double* Z2;
40  double* Z3;
42  double* DZ1;
44  double* DZ2;
46  double* DZ3;
48  double* CONT;
50  double* y0;
52  double* work1;
54  double* work2;
56  double* work3;
58  cuDoubleComplex* work4;
60  int* result;
61 };
62 
72 #define EC_success (0)
74 #define EC_consecutive_steps (1)
76 #define EC_max_steps_exceeded (2)
78 #define EC_h_plus_t_equals_h (3)
80 #define EC_newton_max_iterations_exceeded (4)
82 
90 #ifdef GENERATE_DOCS
91 }
92 #endif
93 
94 #endif
double * DZ3
Change in stage 3 values.
double * work3
work vector
double * work1
work vector
cuDoubleComplex * E2
The matrix for the complex system solve.
double * Z1
Stage 1 values.
Memory required for Radau-IIa GPU solver.
double * scale
The error weight scaling vector.
double * E1
The matrix for the non-complex system solve.
An example header file that defines system size, memory functions and other required methods for inte...
int * result
array of return codes
double * DZ2
Change in stage 2 values.
cuDoubleComplex * work4
complex work vector
double * DZ1
Change in stage 1 values.
double * CONT
Quadratic interpolate.
double * y0
Initial state vectors.
double * Z2
Stage 2 values.
double * work2
work vector
int * ipiv1
Pivot indicies for E1.
int * ipiv2
Pivot indicies for E2.
double * Z3
Stage 3 values.