The src/
folder contains all the code necessary to build a gyrokinetic semi-Lagrangian simulation. It is broken up into the following sub-folders:
- advection - Code describing semi-Lagrangian advection routines.
- collisions - Code describing the inter and intra species collisions.
- data_types - Code describing useful data types which are not provided by DDC.
- geometryRTheta - Code describing methods which are specific to a 2D curvilinear geometry containing a singular point.
- geometryVparMu - Code describing methods which are specific to a simulation operators in velocity space (vpar,mu).
- geometryXVx - Code describing methods which are specific to a simulation with 1 spatial dimension and 1 velocity dimension.
- geometryXY - Code describing methods which are specific to a simulation with 2 spatial dimensions.
- geometryXYVxVy - Code describing methods which are specific to a simulation with 2 spatial dimensions and 2 velocity dimension.
- interpolation - Code describing interpolation methods.
- io - Code describing tools for inputting and outputting data in a simulation.
- mapping - Code describing tools for handling different coordinate systems.
- math_tools - Code describing math tools functions.
- matrix_tools - Code describing both matrix storage and the functions to solve matrix equations.
- multipatch - Code describing multipatch geometry.
- mpi_parallelisation - Code describing the MPI parallelisation.
- pde_solvers - Code describing different methods for solving PDEs (e.g. Poisson's equation).
- quadrature - Code describing different quadrature methods.
- speciesinfo - Code used to describe the different species.
- timestepper - Code used to describe time-stepping methods (e.g. Runge-Kutta methods).
- utils - Code describing utility functions.