ASCOT5
|
Header file for step_gc_rk4.c. More...
#include "../../ascot5.h"
#include "../../B_field.h"
#include "../../E_field.h"
#include "../../boozer.h"
#include "../../mhd.h"
#include "../../particle.h"
Go to the source code of this file.
Functions | |
void | step_gc_rk4 (particle_simd_gc *p, real *h, B_field_data *Bdata, E_field_data *Edata) |
Integrate a guiding center step for a struct of markers with RK4. | |
void | step_gc_rk4_mhd (particle_simd_gc *p, real *h, B_field_data *Bdata, E_field_data *Edata, boozer_data *boozer, mhd_data *mhd) |
Integrate a guiding center step with RK4 with MHD modes present. | |
Header file for step_gc_rk4.c.
Definition in file step_gc_rk4.h.
void step_gc_rk4 | ( | particle_simd_gc * | p, |
real * | h, | ||
B_field_data * | Bdata, | ||
E_field_data * | Edata ) |
Integrate a guiding center step for a struct of markers with RK4.
This function calculates a guiding center step for a struct of NSIMD markers with RK4 simultaneously using SIMD instructions. All arrays in the function are of NSIMD length so vectorization can be performed directly without gather and scatter operations.
p | simd_gc struct that will be updated |
h | pointer to array containing time steps |
Bdata | pointer to magnetic field data |
Edata | pointer to electric field data |
Definition at line 33 of file step_gc_rk4.c.
void step_gc_rk4_mhd | ( | particle_simd_gc * | p, |
real * | h, | ||
B_field_data * | Bdata, | ||
E_field_data * | Edata, | ||
boozer_data * | boozer, | ||
mhd_data * | mhd ) |
Integrate a guiding center step with RK4 with MHD modes present.
Same as previous function but with MHD present
p | simd_gc struct that will be updated |
h | pointer to array containing time steps |
Bdata | pointer to magnetic field data |
Edata | pointer to electric field data |
boozer | pointer to boozer data |
mhd | pointer to MHD data |
Definition at line 230 of file step_gc_rk4.c.