|
ORB5X 1.0.0
Performance-portable global electromagnetic gyrokinetic PIC code
|
Executes one four-stage, operator-split gyrokinetic timestep. More...
#include "onestep.hpp"
Static Public Member Functions | |
| static void | apply_apar_pullback_poststep () |
| Apply the post-step electromagnetic pullback and zero the solved Apar increment. | |
| static void | onestep_rk4 (int step) |
| Advance all active species and fields by one full RK4 timestep. | |
| static void | update_pic1_and_work2 (int iter) |
| Commit stage coordinates and form second-stage work arrays. | |
| static void | update_work1 (int iter) |
| Form first-stage work arrays from the current particle state. | |
Executes one four-stage, operator-split gyrokinetic timestep.
OneStep is the central bridge between ControlAll and the physics subsystems. It sequences coordinate conversion, field interpolation, Runge–Kutta marker and weight updates, inter-domain marker migration, collisions and sources, gyro-density correction, and electromagnetic pullback. Operations are selected per species from SpeciesVariables and use process-wide state created during module initialization.
|
static |
Apply the post-step electromagnetic pullback and zero the solved Apar increment.
|
static |
Advance all active species and fields by one full RK4 timestep.
| [in] | step | Current global timestep, used for diagnostics and forcing. |
|
static |
Commit stage coordinates and form second-stage work arrays.
| [in] | iter | RK4 stage number in the Fortran-compatible range 1–4. |
|
static |
Form first-stage work arrays from the current particle state.
| [in] | iter | RK4 stage number in the Fortran-compatible range 1–4. |