Muon Stopping Power, Range and Energy Loss

Computational Physics Consultants has developed a Muon Range Library. The library is written in C++ and designed for easy installation in any Unix-like operating system, and be used in analyses of experimetal data, or detector response simulations, by calling a handful of functions.

A range table is constructed by integrating muon stopping powers [1]. Fast interpolation methods are used to calculate the energy loss of a muon given its energy or momentum, the absorber material and thickness. Conversely, the initial energy of a muon is calculated given its final energy or momentum, the absorber material and thickness. The later is more useful in detector response simulations, whereas the former is more useful when correcting for energy losses in experimental data.

Fast integration and interpolation methods are used in order for the library to be useful when correcting for energy losses in experimetal data that is analyzed on an event-by-event manner. The library intends to introduce as little computational overhead as possible.

Demo

The first demo demonstrates the capability of the 🔗getOutgoingEnergy() library function. Input parameters are the ingoing muon energy, the material and its thickness. The output is the outgoing muon energy after energy loss.

The second demo demonstrates the capability of the 🔗getIngoingEnergy() library function. Input parameters are the outgoing muon energy, the material and its thickness. The output is the ingoing muon energy before energy loss.

License Pricing

To download the Muon Range Library, a license is necessary.

Trial license: $0.50
1 month license: $14.99
1 year license: $149.99

The trial license is valid for one day.

Downloading

The following package formats are available:

RPM (RedHat Package Manager)
DEB (Debian Package Manager)

Installation

The RPM package is installed with the command,

$ sudo rpm -i urange-dev-[version].rpm

on RedHat Linux derivative distributions (Fedora, Oracle Linux).

The DEB package is installed with the command,

$ sudo dpkg -i urange-dev-[version].deb

on Debian Linux derivative distributions (Debian, Ubuntu).

Both packages include system configuration files to perform updates via the respective package manager tool.

Documentation

The 🔗Class Documentation reviews the various methods of the library. The Muon Library includes all elements, from Z=1 to Z=118. The 🔗List of Elements show some physical quantities relevant for calculating muon stopping powers.

Examples

The following example code creates an element, a range table for the element, a muon object with momentum 200 MeV/c and outputs the range,

using namespace std;

#include <iostream>
#include <murange.hpp>

int main() {

  // Iron (Fe)
  Element *eFe = new Element("Fe");

  // Range table for element Fe
  Range *rFe = new Range(eFe);

  // Muon with momentum 200 MeV/c
  Muon *m = new Muon();
  m->SetMomentum(200);

  cout << rFe->GetRange(m) << " MeV/cm2" << endl;

  return 0;
}

The outcome of this example is,

$ g++ -o fe-range fe-range.cpp -lmurange
$ ./fe-range
56.777 MeV/cm2

Bibliography

  1. D.E. Groom, N.V. Mokhov, S.I. Striganov, "Muon Stopping Power and Range Tables 10 MeV-100 TeV", 🔗Atomic Data and Nuclear Data Tables 78, 183 (2001).