The PIRS (C) (Python Interfaces for Reactor Simulations) package is an in-house KIT/INR development based on the Python programming language and it contains bindings to nuclear reactor computational codes. This package simplifies workflow with the computational codes by providing a geometry constructor that can be used to describe a geometry model, and interfaces to computational codes.
Currently, interfaces to the MCNP5 Monte-Carlo neutron transport code and to the SCF sub-channel thermo-hydraulics code are implemented. This software was originally developed to provide a framework for coupled neutronics Monte-Carlo / thermo-hydraulics sub-channel calculations for PWR-like geometries in the frame of the EU HPMC project. This has defined the choice of codes for which interfaces were implemented in the first place, and type of solids used for geometry construction. The PIRS concept, however, allows not only the driving of coupled N/TH calculations but many other tasks. For example, model description, all necessary calculation parameters and calls to computational codes are specified as a Python script, which makes it suitable to e.g. organize parametric studies.
Moreover, communication with a code is organized via its input and output files, thus a user not familiar with the code can get examples of valid input files and a tool to process its output.
PIRS is lightweight and simple to install. It was tested with Python versions 2.6 and 2.7 under different LINUX distributions. Its installation does not require any compilation (i.e. PIRS is pure Python). All its dependencies are optional: PIRS can utilize the uncertainties Python package to handle statistical results of Monte-Carlo calculations, and the Matplotlib package to plot geometries and results of calculations. This allows the installation of PIRS in a local account within a cluster and to use it to run computational codes in parallel.
A GPL License for the PIRS distribution is under development by the KIT legal division.
If you are interested in using PIRS, please contact:
- Anton Travleev or
Additional useful links: