Skip to content

Current Features and Development Roadmap

noooway edited this page Sep 28, 2017 · 8 revisions

Features

todo: make a table with common functionality present in particle dynamics software, and compare this program to others.

  1. Ability to specify several sources of particles with various properties, such as charge, mass, mean momentum, etc.
  2. Choose between particle interaction model: noninteracting and PIC.
  3. Ability to specify inner regions, which absorb particles on collision and act as conductors under fixed potential. Box, cyllinder and tube shapes are supported.
  4. Support for uniform external magnetic field.
  5. Parallelization: field solver, particle pusher and results output are parallelized using MPI.

Experimental features:

  1. FreeCAD plugin for visual specification of simulation setup.
  2. Paraview plugin for easy visualization of simulation results.
  3. Support for STEP models as inner regions: seems to work correctly, but very slow.

Plans

Current prioreties are:

  1. Drop PETSc as Poisson' solver. Switch to something faster and more specialized.
  2. Implement support for specification of external electromagnetic fields.

More of less comprehensive task list is as follows:

Mathematical model improvements

  1. Transition from electrostatic PIC-model to model which takes into account magnetic fields generated by particles.

  2. Compare speed of various algorithms to solve Poisson' equation. Incorporate the optimal one in the programm.

  3. Ability to specify regions where higher modelling accuracy is necessary.

  4. Add support for several 'mesh-particle' interpolation functions.

Speed improvement

  1. Improve existing support for parrallel execution on CPU (MPI).

  2. Implement support for parallel execution on GPU.

Better control of simulation process

  1. Continue interrupted execution using one of output files as starting point.

  2. Import electromagnetic fields calculated in external programms.

  3. Import particle distribution from external programms.

  4. Better control of particle sources: number of generated particles varies with time, support for various momentum distributions.

  5. Visualize intermediate results.

  6. Choose data to save and saving periodicity.

Clone this wiki locally