ASCOT5
Loading...
Searching...
No Matches
simulate.h
Go to the documentation of this file.
1
8#ifndef SIMULATE_H
9#define SIMULATE_H
10
11#include "ascot5.h"
12#include "B_field.h"
13#include "E_field.h"
14#include "plasma.h"
15#include "neutral.h"
16#include "wall.h"
17#include "boozer.h"
18#include "mhd.h"
19#include "asigma.h"
20#include "nbi.h"
21#include "diag.h"
22#include "random.h"
23#include "simulate/mccc/mccc.h"
24#include "rfof.h"
25
47
58typedef struct {
59 /* Input and diagnostic interfaces */
72
73 /* Metadata */
77 /* Options - general */
81
82 /* Options - fixed time-step */
87
88 /* Options - adaptive time-step */
97
98 /* Options - physics */
114
115 /* Options - end conditions */
128
129 /* Metadata */
130 char hdf5_in[256];
131 char hdf5_out[256];
132 char qid[256];
133 char description[256];
134
138
139 /* QIDs for inputs if the active inputs are not used */
140 char qid_options[256];
141 char qid_bfield[256];
142 char qid_efield[256];
143 char qid_marker[256];
144 char qid_wall[256];
145 char qid_plasma[256];
146 char qid_neutral[256];
147 char qid_boozer[256];
148 char qid_mhd[256];
149 char qid_asigma[256];
150 char qid_nbi[256];
151
152} sim_data;
153
154void simulate_init(sim_data* sim);
155
156void simulate(int n_particles, particle_state* p, sim_data* sim);
157
158#endif
Header file for B_field.c.
Header file for E_field.c.
Main header file for ASCOT5.
double real
Definition ascot5.h:85
Header file for asigma.c.
Header file for boozer.c.
Header file for diag.c.
Header file for mccc package.
Header file for mhd.c.
Header file for nbi.c.
Header file for neutral.c.
Header file for plasma.c.
Header file for random.c.
Contains the functions to be called from the simulation loop when using ICRH.
SIMULATION_MODE
Simulaton modes.
Definition simulate.h:31
@ simulate_mode_fo
Definition simulate.h:34
@ simulate_mode_ml
Definition simulate.h:45
@ simulate_mode_gc
Definition simulate.h:37
@ simulate_mode_hybrid
Definition simulate.h:42
void simulate(int n_particles, particle_state *p, sim_data *sim)
Execute marker simulation.
Definition simulate.c:84
void simulate_init(sim_data *sim)
Initialize simulation data struct.
Definition simulate.c:312
Magnetic field simulation data.
Definition B_field.h:41
Electric field simulation data.
Definition E_field.h:36
General representation of a marker.
Definition particle.h:40
Simulation data struct.
Definition simulate.h:58
int mpi_size
Definition simulate.h:137
int enable_orbfol
Definition simulate.h:99
char qid[256]
Definition simulate.h:132
char qid_wall[256]
Definition simulate.h:144
real endcond_min_ekin
Definition simulate.h:122
int endcond_torandpol
Definition simulate.h:127
real endcond_max_rho
Definition simulate.h:121
char qid_asigma[256]
Definition simulate.h:149
int record_mode
Definition simulate.h:80
int sim_mode
Definition simulate.h:78
int disable_energyccoll
Definition simulate.h:107
real ada_max_drho
Definition simulate.h:93
real ada_tol_clmbcol
Definition simulate.h:91
plasma_data plasma_data
Definition simulate.h:62
mhd_data mhd_data
Definition simulate.h:66
real endcond_max_tororb
Definition simulate.h:125
int enable_atomic
Definition simulate.h:102
char hdf5_in[256]
Definition simulate.h:130
int disable_gcdiffccoll
Definition simulate.h:111
rfof_data rfof_data
Definition simulate.h:70
real endcond_min_thermal
Definition simulate.h:123
char qid_plasma[256]
Definition simulate.h:145
char qid_marker[256]
Definition simulate.h:143
char qid_nbi[256]
Definition simulate.h:150
real endcond_max_mileage
Definition simulate.h:118
real fix_usrdef_val
Definition simulate.h:84
E_field_data E_data
Definition simulate.h:61
int mpi_rank
Definition simulate.h:136
int enable_aldforce
Definition simulate.h:104
int disable_pitchccoll
Definition simulate.h:109
int enable_mhd
Definition simulate.h:101
int endcond_active
Definition simulate.h:116
char qid_bfield[256]
Definition simulate.h:141
int fix_usrdef_use
Definition simulate.h:83
char qid_options[256]
Definition simulate.h:140
char qid_boozer[256]
Definition simulate.h:147
mccc_data mccc_data
Definition simulate.h:75
real endcond_max_polorb
Definition simulate.h:126
random_data random_data
Definition simulate.h:74
neutral_data neutral_data
Definition simulate.h:63
int fix_gyrodef_nstep
Definition simulate.h:85
real endcond_max_cputime
Definition simulate.h:119
boozer_data boozer_data
Definition simulate.h:65
real endcond_min_rho
Definition simulate.h:120
char description[256]
Definition simulate.h:133
real endcond_lim_simtime
Definition simulate.h:117
int enable_ada
Definition simulate.h:79
B_field_data B_data
Definition simulate.h:60
char qid_mhd[256]
Definition simulate.h:148
char hdf5_out[256]
Definition simulate.h:131
char qid_efield[256]
Definition simulate.h:142
wall_data wall_data
Definition simulate.h:64
int reverse_time
Definition simulate.h:113
int mpi_root
Definition simulate.h:135
real ada_max_dphi
Definition simulate.h:95
int enable_icrh
Definition simulate.h:103
asigma_data asigma_data
Definition simulate.h:67
char qid_neutral[256]
Definition simulate.h:146
int enable_clmbcol
Definition simulate.h:100
int disable_gctransform
Definition simulate.h:105
real ada_tol_orbfol
Definition simulate.h:89
diag_data diag_data
Definition simulate.h:69
nbi_data nbi_data
Definition simulate.h:68
Header file for wall.c.