Created attachment 162 [details] Program to reproduce the above described problem. As posted on Hypernews Forum Hello everyone, I found something really odd, which I do not understand at all. I boiled everything down to a basic setup which I want to explain in the following. Geant4 version: 4.9.4.p03 edit: and 4.9.4.p04 Setup: My detector volume is a cylinder filled with ice. It is 40m long and has a radius of 30m. Initial particle: pi+ with 10GeV. It is injected along the symmetry axis of the cylinder. Output: In my SteppingAction I sum up all the energy deposition by adding, aStep->GetTotalEnergyDeposit(); for all steps. HepRandom: I use the following engine: CLHEP::RanecuEngine In EventAction::BeginOfEventAction I set the seeds to, seeds[0] = 1336144155; seeds[1] = 38643860; The problem only occurs for this specific seed. If I now look at the total energy deposition it is roughly 17GeV. So it is 7GeV LARGER than the primary energy! How is this possible? For every other seed I used the total energy deposition is less than 10GeV, around 8GeV. The only test I could think of was to have a look at processes that produces a large number of secondaries. Below you can see some of the output. The first interaction looks fine. But the second one is strange. The pi- has a kinetic energy of 0.077GeV at the presteppoint but produces secondaries with a total energy of a least 7GeV. What came to my attention is the fact that the secondary particles that are produced are exactly the same in both interactions, except for the two marked with ***. If I change any parameter of my simulation the total energy deposition is less than the primary energy as it should be. I stripped my simulation down as far as I could, but still the same result. Are there any ideas what might cause something like this? Or how I could easily check where it is going wrong? Cheers, Leif Name of interacting particle: pi+ kinetic energy at presteppoint: 9.48439 GeV kinetic energy at poststeppoint: 0 GeV step ID: 249 track ID: 1 parent ID: 0 :----- List of 2ndaries - 15 (Rest= 0,Along= 0,Post=15) : 0.00578839 -0.00533029 -17.3629 m 3.18163 GeV pi0 generated by PionPlusInelastic : 0.00578839 -0.00533029 -17.3629 m 2.10236 GeV neutron generated by PionPlusInelastic : 0.00578839 -0.00533029 -17.3629 m 1.25265 GeV pi+ generated by PionPlusInelastic : 0.00578839 -0.00533029 -17.3629 m 854.116 MeV pi+ generated by PionPlusInelastic : 0.00578839 -0.00533029 -17.3629 m 369.54 MeV pi0 generated by PionPlusInelastic : 0.00578839 -0.00533029 -17.3629 m 251.089 MeV pi0 generated by PionPlusInelastic : 0.00578839 -0.00533029 -17.3629 m 187.293 MeV pi- generated by PionPlusInelastic : 0.00578839 -0.00533029 -17.3629 m 160.471 MeV pi0 generated by PionPlusInelastic : 0.00578839 -0.00533029 -17.3629 m 111.015 MeV neutron generated by PionPlusInelastic : 0.00578839 -0.00533029 -17.3629 m 88.1528 MeV neutron generated by PionPlusInelastic : 0.00578839 -0.00533029 -17.3629 m 23.628 MeV proton generated by PionPlusInelastic : 0.00578839 -0.00533029 -17.3629 m 21.3006 MeV proton generated by PionPlusInelastic : 0.00578839 -0.00533029 -17.3629 m 3.9455 MeV gamma generated by PionPlusInelastic : 0.00578839 -0.00533029 -17.3629 m 1.33132 MeV gamma generated by PionPlusInelastic : 0.00578839 -0.00533029 -17.3629 m 187.809 keV C11[0.0] generated by PionPlusInelastic ------------------------------------------------------------------------------------------------------------- Name of interacting particle: pi- kinetic energy at presteppoint: 0.0773503 GeV kinetic energy at poststeppoint: 0 GeV step ID: 70 track ID: 256 parent ID: 1 :----- List of 2ndaries - 17 (Rest= 0,Along= 0,Post=17) : -0.309506 0.366112 -17.5161 m 3.18163 GeV pi0 generated by PionMinusInelastic : -0.309506 0.366112 -17.5161 m 2.10236 GeV neutron generated by PionMinusInelastic : -0.309506 0.366112 -17.5161 m 1.25265 GeV pi+ generated by PionMinusInelastic : -0.309506 0.366112 -17.5161 m 854.116 MeV pi+ generated by PionMinusInelastic : -0.309506 0.366112 -17.5161 m 369.54 MeV pi0 generated by PionMinusInelastic : -0.309506 0.366112 -17.5161 m 251.089 MeV pi0 generated by PionMinusInelastic : -0.309506 0.366112 -17.5161 m 187.293 MeV pi- generated by PionMinusInelastic : -0.309506 0.366112 -17.5161 m 160.471 MeV pi0 generated by PionMinusInelastic : -0.309506 0.366112 -17.5161 m 111.015 MeV neutron generated by PionMinusInelastic : -0.309506 0.366112 -17.5161 m 88.1528 MeV neutron generated by PionMinusInelastic : -0.309506 0.366112 -17.5161 m 23.628 MeV proton generated by PionMinusInelastic : -0.309506 0.366112 -17.5161 m 21.3006 MeV proton generated by PionMinusInelastic : -0.309506 0.366112 -17.5161 m 3.9455 MeV gamma generated by PionMinusInelastic : -0.309506 0.366112 -17.5161 m 1.33132 MeV gamma generated by PionMinusInelastic : -0.309506 0.366112 -17.5161 m 19.7198 MeV neutron generated by PionMinusInelastic *** : -0.309506 0.366112 -17.5161 m 5.2814 MeV pi0 generated by PionMinusInelastic *** : -0.309506 0.366112 -17.5161 m 187.809 keV C11[0.0] generated by PionMinusInelastic
I tested this behavior some more and it happens more often. As far as I can see, it happens for pi+- and kaon+-. And for the physicslist QGSP_BERT and QGSC_BERT. I could not find events when I was using LHEP or QGSP. All with an initial energy of 10GeV. If I use 100GeV it seems not to happen. When I change the primary energy to 11GeV it also occurs. I would suspect that it has something to do with the switch between QGSP and BERTINI around 10GeV. But I am no expert. Cheers, Leif
Please update to Geant4 9.5 and try your test again. Since the 9.4 release the energy non-conservation in the Bertini model (and others) has been significantly reduced.
In Geant4.5 I could not find the same behaviour.