The KiT-RT framework is a powerful open source platform for radiation transport.
Its main focus is on radiotherapy planning in cancer treatment.
To allow 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 extensible code structure that allows straightforward implementation of additional methods and techniques.
The KiT-RT framework is an open source project for radiation transport written in C++ programming language.
It is interested in the evolution of many-particle systems, e.g. photons, neutrons, electrons, etc.
Based on the finite volume method (FVM), it provides an efficient tool to solve the Boltzmann and related equations in multiple dimensions.
Special attention has been paid to the application of radiation therapy and treatment planning.
The framework provides rich deterministic solver types for different domain-specific problems.
A list of current supported models and equations is as follows.
- linear Boltzmann (:math:`S_N`) equation
- spherical harmonics (:math:`P_N`) equations
- entropy-closure moment (:math:`M_N`) equations
- continuous slowing down equation
Design philosophy
------------------------
The code hierarchy is designed as intuitive and neat as possible.
It's dedicated to providing a friendly interface for educational usage in kinetic theory and rich functionality for scientific research.
Benefiting from the brilliant expressiveness and low-overhead abstraction provided by the C++ programming language, we implement the easily extensible code structure,
which allow the users to focus on physics or easily extend the codes with their own methods.
What is new?
------------------------
Finite volume method is a proven approach for simulating conservation laws.
Compared with the existing open-source softwares, e.g. OpenFOAM, SU2 and Clawpack, Kit-RT holds the novelty through the following points:
- Comprehensive support for kinetic theory and phase-space equations
- Special focus on radiation therapy
- Lightweight design to ensure the flexibility for secondary development
How to get help?
------------------------
The software is being developed by members of the group `CSMM <https://www.scc.kit.edu/en/aboutus/rg-csmm.php>`_ at the Karlsruhe Institute of Technology (KIT).
For more information, please feel free to get in touch with us (link to authors page).
--------
Contents
--------
If you are interested in using KiT-RT or are trying to figure out how to use it, please feel free to get in touch with `us <authors.html>`_.
Do open an issue or pull request if you have questions, suggestions or solutions.
The kinetic theory is dedicated to describe the dynamical behavior of a many-particle system through ensemble averaging.
Particles, e.g. molecules, photons, neutrons, electrons and plasmas, travel along the trajectories and undergo occasional collisions that change their directions and energies.
Such dynamics can be formulated via operator splitting approach in the Boltzmann equation, i.e.
where the left and right hand sides model particle transports and
collisions correspondingly. Different collision models can be inserted
into such equation. If the particles only collide with a background
material one obtains linear Boltzmann collision operator
where the left and right hand sides model particle transports and collisions correspondingly.
The distribution function :math:`f` is the probability of finding a particle with certain location, and :math:`\{v, v_*\}` denotes the velocities of two classes of colliding particles.
The collision kernel :math:`k` models the strength of collisions at different velocities.
Different collision models can be inserted into the Boltzmann equation.
In the KiT-RT solver, we are interested in the linear Boltzmann equation, where the particles don't interact with one another but scatter with the background material.
Therefore, the Boltzmann can be simplified as the linear equation with respect to :math:`f`
&\left[\frac{1}{v(E)} \partial_{t} +\Omega \cdot \nabla+\Sigma_t (r, E, t)\right] \psi(r, \Omega, E, t) \\
&=\int_{0}^{\infty} d E^{\prime} \int_{\mathcal R^2} d \Omega^{\prime} \Sigma_{s}\left(r, \Omega^{\prime} \bullet \Omega, E^{\prime} \rightarrow E\right) \psi\left(r, \Omega^{\prime}, E^{\prime}, t\right) + Q(r, \Omega, E, t).
The particle distribution :math:`\psi(r, \Omega, E, t)` here is often named as angular flux, :math:`\{\Sigma_s, \Sigma_t \}` are the scattering and total cross sections correspondingly, and :math:`Q` denotes a source term.
The continuous slowing down approximation
---------
Our main goal is to compute the radiation dose
For the radiation therapy, the main goal is to compute the radiation dose accurately, which is defined as
.. math::
D(x)=\frac{1}{\rho(x)}\int_0^{\infty}\int_{\mathbb{S}^2}S(E,x)\psi(E,x,\Omega)\,d\Omega dE.
The angular flux $\psi$ can be approximated by the continuous slowing down (CSD) equation, which reads
where :math:`\rho(x)` is the background material density.
The angular flux :math:`\psi` can be approximated by a further approximation equation, i.e. the continuous slowing down (CSD) equation which reads
Here $E\in\mathbb{R}_+$ is energy, $x\in D\subset \mathbb{R}^3$ is the spatial domain and $\Omega\in\mathbb{S}^2$ is the direction of travel. The stopping power $S$ is given by
Here :math:`E\in\mathbb{R}_+` is energy, :math:`x\in D\subset \mathbb{R}^3` is the spatial domain and :math:`\Omega\in\mathbb{S}^2` is the direction of travel.