ASCOT5
Loading...
Searching...
No Matches
ascot5_main.h
Go to the documentation of this file.
1
9#ifndef ASCOT5_MAIN_H
10#define ASCOT5_MAIN_H
11
12#include "ascot5.h"
13#include "offload.h"
14#include "simulate.h"
15
17 sim_offload_data* sim, offload_package* offload_data,
18 real** B_offload_array, real** E_offload_array, real** plasma_offload_array,
19 real** neutral_offload_array, real** wall_offload_array,
20 int** wall_int_offload_array, real** boozer_offload_array,
21 real** mhd_offload_array, real** asigma_offload_array, real** offload_array,
22 int** int_offload_array);
23
25 sim_offload_data* sim, int n_tot, input_particle* pin,
26 particle_state** pout, int* nprts, real* B_offload_array);
27
29 sim_offload_data* sim, particle_state* ps, int n_tot, char* qid);
30
32 sim_offload_data* sim, int n_tot, int n_proc, particle_state* pin,
33 offload_package* offload_data, real* offload_array, int* int_offload_array,
34 int* n_gather, particle_state** pout, real* diag_offload_array);
35
36int write_output(sim_offload_data* sim, particle_state* ps_gathered, int n_tot,
37 real* diag_offload_array);
38
39void print_marker_summary(particle_state* ps, int n_tot);
40
41#endif
Main header file for ASCOT5.
double real
Definition ascot5.h:85
int write_rungroup(sim_offload_data *sim, particle_state *ps, int n_tot, char *qid)
Create and store run group and marker inistate.
int pack_offload_array(sim_offload_data *sim, offload_package *offload_data, real **B_offload_array, real **E_offload_array, real **plasma_offload_array, real **neutral_offload_array, real **wall_offload_array, int **wall_int_offload_array, real **boozer_offload_array, real **mhd_offload_array, real **asigma_offload_array, real **offload_array, int **int_offload_array)
Prepare offload array to be offloaded.
int write_output(sim_offload_data *sim, particle_state *ps_gathered, int n_tot, real *diag_offload_array)
Store simulation output data.
void print_marker_summary(particle_state *ps, int n_tot)
Writes a summary of what happened to the markers during simulation.
int prepare_markers(sim_offload_data *sim, int n_tot, input_particle *pin, particle_state **pout, int *nprts, real *B_offload_array)
Prepare markers for offload.
int offload_and_simulate(sim_offload_data *sim, int n_tot, int n_proc, particle_state *pin, offload_package *offload_data, real *offload_array, int *int_offload_array, int *n_gather, particle_state **pout, real *diag_offload_array)
Offload data to target, carry out the simulation, and return to host.
Header file for offload.h.
Header file for simulate.c.
Wrapper for marker structs.
Definition particle.h:186
Struct to keep track of the offload array length and unpack status.
Definition offload.h:11
General representation of a marker.
Definition particle.h:40
Simulation offload struct.
Definition simulate.h:55