Geant4 Version: 11.3.2
Operating System: Ubuntu 26.04 LTS
Compiler/Version: GCC 15.2.0
CMake Version: 4.4.1
Hello,
I have been working on a project to measure gamma energies from radioactive decays using HPGe detectors. I recently have tried simulating 1 million Cesium-137 decays by generating the particles at rest at the origin, recording the energy, weight, and time of gamma ray interaction in the active crystal of my HPGe detectors into Ntuples, and then analyzing the data in ROOT. In ROOT, energy deposits in the detector and their weights are summed individually for 1us collection windows, and the pulse height spectrum is constructed with the summed energy as the bin and the summed weights as the magnitude. I also apply a simple resolution smearing to the PHS with a particular FWHM and record a second histogram of just the energies of the emitted gamma particles.
In analogue decay mode, I am seeing what I expect in terms of the energy spectrum of emitted gammas (about 662 keV) and the response of my detector, as seen below:
However, in variance reduction mode, enabled by
/process/had/rdm/sourceTimeProfile beam.data
/process/had/rdm/decayBiasProfile measures.data
/process/had/rdm/BRbias 1
/process/had/rdm/analogueMC 0
with a source window from 0 to 1 ns and a measures window from 0 to 1 year, my gamma energy spectrum becomes
Looking through the entire Ntuple of emitted particles, there are no instances of 662 keV gammas; rather (almost) all are of energy 283.5 keV. With BRbias turned off, the energy difference persists, but with a lower count rate:
It also persists regardless of the defined decay bias window.
This issue is NOT present when I did the same tests with Iron-61. First, the analogue mode is very straight forward:
And the variance reduction mode is similar regardless of BRbias (off first, on second):
Any help would be much appreciated. I can provide any code that may assist.







