Virtual-IPM is a software for simulating transverse profile monitors under the influence of beam space-charge and external fields.
Project description
Virtual-IPM
Virtual-IPM is a software for simulating the electron/ion transport in Ionization Profile Monitors (IPM) and other related devices, such as Beam Induced Fluorescence Monitors (BIF). It can simulate quite general setups involving the space-charge fields from one or multiple particle beams as well as the presence of external electric/magnetic guiding fields. The application can be used from the command line but it offers a rich graphical user interface (GUI) as well.
The software has a modular structure which allows for great flexibility in terms of combining the various different realizations of beam fields, external fields, detector geometry, etc.
Use cases
The following list is a brief overview of possible use cases:
Beam profile deformation due to beam space-charge
Beam profile deformation due to guiding field non-uniformities
Gas-jet for IPM and BIF
Simulating the effect of multiple beams on electron/ion transport
Components
The following is an overview of the available implementations for the various modules:
Bunch shapes |
Bunch fields |
External fields |
Devices |
Particle generation |
---|---|---|---|---|
Uniform |
Uniform |
Uniform |
Ionization Profile Monitor (IPM) |
Ionization via beam (IPM):
|
Gaussian |
Gaussian |
2D field maps |
Beam Induced Fluorescence Monitor (BIF) |
Excitation via beam (BIF) |
Gaussian DC |
Gaussian DC |
3D field maps |
Arbitrary CAD models (via .STL files) |
Thermal motion |
Generalized Gaussian |
Generalized Gaussian |
Gas jets |
||
QGaussian |
QGaussian |
Custom CSV files |
||
Hollow DC |
Hollow DC |
|||
Parabolic Ellipsoid |
Parabolic Ellipsoid |
|||
Poisson 2D SOR |
||||
Poisson 3D |
Installation
Virtual-IPM can be installed via pip with or without GUI components. pip install Virtual-IPM[GUI] installs the application together with the graphical user interface while pip install Virtual-IPM just installs the command line version. For more information see the documentation.
Graphical User Interface
The GUI can be started via virtual-ipm-gui. At the top, it offers buttons for various functionality:
Create, save and load configuration files
Run configurations
Analyze simulation output
Command Line Usage
The application can be run from the command line via virtual-ipm path/to/config.xml. For customization and options see virtual-ipm --help.
The application also ships with a number of other command line utilities, e.g. for plotting beam fields from configuration files.
Contributing
Please contact the maintainers.