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
cd /home/lebedmi2/SOFTWARE/SDTrimSP_7.01/bin
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: