Problem 1484 - Refinement Needed for Neutron-Element Elastic Cross Section around 32.7 MeV
Summary: Refinement Needed for Neutron-Element Elastic Cross Section around 32.7 MeV
Status: RESOLVED FIXED
Alias: None
Product: Tests
Classification: Unclassified
Component: test16 (show other problems)
Version: 9.6
Hardware: All All
: P5 normal
Assignee: dennis.herbert.wright
URL:
Depends on:
Blocks:
 
Reported: 2013-06-27 17:09 CEST by Andrew Hanson
Modified: 2015-01-29 01:18 CET (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this problem.
Description Andrew Hanson 2013-06-27 17:09:02 CEST
Within the hadronic processes for the major preset physics lists (QGSP, FTFP, etc.) except for QBBC, there is a severe instantaneous decrease in the neutron elastic scattering cross section for all elements.
The severity of it varies by the specific element, but for some such as Carbon, the 32.7 MeV point results in an instantaneous cross-section decrease of over 50%.
I have not yet confirmed, but supposedly the correct cross-sections are used for the QBBC Physics List.
This result can be seen clearly by reading cross sections from the extended hadronic example, Hadr00.

Discovery of problem elaborated on in the Geant4 Hadronic Processes forum along with ps files showing examples: http://hypernews.slac.stanford.edu/HyperNews/geant4/get/hadronprocess/1341.html
Comment 1 dennis.herbert.wright 2014-07-07 18:55:55 CEST
I have narrowed this down to a bug in the G4ChipsNeutronElasticXS class.   Actually fixing it may take a while, as the code is rather non-intuitive.
Comment 2 John Watts 2014-12-17 21:11:35 CET
I have been looking at this issue for QGSP_BIC_HP.
For this list the neutron elastic cross section is the Gheisha version for the energy range 20-32.7 from tables in G4HadronCrossSection.cc. Below 20 MeV the HP cross section is used.
Comment 3 John Watts 2014-12-31 21:48:19 CET
I believe the problem is that the test in G4ChipsNeutronElasticXS::IsIsoApplicable
is wrong. It should test for a neutron.
Line 138 should be:
//  if (particle == G4Proton::Proton()      ) return true;
  if (particle == G4Neutron::Neutron()      ) return true;
With this change the Chips cross section are used instead of defaulting to the old Gheisha ones.
Comment 4 dennis.herbert.wright 2015-01-29 01:18:38 CET
Witold Pokorski fixed this earlier this month.  The fix will be in the patch to 10.1 which will come out some time next week.