21#pragma acc declare copyin(MCCC_EMPTY)
76 int idx = 0, breakloop = 0;
83 if(w->
time[idx] == t) {
89 if(w->
time[idx] < t ) {
103 if(windex[0] == -1) {
128 + sqrt(t-w->
time[im])*rand5[i];
146 + sqrt( ( t - w->
time[im] ) * ( w->
time[ip] - t )
147 / ( w->
time[ip] - w->
time[im] ) ) * rand5[i];
Main header file for ASCOT5.
Header file containing physical and mathematical constants.
unsigned long int a5err
Simulation error flag.
static DECLARE_TARGET_SIMD a5err error_raise(error_type type, int line, error_file file)
Raise a new error.
a5err mccc_wiener_generate(mccc_wienarr *w, real t, int *windex, real *rand5)
Generates a new Wiener process at a given time instant.
a5err mccc_wiener_clean(mccc_wienarr *w, real t)
Removes Wiener processes from the array that are no longer required.
void mccc_wiener_initialize(mccc_wienarr *w, real initime)
Initializes a struct that stores generated Wiener processes.
header file for mccc_wiener.c
Struct for storing Wiener processes.
int nextslot[MCCC_NSLOTS]
real wiener[MCCC_NDIM *MCCC_NSLOTS]