Codes and Computing


XGCa is an axisymmetric version of the gyrokinetic turbulence code XGC1 [1]. Thus, XGCa is a total-f gyrokinetic neoclassical PIC code with gyrokinetic ions and drift-kinetic electrons. In contrast to XGC0, it solves the gyrokinetic Poisson equation in 2 dimensions to calculate self-consistent radial and poloidal electric fields, which provides more comprehensive neoclassical physics. Since gyro-averaging is treated self-consistently in gyrokinetics, there is no more need to model these effects as in XGC0. Instead of a linearized collision operator, the non-linear Fokker-Planck-Landau collision operator developed by Yoon et al. [2] is used for this work. The equations of motion of the marker particles are identical to those used in XGC0 [3]. But since XGCa uses a total-f algorithm in which only the fast time scale fluctuations are evaluated using delta-f particles while the slow scale variation of the plasma background is calculated on a velocity space grid, particle noise is greatly reduced compared to XGC0 and less particles are needed. The configuration space mesh used for this method and for the collision operator is identical to the mesh used for the Poisson solver. These are major improvements compared to XGC0. Still, XGC0 currently offers a wider portfolio of physics modules. Impurity ions are currently being implemented and it is planned to port more modules from XGC0 to XGCa in the near future.