Skip to content

KiT-RT/kitrt_code

Repository files navigation

KiT-RT: Modular, HPC-Ready Radiative Transport Solver

License: MIT GitHub Stars Build Status Coverage Status Docs

Overview

KiT-RT is an open-source, multi-fidelity C++ PDE solver for radiative transport in fusion, fission, and radiation therapy simulations. Designed from the ground up for AI-accelerated scientific computing, it supports hybrid neural–PDE workflows, enabling high-resolution reference solutions, scalable data generation for scientific foundation models, and outer-loop workflows such as uncertainty quantification and design optimization.

Key Features

  • Modular, HPC-ready architecture. Supports hybrid MPI/OpenMP distributed parallelism.
  • Containerized for portable deployment across HPC systems (Docker & Singularity).
  • Python-wrapped via CharmKIT
  • Downstream applications:
    • Data generation for scientific foundation models.
    • high-resolution reference solutions for AI-based surrogate modeling.
    • Plug-and-play integration for outer-loop workflows (UQ, optimization).

Scientific Impact

KiT-RT has been adopted by:

  • Sandia National Labs
  • Lawrence Livermore National Labs
  • Oak Ridge National Labs
  • Karlsruhe Institute of Technology
  • TU Delft
  • NMBU Norway
  • Chung-Ang University, Korea
  • RIKEN Japan

Applications include:

  • Foundation model training for fusion simulation.
  • Large-scale UQ experiments.
  • Radiation therapy planning.
  • Accelerated neural network inference.
  • Reference dataset generation for ML-based surrogate models.

Publications & References

Core Software

  • KiT-RT: An Extendable Framework for Radiative Transfer and TherapyACM Transactions on Mathematical Software [DOI]

Datasets & Benchmarks

  • Reference solutions for linear radiation transport: the Hohlraum and Lattice benchmarksarXiv:2505.17284 [PDF]

Neural–PDE Integration

Installation

Plain cpp setup

# Clone repository
git clone https://github.com/KiT-RT/kitrt_code.git
cd kitrt_code
git submodule update --init --recursive

# Build with CMake
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ../
make -j

Docker setup

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

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

Bash scripts are provided in the folder tools/CI to get started with the docker environments. To start an interactive docker environment, execute

docker run -i -t --rm -v $(pwd)/../..:/mnt kitrt/test:latest /bin/bash

Singularity setup

Create the singularity container

mkdir build_singularity
cd tools/singularity
sudo sh build_container.sh
chmod +x install_kitrt_singularity.sh
singularity exec kit_rt.sif ./install_kitrt_singularity.sh

Run the singularity container

singularity shell --bind $(pwd)/../..:/mnt kit_rt.sif

Running simulations

Within any of the above setups, navigate to the example folder and execute KiT-RT

cd examples
../<build_folder_name>/KiT-RT configs/lattice_SN.cfg

Tensorflow backend

If you choose to enable the integrated machine learning tools via the BUILD_ML option, you need to install the tensorflow C-API:

FILENAME=libtensorflow-cpu-linux-x86_64-2.7.0.tar.gz
wget -q --no-check-certificate https://storage.googleapis.com/tensorflow/libtensorflow/${FILENAME}
tar -C /usr/local -xzf ${FILENAME}
ldconfig /usr/local/lib

and for a gpu based version (you need supported hardware and gpu drivers, see here ):

FILENAME=libtensorflow-gpu-linux-x86_64-2.7.0.tar.gz
wget -q --no-check-certificate https://storage.googleapis.com/tensorflow/libtensorflow/${FILENAME}
tar -C /usr/local -xzf ${FILENAME}
ldconfig /usr/local/lib

Or use the docker container

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

Python API

The Python interface is provided via CharmKIT, allowing seamless integration into AI and outer-loop (UQ, Optimization) workflows. Check the corresponding readme for further info

Scaling Studies

Performance benchmarks and scaling plots can be found [here].

License

KiT-RT is released under the MIT License. See LICENSE for details.

Cite this software using

@article{kitrt2023,
    title={KiT-RT: An extendable framework for radiative transfer and therapy},
    author={Kusch, Jonas and Schotth{\"o}fer, Steffen and Stammer, Pia and Wolters, Jannick and Xiao, Tianbai},
    journal={ACM Transactions on Mathematical Software},
    volume={49},
    number={4},
    pages={1--24},
    year={2023},
    publisher={ACM New York, NY}
}

About

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

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 7