Particle-In-Cell Scalable Application Resource

Get the code


PICSAR has now been released open-source. To download the latest version of the code, you can clone directly the git repository on your computer by executing the following command in a terminal:

 git clone https://bitbucket.org/berkeleylab/picsar


PICSARlite is a subset of PICSAR that can be used for testing.

To build PICSARlite, use the branch generate_miniapp:

git checkout generate_miniapp

The PICSARlite version is built using a Python script (utils/generate_miniapp.py) that accepts a number of options:

  • --solver: Maxwell solver method(s) to include [choices: ‘all’ (default), ‘fdtd’, ‘spectral’].
  • --pusher: Particle pusher method(s) to include [choices: ‘all’ (default), ‘Boris’, ‘Vay’].
  • --depos: Type(s) of charge/current deposition to include [choices: ‘all’ (default), ‘direct’,’Esirkepov’].
  • --optimization: Flag to include the optimized versions [choices: ‘on’ (default), ‘off’].
  • For example, to create a version with the Maxwell FDTD solver, the Boris pusher, direct charge/current deposition and no optimization, type:

python utils/generate_miniapp.py --pusher boris --depos direct --solver fdtd --optimization off

An example input script that runs with this particle configuration is given in:


that can be run with

mpirun -np 8 ../../fortran_bin/picsar homogeneous_plasma_lite.pixr

%d bloggers like this: