| Summary: | Inelastic hadronic interactions of nucleons and antinucleons produce far too much energy | ||
|---|---|---|---|
| Product: | Geant4 | Reporter: | dbailey |
| Component: | processes/hadronic | Assignee: | Hans-Peter.Wellisch |
| Status: | CLOSED FIXED | ||
| Severity: | critical | CC: | dbailey |
| Priority: | P2 | ||
| Version: | 2.0 | ||
| Hardware: | PC | ||
| OS: | Linux | ||
| URL: | http://helios.physics.utoronto.ca/~dbailey/ATLAS_GEANT4_6Nov2000/index.htm | ||
Hi, thank you for finding this one. As far as I can see, this happens somewhere in G4ReactionDynamics. Joe Chuma is taking care of this. Many greetings, Hans-Peter. well, this is htere for too long. As I have no news from Joe even by now, I'll look into it myself. Many greetings, Hans-Peter. this and more fixed in the next release for the low_energy stuff, Harm is at the high energy.... verified to be fixed for geant4 4.1-p1 fixed in 4.1, with the exception of one occurance of an offset of 1GeV in the HE model (in 10000 reactions). Simplar effects were there for strange particles, and have been fixed. Many greetings, Hans-Peter. |
Using Geant4.2.0 ref 2, inelastic hadronic interactions of nucleons and antinucleons usually have much more energy in the final state than in the initial state. (This in spite of my attempts to invoke the new conserveEnergy energy conservation fix.) For example, neutrons with 1 GeV kinetic energy interacting in hydrogen have a total output energy distribution with peaks at 1 GeV, 1.9 GeV, 2.9 GeV, ... Antineutrons with 1 GeV in hydrogen typically output more than 6 GeV! (See the indicated URL for plots and other discussion. By "total output energy" I currently mean the sum all step energy losses plus any neutrino energies.) The problem can easily be seen event-by-event in verbose output. Geant3/GHEISHA has a similar problem, so it seems that Geant4 has probably just propagated old GHEISHA bugs. Geant3/Fluka has no such problems. I haven't identified the specific source of the antineutron problem yet, but the extra energy problem comes from bits of code where the target mass seems to be calculated by counting the number of outgoing baryons., i.e. the calculation assumes that the incoming particle is never a baryon. I have made the nucleon bug go away in Geant3/GHEISHA by adding a correction line of code in both TWOCLU and GENXPT (see URL). I have found the corresponding lines in G4HEInelastic.cc, but my first attempt to fix them didn't work. I notice that in Geant4.2.0r2 the "energyConserve" variable introduced to activate the fix to the previous energy non-conservation bug seems to be set false by default. When I use ForceEnergyConservation to set energyConserve true, it does not solve the problem. (It would probably be better to fix the problem at the source, instead of using the energy conservation hammer to hide it, but I thought the new energy conservation section in G4HEInelastic should have been invoked by these events.) Looking more closely, the relevant bits of G4HeInelastic are beening invoked in my program for high energy (e.g. 100 GeV) interactions, and not low energy (e.g. 1 GeV) interactions where the bugs are most apparent. It is very possible that I have missed something in my modifications; I will keep looking as my time allows. Going a bit beyond these specific bugs, I would hope to be able to track all the energy in the hadronic interactions, so that when I add everything up I get out what I put in. I'd like to get the mean right, but perhaps a bigger issue is the spread. Right now if I add up all the energy, the widths of the distributions is uniform materials are not trivial. For example, a 100 GeV pi+ in iron in GEANT4 has a spread in total output energy of 7%. In Geant3/Fluka the corresponding spread is only 2.5% and so is almost negligible compared to other resolution effects in a real calorimeter. Best regards, David Bailey University of Toronto