GEANT4 simulation framework

Numerical simulations in µSR

The increased use of numerical simulations in recent years has demonstrated the potential of Monte Carlo methods also for the µSR technique, where it has opened up new application possibilities by offering:
  • New insights on the basics of µSR.
  • A better understanding of the existing spectrometers, allowing a targeted performance improvement.
  • The design and optimization of new instruments.
sw arch.png

Software architecture of the GEANT4-based musrSim and musrSimAna simulation tool.

GEANT4 as a simulation framework

GEANT4 is a Monte Carlo radiation transport toolkit which includes a complete range of functionalities required to build flexible simulation frameworks. The main features of the musrSim program:
  • Great user friendliness:
    Only one program (executable) for different muSR instruments (different studies).
    The geometry and other parameters defined in the macro file.
    Ideally, no C++ knowledge required.
  • Any geometry and material:
    Simple geometry defined in the macro text file.
    Complex shapes (e.g. volumes with holes) can be predefined in the source, and finaly defined in the macro text file.
  • Any electromagnetic field:
    From field map or constant field.
    2D, 3D and axi-symmetric.
    Whatever field superposition.
  • Root format outputs

a. New insights on the basics of µSR*

The versatility of the new tool has permitted the modelling of the incoming muon beam, the study of the outgoing positrons behaviour, the investigation of the geometrical effects, etc.

beam spot meas sim.png

Measured (left) and simulated (right) beam spot of a low-energy muon beam at z = 0.

b. Simulation-based instrument design

The new, high magnetic field instruments being built at RAL and PSI, whose design is entirely based on realistic Monte Carlo simulations, represent another example of the usefulness of numerical methods for the µSR technique.

Hi field PSI.png LEM2 view.png

Left: High-field spectrometer for TF-µSR measurements being built at PSI. Right: Simulation of the low-energy µSR spectrometer.

Future uses of the developed platform could include also:
  • Feasibility analysis
  • Experiment planning and optimization
  • Use as an interactive didactic tool
For more information on G4 Monte Carlo simulations in µSR one can refer to the following poster and the related paper.

This project was supported by the EC under the 6th Framework Programme through the Key Action: Strengthening the European Research Area, Research Infrastructures. Contract no.: RII3-CT-2003-505925.

Source code of musrSim

The program musrSim is intended to be a general tool for the whole µSR community. One of the main improvements to the older versions of musrSim should be a general analysis program musrSimAna (a subdirectory in the musrSim directory), which could help the users to easily analyse the output of the simulation in the case of a muSR analysis (i.e. to create muSR spectra and other histograms). To compile and run musrSim, the user has to have Geant4 and Root installed. musrSim was tested with Geant versions 4.9.5, 4.10.0 and Root version 5.32, and Geant4.10.3 with root version 6. Root version should not be critical, but Geant4 version should be 9.5, 10.0, or 10.3 for the corresponding source codes.
  • Version 1.0.5 from March 20, 2017, running with G4.10.3 and root 6 (should also run with root 5, but this wasn't tested): musrSim source code. This Geant4 version supports multi-threading, which means that the simulation runs, for example, eight times faster on a 8-core CPU. Note, that since Geant4.10.2 the method changed to define the minimum energy of a particle where it is considered to be stopped. By default the minimum muon energy is 1 keV. To change this to, for example, 1 eV for muons, and 10 eV for electrons ,one has to add in the musrsim mac file
    /process/em/lowestMuHadEnergy 1e-6 MeV
    /process/em/lowestElectronEnergy 1e-5 MeV
    To select a higher minimum energy the old method using SetUserLimits is still working:
    #/musr/command SetUserLimits log_World ustepMax(mm) utrakMax(mm) utimeMax(ns) uekinMin(MeV) urangMin(mm)
    /musr/command SetUserLimits log_World -1 -1 -1 2e-3 -1
  • Version 1.0.4 from August 12, 2016, running with G4.10.0: musrSim source code. This version fixes a bug in the calculation of the initial gun momentum using the /gun/kenergy parameter, if the gun particle is not a muon, and it allows generation of a Landau energy loss distribution in very thin carbon foils at keV muon energies.
  • Version from July 11, 2012, running with Geant4.9.5: musrSim source code.
  • Additional materials: A short presentation and a tutorial/examples presented by Kamil Sedlak at PSI in June 2012 .
  • Version from January 18, 2012: old musrSim source code.
  • Version from May 13, 2011: old musrSim source code.
  • Field map of the ALC (PSC) magnet.
  • Turtle file with muons at piE3.

GEANT4 home page
  • S. Agostinelli, et al., (GEANT4 Collaboration), Nucl. Instr. and Meth. A 506 (2003) 250.
  • J. Allison, et al., IEEE Trans. Nucl. Sci. 53 (2006) 270.
  • T. Lancaster, et al., Nucl. Instr. and Meth. A 580 (2007) 1578.
  • T. Shiroka, et al., Nucl. Instr. and Meth. A 591 (2008) 306.
  • K. Sedlak, et al., Physica B 404 (2009) 970.
  • K. Sedlak, et al., Physica B 404 (2009) 974.
  • T. Shiroka, et al., Physica B 404 (2009) 966.
  • Z. Salman, et al., Physica B 404 (2009) 978
  • T. Paraïso, et al., Physica B 374 (2006) 498.