|Message: Energy of prompt photon from G4NeutronHPCaptureFS is higher than that in reality||Not Logged In (login)|
Click on the Forum title, e.g. on the "Forums by Category" page, to read a sequence of postings to the Forum and its threads all in one page. If you are only interested in one thread or the thread following a specific posting, click the thread or the posting, which takes you to a smaller page, which contains only the part you are interested in and may be easier to navigate.
Messages are "chained" if there are only replies at the first level, i.e. 1/1.html, 1/1/1.html etc. In case of "chained" messages the message number is replaced by the icon and there is no indentation.
Inline: Display the subject line only or also the text of the posting(s); for the choice "All" the "Outline" choices are switched off.
|1||0||1||no text / full text of posting|
|2||1||All||text for level 1 only / text for All postings|
Outline: Choose the depth of the posting thread, successive toggle controls provide increasing detail.
|1||2||1||2 levels / 1 level (original posting)|
|2||3||2||3 levels / 2 levels|
|3||3||All||3 levels / all levels (all postings)|
I am using Geant4.8.3 to simulate the neutron interactions with germanium detectors. The energy of neutron from the source is smaller than 20 MeV. So I am using the high precise neutron process in my simulation.
In the experimental setup, the neutron source is put in a big paraffin collimator. From the energy spectrum recorded by the germanium detector, I observed a gamma line with energy of 2223.0 keV (the statistic error is very small), which is from the neutron capture process: n + H -> D + gamma. However, the same gamma line in the simulation has the energy of 2224.6 keV.
In order to understand the discrepancy, I looked into the codes of the class "G4NeutronHPCaptureFS", I found the following code:
thePhotons = theFinalStatePhotons.GetPhotons(eKinetic);
which, I think, tries to set the final state photon energy based on the neutron energy and the Geant4 neutron data sets file:
G4NDL3.10/Capture/FS/1_1_Hydrogen (This file contains the energy of the excitation level of D, that is, 2224.6 keV)
My guess is that the "GetPhotons" function reads in the energy of the excitation level of D, but somehow does not calculate the energy of the final state photon accordingly, which should be a little smaller. In order to check that, I added the following tracing codes right after the above codes:
for(i=0; i<thePhotons->size(); i++) G4cout<<"Egtot = " << thePhotons->operator(i)->GetTotalEnergy()<<G4endl;
It gave the value of 2224.6 keV. To further test it, I changed the values in the file 1_1_Hydrogen to 2223.0 keV, and the tracing codes gave me 2223.0 keV. Seems my guess is true.
Is there anyone having similar problems? Is this a real Geant4 bug or I misunderstand something?
|Inline Depth:||Outline Depth:||Add message:|