We want to study the effects of uranium/thorium decay chains in our detector, without the global-time/local-time problems which result from U-238's multi-billion-year half-life. To do this, we created a simple "histogram" text file for use with RDM: /gun/particle ion /gun/ion 92 238 /grdm/sourceTimeProfile timeprof.txt where timeprof.txt contains: 0 0 0.99e6 0 1e6 1 1.01e6 0 The job crashes in RDM: *** Break *** segmentation violation Generating stack trace... 0x0000000114611787 in G4RadioactiveDecay::DecayIt(G4Track const&, G4Step const&) (in libG4processes.dylib) (G4RadioactiveDecay.cc:1661) 0x0000000114615db5 in G4RadioactiveDecay::AtRestDoIt(G4Track const&, G4Step const&) (in libG4processes.dylib) (G4RadioactiveDecay.hh:337) 0x00000001131e874c in G4SteppingManager::InvokeAtRestDoItProcs() (in libG4tracking.dylib) (G4SteppingManager2.cc:341) 0x00000001131e4444 in G4SteppingManager::Stepping() (in libG4tracking.dylib) (G4SteppingManager.cc:160) 0x00000001131fad28 in G4TrackingManager::ProcessOneTrack(G4Track*) (in libG4tracking.dylib) (G4TrackingManager.cc:128) [...] This crash only occurs in the 10.1 release (and patches), not in 10.0 and not in 10.2-beta. The error is due to a partial, incomplete migration from G4AlphaDecayChannel to G4AlphaDecay for alpha-decay processes in RDM, specifically lines 909-921 of G4RadioactiveDecay.cc.
Problem was due to a divide by zero when a zero endpoint energy was sent to the beta decay class. This happens only in the biasing code and passing zero is the expected behavior. Protection against the zero divide was added to G4BetaMinusDecay.