ALaDyn
is a Particle in Cell (PIC) code designed to investigate three main physical regimes:
Recent developments and applications are reported in the attached references.
A PIC method is based on a hybrid formal setting, whereby plasma particles are represented
on a Lagrangian framework whereas self-consistent fields are represented on the Eulerian framework
given by Maxwell equations.
As most other PIC codes, ALaDyn
discretize particle and field dynamical equations
by centred finite differences on a staggered space and time grid (Yee's module) using one step
second order leap-frog integrator.
To connect Lagrangian particles to Eulerian fields collocated on the spatial grid, finite order
B-splines are used. B-splines are local polynomials with compact support, allowing to
represent delta-like point particles on a grid for charge deposition and, by converse,
to assign field grid data to a point particle.
Energy preserving PIC schemes do not satisfy local charge conservation and the related
Poisson equation. By converse, using one of the many numerical recipes to enforce the
continuity equations, energy conservation is heavily damaged.
ALaDyn
code implements both charge or energy preserving schemes, letting the user
to choose, depending on the problem at hand.
Besides the standard leap-frog integrator,
ALaDyn
also implements a fourth order in space and time Runge-Kutta integrator. This scheme
requires larger computational resources, of course, but can be of help to
improve on accuracy and reduce dispersive effects of wave propagation.
The code implements also reduced models based on:
Reduced models are well tested only for (quasi) linear regimes. Serious problems arise for non linear dynamics.
In all the above configurations field induced ionization (tunnelling) are also implemented and can be activated if requested by the user. All ionization models are based on ADK scheme plus barrier suppression (BSI) for higher Z ions. For solid targets, impact (collisional) ionization is under development.
ALaDyn
is almost completely written in Fortran 90
, but a couple of utility modules are written in C++
.
C
can also be easily used to extend code functionalities.
Fortran 90
is the most popular computational language in PIC codes, probably because of
the higher efficiency in handling multidimensional arrays on a grid.
Finite difference integration allows to exploit efficient parallelism by domain decomposition
using MPI technique to distribute the computational work among CPU units.
ALaDyn
has been successfully ported to many HPC architectures, both in Italy at CINECA and in Europe through
PRACE Partnerships. From the CINECA IBM-SP6 system in 2011, to the test system at CINECA based on IBM/BGP in 2012,
then CINECA FERMI in 2014 and MARCONI in 2016, ALaDyn
run on a multitude of HPC architectures, always extracting
top range performances.
A new version has been recently released open source on the web, with a GPLv3 license. In part it has been rewritten from scratch and it is the basis for future development. Sources can be found, together with other codes, in our organization GitHub page at github.com/ALaDyn