Problem 903 - Problem with the elastic scattering of low energettic neutron (<20 MeV) on Helium when using G4UHadronElasticProcess
Summary: Problem with the elastic scattering of low energettic neutron (<20 MeV) on H...
Status: RESOLVED FIXED
Alias: None
Product: Geant4
Classification: Unclassified
Component: processes/hadronic/cross_sections (show other problems)
Version: 8.1
Hardware: PC Linux
: P2 normal
Assignee: Vladimir.Ivantchenko
URL:
Depends on:
Blocks:
 
Reported: 2006-11-05 15:21 CET by desorgher
Modified: 2007-01-04 08:43 CET (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this problem.
Description desorgher 2006-11-05 15:21:08 CET
Dear Vladimir,


The class G4UHadronElasticProcess  gives much too low cross section for
the elastic scattering of neutron on Helium. Below 0.01 MeV the CS is nearly zero.
According to the endf database this CS should be around 0.76 barn for Ekin<0.01 MeV.
In the G4UHadronElasticProcess it is possible to use the G4NeutronHPDataSet to
compute the neutron elastic cross sections below <20 Mev.
Looking at the code it appears that it is true only for elements heavier than
Helium.
For Helium and Hydrogen the cross section are computed with the CHIPS model
also for energy <20 MeV.
For Hydrogen it is may be correct, but for Helium it is not the case.
I would suggest that if the user decide to use the NeutronHP data for Ekin<20
MeV in G4UHadronElasticProcess it should be done for all element and not just
for elements other than  Hydrogen and Helium.

To remove this problem in my simulation I did replace the

The line 148 of  G4UHadronElasticProcess.cc
"if(iz <= 2 && (theParticle == theProton || theParticle == theNeutron))"

by

"if(iz <= 2 && (theParticle == theProton || (theParticle == theNeutron &&
(dp->GetKineticEnergy()>20. *MeV || !flagHP))))"


Note that all simulations of neutrons scattering on Helium
that uses the constructor  G4HadronElasticPhysics to define the elastic
scattering of neutron are affected by this bug as   G4HadronElasticPhysics
use the G4UHadronElasticProcess class.


Best Regards

Laurent Desorgher
Comment 1 Vladimir.Ivantchenko 2007-01-04 08:43:59 CET
Dear Laurent,

The problem has been fixed in a similar way as you propose. The fix was provided
for the patch-02 to 8.1 release. Please, try to update to the patch or to the
new release 8.2.

best wishes for the New Year!
Vladimir