SDTrimSP Compilation and GUI via BCA-GUIDE

Compile SDTrimSP 7.01

Obtain the code:
 

Contact Dr. A. Mutzke to obtain the license and the latest version of SDTrimSP: aam@ipp.mpg.de

Official SDTrimSP documentation: pure.mpg.de/rest/items/item_3577532/component/file_3579585/content

Tested PC:
  • Intel(R) Core(TM) i5-14600K 3.50 GHz
  • RTX 2060 SUPER
  • Kingston FURY 32GB KIT DDR5 6000MHz CL32 Renegade
  • WSL2 Ubuntu version: 22.04
 
Prerequisites:
sudo apt update
sudo apt upgrade

sudo apt-get install build-essential cmake

Compile OpenMPI (if you want to run parallel computations):
Download OpenMPI (use wget command or download from here https://www.open-mpi.org/software/ompi/v5.0/) and compile:

mkdir OpenMPI_GCC
cd OpenMPI_GCC
wget https://download.open-mpi.org/release/open-mpi/v5.0/openmpi-5.0.0.tar.gz
tar xvzf openmpi-5.0.0.tar.gz
cd openmpi-5.0.0
mkdir build
./configure --prefix=/home/lebedmi2/SOFTWARE/OpenMPI/OpenMPI_GCC/openmpi-5.0.0/build
make install -j

Activate it (either write the following into the last line of bashrc for permanent activation or write it directly into the console for temporal activation):

export PATH=/home/lebedmi2/SOFTWARE/OpenMPI/OpenMPI_GCC/openmpi-5.0.0/build/bin:$PATH
export LD_LIBRARY_PATH=/home/lebedmi2/SOFTWARE/OpenMPI/OpenMPI_GCC/openmpi-5.0.0/build/lib:$LD_LIBRARY_PATH
 
 
Compile SDTrimSP
 
Navigate to the ‚bin‘ folder inside the main SDTrimSP folder (SDTrimSP_7.01/bin):
 
cd /home/lebedmi2/SOFTWARE/SDTrimSP_7.01/bin
To compile the version for parallel computing with GCC compiler, navigate to:
 
cd /home/lebedmi2/SOFTWARE/SDTrimSP_7.01/bin/gnu_GCC.PRO

If you want to compile the version without parallel computing, navigate to the: /home/lebedmi2/SOFTWARE/SDTrimSP_7.01/bin/gnu_GCC.SEQ

Inside this folder is a script called ‚mk‘ which performs the compilation using make.  Give this script execute permissions to allow it to run:

sudo chmod +x mk

Then start the compilation by running this script:

./mk

After it is completed, an executable ‚SDTrimSP.exe‘ will be created in this folder. Add its path to the system variables to be able to run it everywhere:

nano ~/.bashrc
export PATH=/home/lebedmi2/SOFTWARE/SDTrimSP_7.01/bin/gnu_GCC.PRO:$PATH
source ~/.bashrc

 

Run SDTrimSP simulations

Two options:
1) Directly from console (no GUI):

To run the SDTrimSP, create a file called ‚tri.inp‘ and write the settings of the simulation into it (See the official documentation or the examples in folder /home/lebedmi2/SOFTWARE/SDTrimSP_7.01/case/)

Then inside this folder, run the following command for parellel computation, e.g. with 8 cores:

mpirun -np 8 SDTrimSP.exe

or for serial computation:

SDTrimSP.exe

 

2) GUI via Python BCA-GUIDE code

Compile BCA-GUIDE, see below. 

Compile BCA-GUIDE: A Graphical User Interface for SDTrimSP and TRIDYN2022

BCA-GUIDE manual: repositum.tuwien.at/bitstream/20.500.12708/152394/1/2022-BCA-GUIDE%20Manual-ao.pdf

Prerequisites:
 

Install following Python prerequisities:

pip3 install PyQt5 matplotlib numpy scipy PyInstaller
 
Compile BCA-GUIDE:

Download BCA-GUIDE from GitHub:

https://github.com/atomicplasmaphysics/BCA-GUIDE

Extract it and head to the following folder in WSL console:

cd ~/SOFTWARE/BCA-GUIDE-main/setup.

Write:

python3 pyinstaller.py

This will automatically compile the code and create the following executable in the main folder (BCA-GUIDE-main): BCA-GUIDE_linux.exe

Now to run the GUI for SDTrimSP or TRIDYN2022, simply head to the main BCA-GUIDE-main and write:

./BCA-GUIDE_linux.exe
 
Run BCA-GUIDE:
 

Add it to system PATH to be able to run it from any directory (modify the /.bashrc file by adding the ‚export PATH…‘ to the end of this file, save it and refresh the console):

nano ~/.bashrc
export PATH=/home/lebedmi2/SOFTWARE/BCA-GUIDE-main:$PATH
source ~/.bashrc

Now run the code from any folder by writting:

BCA-GUIDE_linux.exe

After Opening the GUI, configure it with either SDTrimSP or TRIDYN2022, and then save the configuration:

Example: Simulating N ion implantation into Ti target