ASCOT5
|
Header file for step_fo_vpa.c. More...
#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_fo_vpa (particle_simd_fo *p, real *h, B_field_data *Bdata, E_field_data *Edata) |
Integrate a full orbit step for a struct of particles with VPA. | |
void | step_fo_vpa_mhd (particle_simd_fo *p, real *h, B_field_data *Bdata, E_field_data *Edata, boozer_data *boozer, mhd_data *mhd) |
Integrate a full orbit step with VPA and MHd modes present. | |
Header file for step_fo_vpa.c.
Definition in file step_fo_vpa.h.
void step_fo_vpa | ( | particle_simd_fo * | p, |
real * | h, | ||
B_field_data * | Bdata, | ||
E_field_data * | Edata ) |
Integrate a full orbit step for a struct of particles with VPA.
The integration is performed for a struct of NSIMD particles using the volume preserving algorithm (Boris method for relativistic particles) see Zhang 2015.
This algorithm is valid for neutral particles as well, in which case the motion reduces to ballistic motion where momentum remains constant.
p | particle_simd_fo 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 35 of file step_fo_vpa.c.
void step_fo_vpa_mhd | ( | particle_simd_fo * | p, |
real * | h, | ||
B_field_data * | Bdata, | ||
E_field_data * | Edata, | ||
boozer_data * | boozer, | ||
mhd_data * | mhd ) |
Integrate a full orbit step with VPA and MHd modes present.
Same as previous method but with MHD present.
p | particle_simd_fo 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 212 of file step_fo_vpa.c.