Skip to content

sayanadhikari/picsp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C/C++ CI build

PICSP Logo

PICSP - (Particle-in-Cell Simulation of Plasma)

PICSP is an open source scientific program for simulating plasmas using the Particle-In-Cell (PIC) method on a 2D structured mesh. The field quantities are solved using Spectral Solver, Direct Solver and Gauss-Siedel solver. The focus is to simulate bounded as well as periodic plasma system.

configspace_v4_3

Contributors

Authors:

  • Sayan Adhikari, (UiO, Norway): architecture and data structures, pushers, weighting schemes, overall maintainance.
  • Rakesh Moulick, (RC, India): architecture and data structures, poisson solver, pushers, Collision module.
  • Gunjan Sharma, (CPP, India): architecture and data structures, poisson solver.
  • Rupak Mukherjee, (PPPL, USA): parallelization, poisson solver.

Installation

Prerequisites

  1. GCC compiler for C++ (g++)
  2. GNU make buildsystem (Mostly comes with every unix based systems)
  3. git
  4. FFTW3
  5. HDF5
  6. Python >= 3.0 (Not tested for lower)

Procedure

First make a clone of the master branch using the following command

git clone https://github.com/sayanadhikari207/picsp.git

Then enter inside the PICSP directory.

cd picsp

NOTE Ubuntu users can run ubuntu.sh file to install FFTW3 and HDF5 libraries with superuser privilege.

sudo bash ubuntu.sh

Now complile and built the PICSP code.

make veryclean
make all

Troubleshooting (Installation)

If you have not installed HDF5 library from source, you may get some issues regarding the library. Try to use apt-get for Debian based machines (e.g. Ubuntu), or any default package manager to install respective libraries. For MacOS Homebrew is recommended.

For Ubuntu:

sudo apt-get install -y fftw3-dev libhdf5-dev libhdf5-serial-dev

For MacOs:

brew install fftw hdf5@1.10

Use the same method to resolve issues with FFTW library.

Usage

Upon successful compilation, run the code using following command

./picsp input.ini

Plasma Parameter Setup

Edit the input.ini or create your own .ini file using the input.ini file format (e.g. test.ini) and run the code

./picsp test.ini

Visualization

To visualize the simulation data, run the python scripts from scripts directory.

Phase-space Animation

python3 animatePhaseSpace.py 

Potential Animation

python3 animateGridData.py -p phi

Density Animation

Ion
python3 animateGridData.py -p den.i
Electron
python3 animateGridData.py -p den.e

Time Dependent Data

python3 timeData.py -p energy

About

PICSP - (Particle-in-Cell Simulation of Plasma) is an open-source scientific program for simulating plasmas using the Particle-In-Cell (PIC) method on a structured mesh.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •