Skip to content

Latest commit

 

History

History
97 lines (62 loc) · 4.7 KB

README.md

File metadata and controls

97 lines (62 loc) · 4.7 KB

ries: resonances integrated over energy and space

A python library for the estimation of photonuclear reaction rates in low-energy nuclear physics experiments.

Introduction

When I increase my sample ('target') size by a factor of two, my particle detectors will record twice as many reactions.

If you fully agree to this statement, you have a rough idea of the scaling laws in beam-on-target experiments, but you may have overlooked some effects that make photonuclear experiments both challenging and exciting. The ries library is all about these finite-temperature, thick-target, isolated-resonance, multiple-scattering ... effects that call for a reconsideration of statements like the one above. When utilized in a clever way, second-order effects can even be the basis for more efficient experiments.

In fact, now is the right time to get involved, because currently existing [1] and planned [2] intense, polarized quasi-monoenergetic photon sources ('gamma-ray lasers') in the mega-electronvolt energy range have led to a 'renaissance' of photonuclear reaction studies.

Description

The object-orientated and modular library ries allows users to simulate the passage of a photon beam through a sample in a nuclear physics experiment. It aims to bridge the gap between pen-and-paper calculations and full-scale Monte Carlo particle simulations like Geant4 [3] or MCNP [4]: Precise enough for serious work, and fast enough to act as the cost function of an optimization problem or the data model in a Bayesian analysis.

ries uses ℏc = 197.3269804 MeV fm for the product of the reduced Planck constant and the speed of light. This means that all energies are assumed to be given in Mega electron volts, and all lengths in femtometers. Temperatures are assumed to be given in Kelvin.

Prerequisites

ries is python3 code and requires the following packages:

The tox tool is used to run self tests, build the documentation, and check whether the code is in standard format. This requires the following (optional) packages:

ries is shipped with several jupyter notebooks that demonstrate the usage, i.e. jupyter is another optional component.

Installation

Clone the repository:

git clone https://github.com/uga-uga/ries.git

Assuming that the setup.py file of ries is located in RIES_DIR, the code can be installed by executing:

cd $RIES_DIR
python setup.py install

To run self tests and build the documentation, execute

tox

in the same directory. By default, the documentation will be generated in html format. It can be found in $RIES_DIR/build and opened in a web browser.

Getting Started

The usage of ries is demonstrated in jupyter notebooks in $RIES_DIR/notebooks:

  • self_absorption_correction.ipynb is the most simple one. It demonstrates the self-absorption effect in thick-target experiments.
  • layer_target.ipynb is similar to self_absorption_correction.ipynb, but generalized to a multi-layer target.
  • 6Li.ipynb shows a realistic data analysis with ries which includes the propagation of uncertainty.

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Copyright (C) 2020-2022 Udo Friman-Gayer ([email protected])

References

[1] High-Intensity Gamma-Ray Source (HIγS) at TUNL https://tunl.duke.edu/research/our-facilities, accessed on 12/02/2020

[2] Variable Energy Gamma (VEGA) System at ELI-NP https://www.eli-np.ro/rd2.php, accessed on 12/02/2020

[3] https://geant4.web.cern.ch/, accessed on 12/02/2020

[4] https://mcnp.lanl.gov/, accessed on 12/02/2020