Updated: 15 September 2024
...
Info |
---|
This guide is largely derived from https://opentopas.readthedocs.io/en/latest/getting-started/Debian.html#. It is recommended to visit the page for more detailed explanation of each [Step X] . |
1. Load required modules and set environment variables [Step 1-4]
Paste the below lines into your terminal. (Do NOT put these directly in ~/.bashrc.)
Code Block | ||
---|---|---|
| ||
module purge module load expat/2.5.0 module load X11/20231019-cpeCray-23.03 module load libGLU/9.0.3-cpeCray-23.03 module load HarfBuzz/8.2.2-cpeCray-23.03 module load CMake/3.26.4 export CC=cc CXX=CC FC=ftn F77=ftn F90=ftn |
2. Download Geant4 [Step 5]
Code Block | ||
---|---|---|
| ||
mkdir $HOME/Applications/GEANT4 cd $HOME/Applications/GEANT4 wget https://gitlab.cern.ch/geant4/geant4/-/archive/v11.1.3/geant4-v11.1.3.tar.gz tar -zxf geant4-v11.1.3.tar.gz |
3. Install Geant4 [Step 7]
Code Block | ||
---|---|---|
| ||
cd $HOME/Applications/GEANT4/ rm -rf geant4-install geant4-build mkdir geant4-{build,install} cd geant4-build cmake ../geant4-v11.1.3 -DGEANT4_INSTALL_DATA=OFF -DGEANT4_BUILD_MULTITHREADED=ON -DCMAKE_INSTALL_PREFIX=../geant4-install -DGEANT4_USE_QT=OFF -DGEANT4_USE_OPENGL_X11=ON -DGEANT4_USE_RAYTRACER_X11=ON make -j8 install cd $HOME/Applications/GEANT4/geant4-install ln -s lib64 lib |
Note |
---|
|
4. Download G4DATA [Step 6]
Note |
---|
As of 10 September 2024, there is a connection issue between transfer.lanta.nstda.or.th and https://cern.ch/.Therefore, G4DATA was previously downloaded by ThaiSC admin and temporarily made available at |
Code Block | ||
---|---|---|
| ||
cd $HOME/Applications/GEANT4/ cp -r /project/common/G4DATA . |
5. Download OpenTOPAS [Step 8.1]
Code Block | ||
---|---|---|
| ||
mkdir $HOME/Applications/TOPAS cd $HOME/Applications/TOPAS git clone https://github.com/OpenTOPAS/OpenTOPAS.git |
6. Install GDCM [Step 8.2-8.3]
If $HOME/Applications/GDCM
already exists, rename it to another name such as mv $HOME/Applications/GDCM $HOME/Applications/GDCM-OLD
before proceed.
Code Block | ||
---|---|---|
| ||
mkdir $HOME/Applications/GDCM cd $HOME/Applications/TOPAS/OpenTOPAS mv gdcm-2.6.8.tar.gz ../../GDCM cd ../../GDCM tar -zxf gdcm-2.6.8.tar.gz rm -rf gdcm-install gdcm-build mkdir gdcm-{build,install} cd gdcm-build cmake ../gdcm-2.6.8 -DGDCM_BUILD_SHARED_LIBS=ON -DGDCM_BUILD_DOCBOOK_MANPAGES:BOOL=OFF -DCMAKE_INSTALL_PREFIX=../gdcm-install make -j8 install |
7. Install OpenTOPAS [Step 8.4]
Code Block | ||
---|---|---|
| ||
cd $HOME/Applications/TOPAS rm -rf OpenTOPAS-install OpenTOPAS-build mkdir OpenTOPAS-{build,install} cd OpenTOPAS-build export Geant4_DIR=$HOME/Applications/GEANT4/geant4-install export GDCM_DIR=$HOME/Applications/GDCM/gdcm-install cmake ../OpenTOPAS -DCMAKE_INSTALL_PREFIX=../OpenTOPAS-install make -j8 install |
8. Create a wrapper script of topas
[Step 9.1.b]
Code Block | ||
---|---|---|
| ||
mkdir $HOME/Applications/shellScripts cd $HOME/Applications/shellScripts cat << Eof > topas #!/bin/bash module purge module load expat/2.5.0 module load X11/20231019-cpeCray-23.03 module load libGLU/9.0.3-cpeCray-23.03 module load HarfBuzz/8.2.2-cpeCray-23.03 export TOPAS_G4_DATA_DIR=$HOME/Applications/GEANT4/G4DATA export LD_LIBRARY_PATH=$HOME/Applications/TOPAS/OpenTOPAS-install/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH=$HOME/Applications/GEANT4/geant4-install/lib:$LD_LIBRARY_PATH $HOME/Applications/TOPAS/OpenTOPAS-install/bin/topas $1 Eof chomd +x topas echo 'export PATH=~/Applications/shellScripts:$PATH' >> $HOME/.bashrc |
9. Run OpenTOPAS on LANTA
Note |
---|
Since OpenTOPAS does NOT installed with Qt, the option |
Two approaches for running OpenTOPAS on LANTA are presented below.
The second approach using
sinteract
command can be useful. However, this method is not recommended if your internet connection is poor or you have to runtopas
for a long time.
A. Batch job
This first approach, using a job script and sbatch
command, is
...
recommended. For performance reasons, every graphic option, Gr/*/
, should be disabled, please visit https://opentopas.readthedocs.io/en/latest/parameters/graphics.html for complete details.
Note |
---|
Essentially, please check that |
...
be paused on the system until time out, wasting your SHr! |
...
The second approach using sinteract
command can be useful. However, this method is not recommended if your internet connection is poor or you have to run topas
for a long time.
...
Below is a template of OpenTOPAS job script. It can be created using vi submitTOPAS.sh
. Edit it to meet your demands.
Code Block | ||
---|---|---|
| ||
#!/bin/bash #SBATCH -p compute # Partition #SBATCH -N 1 # Number of node #SBATCH --ntasks-per-node=1 # Number of MPI processes per node #SBATCH --cpus-per-task=16 # Number of OpenMP threads per MPI process #SBATCH -t 120:00:00 # Job runtime limit #SBATCH -J TOPAS # Job name #SBATCH -A ltxxxxxx # Account *** {USER EDIT} *** source $HOME/.bashrc echo "Use topas = $(which topas)" topas xxx.txt # Your case *** {USER EDIT} *** | ||
Note | ||
In your case file, b:Ts/PauseBeforeQuit MUST set to "False" , otherwise your job will run indefinitely until time out. |
To submit this job script to the SLURM queuing system, execute
...
(Also see https://thaisc.atlassian.net/wiki/spaces/LANTA/pages/447021064/Quick+Start+Guide#6.-Running-your-job)
B. Interactive session
You can directly access LANTA computing nodes by requesting an interactive session. For example, execute
...
(You could add -X
option to enable X11 forwarding for OpenGL-related features such as CopyOpenGLToSVG
/graphic features. Please visit Interactive session and https://opentopas.readthedocs.io/en/latest/parameters/graphics.html before using this capability)
After the requested resources are allocated, you can use this session to run topas
and interactively execute Geant4 commands afterwards. For example,
Code Block | ||
---|---|---|
| ||
topas $HOME/Applications/TOPAS/OpenTOPAS-install/examples/Basic/TwoBeams.txt |
...
Contact Us
ThaiSC support service : thaisc-support@nstda.or.th
...