Skip to content
/ KiT-RT Public
forked from KiT-RT/kitrt_code

A high performance framework for radiation therapy simulation and numerical solutions for kinetic equations.

License

Notifications You must be signed in to change notification settings

timonkl/KiT-RT

 
 

Repository files navigation

CI Coverage Status Documentation Status License: MIT

KiT-RT - an HPC Radio Therapy simulation framework

The KiT-RT (Kinetic Transport Solver for Radiation Therapy) framework is a high-performance open source platform for radiation transport. Its main focus is on radiotherapy planning in cancer treatment. To enable problem-specific method selection, the framework provides different deterministic solver types. This not only facilitates treatment planning, but also provides tools to investigate various research questions in the field of radiative transfer. This goal is supported by an easily extendable code structure that allows for straightforward implementation of additional methods and techniques.

The documentation can be found here.

Contents

What KiT-RT is capable of

Theory

A short description of kinetic theory can be found here.

Build

Required dependencies

  • Compiler with C++17 support
  • cmake >= v3.16
  • LAPACK
  • OpenMP
  • MPI
  • python3
  • VTK
  • git

Python dependencies

  • pydicom
  • numpy
  • pygmsh version 6.1.1
  pip install pygmsh==6.1.1

(note that newer versions are not yet supported)

Obtain submodules

Note that an active internet connection is required for the first build in order to download the suitable versions of the required submodules! For the first build only, download all submodules:

git submodule update --init --recursive

Compile the code

In case of the make build system (available on most systems) run:

mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ../
make -j

Run

Execute the compiled binary by handing over a valid config file, e.g.:

./KiT-RT ../examples/linesource_SN.cfg

In order to run the code in parallel execute:

OMP_NUM_THREADS=N mpirun -np J ./KiT-RT ../examples/linesource_SN.cfg

with N equal to the number of shared memory threads and J equal to the number of distrubuted memory threads.


Unit Tests

After compiling the framework with:

cmake -DCMAKE_BUILD_TYPE=Debug -DBUILD_TESTING=ON ../
make -j

Unit test can be run with:

make test

Docker

A preconfigured docker container can also be used to run the code. By running

docker run --rm -ti -v $(pwd):/home kitrt/test:latest

from the current folder will be mounted to the docker container and the code can be executed without any of the required dependencies.

About

A high performance framework for radiation therapy simulation and numerical solutions for kinetic equations.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 99.8%
  • Other 0.2%