32 int abscissa_n_slots[7];
33 abscissa_n_slots[0] = dist->
n_r;
34 abscissa_n_slots[1] = dist->
n_phi;
35 abscissa_n_slots[2] = dist->
n_z;
36 abscissa_n_slots[3] = dist->
n_ppara;
37 abscissa_n_slots[4] = dist->
n_pperp;
38 abscissa_n_slots[5] = dist->
n_time;
39 abscissa_n_slots[6] = dist->
n_q;
41 double abscissa_min[7];
42 abscissa_min[0] = dist->
min_r;
44 abscissa_min[2] = dist->
min_z;
48 abscissa_min[6] = dist->
min_q;
50 double abscissa_max[7];
51 abscissa_max[0] = dist->
max_r;
53 abscissa_max[2] = dist->
max_z;
57 abscissa_max[6] = dist->
max_q;
59 char* abscissa_names[] = {
"r",
"phi",
"z",
"ppar",
"pperp",
"time",
61 char* abscissa_units[] = {
"m",
"deg",
"m",
"kg*m/s",
"kg*m/s",
"s",
"e" };
62 char* ordinate_names[] = {
"distribution" };
63 char* ordinate_units[] = {
"s/(m^5*kg^2*deg*e)" };
67 f, path, abscissa_dim, ordinate_dim, abscissa_n_slots, abscissa_min,
68 abscissa_max, abscissa_units, abscissa_names, ordinate_units,
69 ordinate_names, hist);
87 int abscissa_n_slots[8];
88 abscissa_n_slots[0] = dist->
n_r;
89 abscissa_n_slots[1] = dist->
n_phi;
90 abscissa_n_slots[2] = dist->
n_z;
91 abscissa_n_slots[3] = dist->
n_pr;
92 abscissa_n_slots[4] = dist->
n_pphi;
93 abscissa_n_slots[5] = dist->
n_pz;
94 abscissa_n_slots[6] = dist->
n_time;
95 abscissa_n_slots[7] = dist->
n_q;
97 double abscissa_min[8];
98 abscissa_min[0] = dist->
min_r;
100 abscissa_min[2] = dist->
min_z;
101 abscissa_min[3] = dist->
min_pr;
103 abscissa_min[5] = dist->
min_pz;
105 abscissa_min[7] = dist->
min_q;
107 double abscissa_max[8];
108 abscissa_max[0] = dist->
max_r;
110 abscissa_max[2] = dist->
max_z;
111 abscissa_max[3] = dist->
max_pr;
113 abscissa_max[5] = dist->
max_pz;
115 abscissa_max[7] = dist->
max_q;
117 char* abscissa_names[] = {
"r",
"phi",
"z",
"pr",
"pphi",
"pz",
"time",
119 char* abscissa_units[] = {
"m",
"deg",
"m",
"kg*m/s",
"kg*m/s",
"kg*m/s",
121 char* ordinate_names[] = {
"distribution" };
122 char* ordinate_units[] = {
"s/(m^6*kg^3*deg*e)" };
126 f, path, abscissa_dim, ordinate_dim, abscissa_n_slots, abscissa_min,
127 abscissa_max, abscissa_units, abscissa_names, ordinate_units,
128 ordinate_names, hist);
143 int abscissa_dim = 7;
144 int ordinate_dim = 1;
146 int abscissa_n_slots[7];
147 abscissa_n_slots[0] = dist->
n_rho;
148 abscissa_n_slots[1] = dist->
n_theta;
149 abscissa_n_slots[2] = dist->
n_phi;
150 abscissa_n_slots[3] = dist->
n_ppara;
151 abscissa_n_slots[4] = dist->
n_pperp;
152 abscissa_n_slots[5] = dist->
n_time;
153 abscissa_n_slots[6] = dist->
n_q;
155 double abscissa_min[7];
156 abscissa_min[0] = dist->
min_rho;
162 abscissa_min[6] = dist->
min_q;
164 double abscissa_max[7];
165 abscissa_max[0] = dist->
max_rho;
171 abscissa_max[6] = dist->
max_q;
173 char* abscissa_names[] = {
"rho",
"theta",
"phi",
"ppar",
"pperp",
"time",
175 char* abscissa_units[] = {
"1",
"deg",
"deg",
"kg*m/s",
"kg*m/s",
177 char* ordinate_names[] = {
"distribution" };
178 char* ordinate_units[] = {
"s/(m^2*kg^2*deg^2*e)" };
182 f, path, abscissa_dim, ordinate_dim, abscissa_n_slots, abscissa_min,
183 abscissa_max, abscissa_units, abscissa_names, ordinate_units,
184 ordinate_names, hist);
199 int abscissa_dim = 8;
200 int ordinate_dim = 1;
202 int abscissa_n_slots[8];
203 abscissa_n_slots[0] = dist->
n_rho;
204 abscissa_n_slots[1] = dist->
n_theta;
205 abscissa_n_slots[2] = dist->
n_phi;
206 abscissa_n_slots[3] = dist->
n_pr;
207 abscissa_n_slots[4] = dist->
n_pphi;
208 abscissa_n_slots[5] = dist->
n_pz;
209 abscissa_n_slots[6] = dist->
n_time;
210 abscissa_n_slots[7] = dist->
n_q;
212 double abscissa_min[8];
213 abscissa_min[0] = dist->
min_rho;
216 abscissa_min[3] = dist->
min_pr;
218 abscissa_min[5] = dist->
min_pz;
220 abscissa_min[7] = dist->
min_q;
222 double abscissa_max[8];
223 abscissa_max[0] = dist->
max_rho;
226 abscissa_max[3] = dist->
max_pr;
228 abscissa_max[5] = dist->
max_pz;
230 abscissa_max[7] = dist->
max_q;
232 char* abscissa_names[] = {
"rho",
"theta",
"phi",
"pr",
"pphi",
"pz",
234 char* abscissa_units[] = {
"1",
"deg",
"deg",
"kg*m/s",
"kg*m/s",
"kg*m/s",
236 char* ordinate_names[] = {
"distribution" };
237 char* ordinate_units[] = {
"s^2/(m^3*kg^3*deg^2*e)" };
241 f, path, abscissa_dim, ordinate_dim, abscissa_n_slots, abscissa_min,
242 abscissa_max, abscissa_units, abscissa_names, ordinate_units,
243 ordinate_names, hist);
259 int abscissa_dim = 3;
260 int ordinate_dim = 1;
262 int abscissa_n_slots[3];
263 abscissa_n_slots[0] = dist->
n_mu;
264 abscissa_n_slots[1] = dist->
n_Ekin;
265 abscissa_n_slots[2] = dist->
n_Ptor;
267 double abscissa_min[3];
272 double abscissa_max[3];
277 char* abscissa_names[] = {
"mu",
"ekin",
"ptor"};
278 char* abscissa_units[] = {
"eV/T",
"eV",
"eV*s"};
279 char* ordinate_names[] = {
"distribution" };
280 char* ordinate_units[] = {
"T/(eV**3*s)"};
284 f, path, abscissa_dim, ordinate_dim, abscissa_n_slots, abscissa_min,
285 abscissa_max, abscissa_units, abscissa_names, ordinate_units,
286 ordinate_names, hist);
Main header file for ASCOT5.
Header file containing physical and mathematical constants.
#define CONST_E
Elementary charge [C]
Header file for dist_5D.c.
Header file for dist_6D.c.
Header file for dist_com.c.
Header file for dist_rho5D.c.
Header file for dist_rho6D.c.
int hdf5_dist_write_6D(hid_t f, char *path, dist_6D_offload_data *dist, real *hist)
Write 6D distribution to an existing result group.
int hdf5_dist_write_rho5D(hid_t f, char *path, dist_rho5D_offload_data *dist, real *hist)
Write rho 5D distribution to an existing result group.
int hdf5_dist_write_COM(hid_t f, char *path, dist_COM_offload_data *dist, real *hist)
Write constants-of-motion distribution to an existing result group.
int hdf5_dist_write_rho6D(hid_t f, char *path, dist_rho6D_offload_data *dist, real *hist)
Write rho 6D distribution to an existing result group.
int hdf5_dist_write_5D(hid_t f, char *path, dist_5D_offload_data *dist, real *hist)
Write 5D distribution to an existing result group.
Header file for hdf5_helpers.h.
int hdf5_histogram_write_uniform_double(hid_t f, const char *path, int abscissaDim, int ordinateDim, int *abscissaNslots, double *abscissaMin, double *abscissaMax, char **abscissaUnits, char **abscissaNames, char **ordinateUnits, char **ordinateNames, double *ordinate)
Write a histogram with uniform grid to HDF5 file.
Header file for hdf5_histogram.c.
#define math_rad2deg(a)
Convert radians to degrees.
Histogram parameters that will be offloaded to target.
Histogram parameters that will be offloaded to target.
Histogram parameters that will be offloaded to target.
Histogram parameters that will be offloaded to target.
Histogram parameters that will be offloaded to target.