Problem 2552

Summary: New neutron inelastic thermal scattering data for: h_water contains wrong cos value
Product: Geant4 Reporter: Vasilis Vlachoudis <Vasilis.Vlachoudis>
Component: processes/hadronic/models/neutron_hpAssignee: loic.thulliez
Status: ASSIGNED ---    
Severity: normal CC: Alberto.Ribon, Vladimir.Ivantchenko
Priority: P4    
Version: 11.1   
Hardware: All   
OS: All   

Description Vasilis Vlachoudis 2023-07-13 14:23:37 CEST
The neutron Thermal Scattering Inelastic scattering for h_water
G4NDL4.7/ThermalScattering/Inelastic/FS/h_water.z
ThermalScattering_XS_JEFF33_TSL_mix_JEFF33_ENDFB8_LowPrecision

(maybe also the other files I didn't check them)
for some energies the last iso probable cos-theta is less than the previous entry. This leads to sample the cos-theta from the wrong iso-probable angular interval.
 
Inelastic: T=293.6
Ein=2.855 Eout=2.85501 j=7 x=0.999813 xprev=0.999828
Ein=3.12 Eout=3.11999 j=7 x=0.999813 xprev=0.999838
Ein=3.12 Eout=3.12001 j=7 x=0.999817 xprev=0.999831
Ein=3.75 Eout=3.74999 j=7 x=0.999825 xprev=0.999841
Ein=3.75 Eout=3.74999 j=7 x=0.999838 xprev=0.999839
Ein=3.75 Eout=3.75001 j=7 x=0.999825 xprev=0.999841
Ein=4.07 Eout=4.06999 j=7 x=0.999816 xprev=0.999865
Ein=4.07 Eout=4.07001 j=7 x=0.999816 xprev=0.999865
Inelastic: T=323.6
Ein=3.75 Eout=3.74999 j=7 x=0.99983 xprev=0.999846
Ein=3.75 Eout=3.75001 j=7 x=0.999819 xprev=0.999856
Ein=4.07 Eout=4.06999 j=7 x=0.99983 xprev=0.999842
Ein=4.07 Eout=4.07001 j=7 x=0.999834 xprev=0.999837
Inelastic: T=373.6
Ein=2.59 Eout=2.59001 j=7 x=0.999811 xprev=0.999817
Ein=2.855 Eout=2.85499 j=7 x=0.999816 xprev=0.999826
Ein=2.855 Eout=2.85501 j=7 x=0.999813 xprev=0.999826
Ein=3.12 Eout=3.11999 j=7 x=0.999812 xprev=0.999816
Ein=3.12 Eout=3.12001 j=7 x=0.99982 xprev=0.999833
Ein=3.42 Eout=3.41999 j=7 x=0.999818 xprev=0.999841
Ein=3.42 Eout=3.41999 j=7 x=0.999818 xprev=0.999823
Ein=3.42 Eout=3.42001 j=7 x=0.999818 xprev=0.999823
Ein=3.42 Eout=3.42001 j=7 x=0.999829 xprev=0.999836
Ein=3.42 Eout=3.42001 j=7 x=0.999821 xprev=0.999837
Ein=3.75 Eout=3.74999 j=7 x=0.999828 xprev=0.999835
Ein=3.75 Eout=3.74999 j=7 x=0.999838 xprev=0.999839
Ein=3.75 Eout=3.75001 j=7 x=0.999835 xprev=0.999842
Ein=3.75 Eout=3.75001 j=7 x=0.99983 xprev=0.999831
Ein=4.07 Eout=4.06999 j=7 x=0.999819 xprev=0.999861
Ein=4.07 Eout=4.06999 j=7 x=0.999839 xprev=0.999846
Ein=4.07 Eout=4.06999 j=7 x=0.999829 xprev=0.999834
Ein=4.07 Eout=4.07001 j=7 x=0.999829 xprev=0.999834
Ein=4.07 Eout=4.07001 j=7 x=0.999843 xprev=0.999843
Ein=4.07 Eout=4.07001 j=7 x=0.999835 xprev=0.999849
Ein=4.07 Eout=4.07001 j=7 x=0.999821 xprev=0.999857
Inelastic: T=423.6
Ein=2.855 Eout=2.85499 j=7 x=0.999812 xprev=0.999829
Ein=2.855 Eout=2.85499 j=7 x=0.999821 xprev=0.999822
Ein=2.855 Eout=2.85501 j=7 x=0.999821 xprev=0.999822
Ein=2.855 Eout=2.85501 j=7 x=0.999813 xprev=0.999826
Ein=3.12 Eout=3.11999 j=7 x=0.999816 xprev=0.999833
Ein=3.12 Eout=3.11999 j=7 x=0.999811 xprev=0.999817
Ein=3.12 Eout=3.12001 j=7 x=0.999812 xprev=0.999814
Ein=3.12 Eout=3.12001 j=7 x=0.999818 xprev=0.99983
Ein=3.42 Eout=3.41999 j=7 x=0.999821 xprev=0.999837
Ein=3.42 Eout=3.41999 j=7 x=0.999821 xprev=0.999842
Ein=3.42 Eout=3.41999 j=7 x=0.999815 xprev=0.999822
Ein=3.42 Eout=3.42001 j=7 x=0.999813 xprev=0.999826
Ein=3.42 Eout=3.42001 j=7 x=0.999815 xprev=0.999822
Ein=3.75 Eout=3.74999 j=7 x=0.999826 xprev=0.999839
Ein=3.75 Eout=3.74999 j=7 x=0.999835 xprev=0.999842
Ein=3.75 Eout=3.74999 j=7 x=0.999815 xprev=0.999836
Ein=3.75 Eout=3.74999 j=7 x=0.999821 xprev=0.999832
Ein=3.75 Eout=3.75001 j=7 x=0.999813 xprev=0.999839
Ein=3.75 Eout=3.75001 j=7 x=0.999815 xprev=0.999836
Ein=3.75 Eout=3.75001 j=7 x=0.999837 xprev=0.99984
Ein=3.75 Eout=3.75001 j=7 x=0.999831 xprev=0.999845
Ein=3.75 Eout=3.75001 j=7 x=0.999828 xprev=0.999836
Ein=4.07 Eout=4.06999 j=7 x=0.999817 xprev=0.999865
Ein=4.07 Eout=4.06999 j=7 x=0.999839 xprev=0.999846
Ein=4.07 Eout=4.06999 j=7 x=0.999842 xprev=0.999844
Ein=4.07 Eout=4.06999 j=7 x=0.999814 xprev=0.999847
Ein=4.07 Eout=4.06999 j=7 x=0.999818 xprev=0.999845
Ein=4.07 Eout=4.06999 j=7 x=0.999831 xprev=0.999834
Ein=4.07 Eout=4.07001 j=7 x=0.999826 xprev=0.999838
Ein=4.07 Eout=4.07001 j=7 x=0.999814 xprev=0.999847
Ein=4.07 Eout=4.07001 j=7 x=0.999842 xprev=0.999844
Ein=4.07 Eout=4.07001 j=7 x=0.999836 xprev=0.999848
Ein=4.07 Eout=4.07001 j=7 x=0.999818 xprev=0.999862
Inelastic: T=473.6
Ein=2.855 Eout=2.85499 j=7 x=0.999816 xprev=0.999821
Ein=2.855 Eout=2.85499 j=7 x=0.999813 xprev=0.999826
Ein=2.855 Eout=2.85501 j=7 x=0.999813 xprev=0.999826
Ein=2.855 Eout=2.85501 j=7 x=0.999815 xprev=0.999824
Ein=2.855 Eout=2.85501 j=7 x=0.999817 xprev=0.999818
Ein=3.12 Eout=3.11999 j=7 x=0.999817 xprev=0.99983
Ein=3.12 Eout=3.11999 j=7 x=0.999813 xprev=0.999838
Ein=3.12 Eout=3.11999 j=7 x=0.999818 xprev=0.999835
Ein=3.12 Eout=3.12001 j=7 x=0.999818 xprev=0.999835
Ein=3.42 Eout=3.41999 j=7 x=0.999821 xprev=0.999842
Ein=3.42 Eout=3.41999 j=7 x=0.999816 xprev=0.999821
Ein=3.42 Eout=3.42001 j=7 x=0.999821 xprev=0.999822
Ein=3.42 Eout=3.42001 j=7 x=0.999817 xprev=0.999819
Ein=3.42 Eout=3.42001 j=7 x=0.999821 xprev=0.999842
Ein=3.42 Eout=3.42001 j=7 x=0.999815 xprev=0.999849
Ein=3.75 Eout=3.74998 j=7 x=0.999829 xprev=0.999834
Ein=3.75 Eout=3.74999 j=7 x=0.999815 xprev=0.999859
Ein=3.75 Eout=3.74999 j=7 x=0.999828 xprev=0.999848
Ein=3.75 Eout=3.74999 j=7 x=0.99982 xprev=0.999826
Ein=3.75 Eout=3.74999 j=7 x=0.999818 xprev=0.999832
Ein=3.75 Eout=3.74999 j=7 x=0.999824 xprev=0.999832
Ein=3.75 Eout=3.75001 j=7 x=0.999817 xprev=0.999837
Ein=3.75 Eout=3.75001 j=7 x=0.999819 xprev=0.999829
Ein=3.75 Eout=3.75001 j=7 x=0.99982 xprev=0.999826
Ein=3.75 Eout=3.75001 j=7 x=0.999828 xprev=0.999848
Ein=3.75 Eout=3.75001 j=7 x=0.999822 xprev=0.999852
Ein=3.75 Eout=3.75001 j=7 x=0.999816 xprev=0.999857
Ein=3.75 Eout=3.75002 j=7 x=0.999829 xprev=0.999834
Ein=4.07 Eout=4.06998 j=7 x=0.99982 xprev=0.99986
Ein=4.07 Eout=4.06998 j=7 x=0.99983 xprev=0.999853
Ein=4.07 Eout=4.06998 j=7 x=0.99982 xprev=0.999838
Ein=4.07 Eout=4.06998 j=7 x=0.999819 xprev=0.99984
Ein=4.07 Eout=4.06998 j=7 x=0.999817 xprev=0.999843
Ein=4.07 Eout=4.06998 j=7 x=0.999814 xprev=0.999848
Ein=4.07 Eout=4.07001 j=7 x=0.999816 xprev=0.999846
Ein=4.07 Eout=4.07001 j=7 x=0.99982 xprev=0.999838
Ein=4.07 Eout=4.07001 j=7 x=0.99983 xprev=0.999853
Ein=4.07 Eout=4.07002 j=7 x=0.999826 xprev=0.999857
Ein=4.07 Eout=4.07002 j=7 x=0.99982 xprev=0.99986
Inelastic: T=523.6
Ein=3.12 Eout=3.11998 j=7 x=0.999818 xprev=0.999828
Ein=3.12 Eout=3.12001 j=7 x=0.999818 xprev=0.999828
Ein=3.12 Eout=3.12001 j=7 x=0.999819 xprev=0.999826
Ein=3.42 Eout=3.41998 j=7 x=0.999818 xprev=0.999842
Ein=3.42 Eout=3.41999 j=7 x=0.999816 xprev=0.999821
Ein=3.42 Eout=3.42001 j=7 x=0.999817 xprev=0.999819
Ein=3.42 Eout=3.42002 j=7 x=0.999818 xprev=0.999842
Ein=3.75 Eout=3.74998 j=7 x=0.999829 xprev=0.999834
Ein=3.75 Eout=3.74998 j=7 x=0.999823 xprev=0.999845
Ein=3.75 Eout=3.74998 j=7 x=0.999819 xprev=0.999851
Ein=3.75 Eout=3.74998 j=7 x=0.999818 xprev=0.999853
Ein=3.75 Eout=3.74998 j=7 x=0.999816 xprev=0.999835
Ein=3.75 Eout=3.75002 j=7 x=0.999816 xprev=0.999835
Ein=3.75 Eout=3.75002 j=7 x=0.999821 xprev=0.999825
Ein=3.75 Eout=3.75002 j=7 x=0.999818 xprev=0.999853
Ein=3.75 Eout=3.75002 j=7 x=0.99983 xprev=0.999832
Ein=4.07 Eout=4.06998 j=7 x=0.999819 xprev=0.99986
Ein=4.07 Eout=4.06998 j=7 x=0.999826 xprev=0.999828
Ein=4.07 Eout=4.06998 j=7 x=0.999825 xprev=0.99983
Ein=4.07 Eout=4.06998 j=7 x=0.999822 xprev=0.999834
Ein=4.07 Eout=4.06998 j=7 x=0.999816 xprev=0.999846
Ein=4.07 Eout=4.07002 j=7 x=0.999817 xprev=0.999844
Ein=4.07 Eout=4.07002 j=7 x=0.999823 xprev=0.999832
Ein=4.07 Eout=4.07002 j=7 x=0.999819 xprev=0.99986
Ein=4.07 Eout=4.07002 j=7 x=0.999821 xprev=0.999858
Inelastic: T=573.6
Ein=3.42 Eout=3.41998 j=7 x=0.999823 xprev=0.999831
Ein=3.42 Eout=3.41998 j=7 x=0.999822 xprev=0.999833
Ein=3.42 Eout=3.41998 j=7 x=0.999814 xprev=0.999826
Ein=3.42 Eout=3.42002 j=7 x=0.999814 xprev=0.999826
Ein=3.42 Eout=3.42002 j=7 x=0.999822 xprev=0.999833
Ein=3.42 Eout=3.42002 j=7 x=0.999824 xprev=0.99983
Ein=3.75 Eout=3.74998 j=7 x=0.999827 xprev=0.999836
Ein=3.75 Eout=3.74998 j=7 x=0.999825 xprev=0.999842
Ein=3.75 Eout=3.74998 j=7 x=0.999824 xprev=0.999844
Ein=3.75 Eout=3.74998 j=7 x=0.999821 xprev=0.999826
Ein=3.75 Eout=3.75002 j=7 x=0.999822 xprev=0.999825
Ein=3.75 Eout=3.75002 j=7 x=0.999824 xprev=0.999844
Ein=4.07 Eout=4.06998 j=7 x=0.999834 xprev=0.999835
Ein=4.07 Eout=4.06998 j=7 x=0.999829 xprev=0.999845
Ein=4.07 Eout=4.06998 j=7 x=0.999826 xprev=0.99985
Ein=4.07 Eout=4.06998 j=7 x=0.999825 xprev=0.999852
Ein=4.07 Eout=4.07002 j=7 x=0.999825 xprev=0.999841
Ein=4.07 Eout=4.07002 j=7 x=0.999822 xprev=0.999835
Ein=4.07 Eout=4.07002 j=7 x=0.999825 xprev=0.999852
Inelastic: T=623.6
Ein=3.75 Eout=3.74998 j=7 x=0.999828 xprev=0.999834
Ein=3.75 Eout=3.75002 j=7 x=0.999828 xprev=0.999834
Ein=3.75 Eout=3.75002 j=7 x=0.999829 xprev=0.999833
Ein=3.75 Eout=3.75002 j=7 x=0.99983 xprev=0.999831
Ein=4.07 Eout=4.06998 j=7 x=0.999831 xprev=0.99984
Ein=4.07 Eout=4.06998 j=7 x=0.99983 xprev=0.999842
Ein=4.07 Eout=4.06998 j=7 x=0.999816 xprev=0.999848
Ein=4.07 Eout=4.07002 j=7 x=0.999817 xprev=0.999846
Ein=4.07 Eout=4.07002 j=7 x=0.99983 xprev=0.999842
Ein=4.07 Eout=4.07002 j=7 x=0.999832 xprev=0.999838
Inelastic: T=647.2
Ein=3.12 Eout=3.11998 j=7 x=0.999813 xprev=0.999814
Ein=3.12 Eout=3.12002 j=7 x=0.999813 xprev=0.999814
Ein=3.75 Eout=3.74998 j=7 x=0.999819 xprev=0.99983
Ein=3.75 Eout=3.75002 j=7 x=0.99982 xprev=0.999828
Ein=4.07 Eout=4.06998 j=7 x=0.999834 xprev=0.999835
Ein=4.07 Eout=4.06998 j=7 x=0.999833 xprev=0.999837
Ein=4.07 Eout=4.06998 j=7 x=0.999826 xprev=0.999828
Ein=4.07 Eout=4.06998 j=7 x=0.999832 xprev=0.999836
Ein=4.07 Eout=4.07002 j=7 x=0.99983 xprev=0.999837
Ein=4.07 Eout=4.07002 j=7 x=0.999833 xprev=0.999837
Inelastic: T=800
Ein=3.12 Eout=3.12002 j=7 x=0.999816 xprev=0.999819
Ein=3.42 Eout=3.41998 j=7 x=0.999814 xprev=0.99983
Ein=3.42 Eout=3.41998 j=7 x=0.999819 xprev=0.999828
Ein=3.42 Eout=3.41998 j=7 x=0.999822 xprev=0.999826
Ein=3.42 Eout=3.42002 j=7 x=0.999822 xprev=0.999826
Ein=3.42 Eout=3.42002 j=7 x=0.999816 xprev=0.999831
Ein=3.42 Eout=3.42002 j=7 x=0.999815 xprev=0.999829
Ein=3.75 Eout=3.74998 j=7 x=0.999814 xprev=0.999845
Ein=3.75 Eout=3.74998 j=7 x=0.999821 xprev=0.999839
Ein=3.75 Eout=3.74998 j=7 x=0.999824 xprev=0.999837
Ein=3.75 Eout=3.75002 j=7 x=0.999824 xprev=0.999837
Ein=3.75 Eout=3.75002 j=7 x=0.999815 xprev=0.999844
Ein=4.07 Eout=4.06998 j=7 x=0.999816 xprev=0.999851
Ein=4.07 Eout=4.06998 j=7 x=0.999822 xprev=0.999847
Ein=4.07 Eout=4.06998 j=7 x=0.999811 xprev=0.999815
Ein=4.07 Eout=4.07002 j=7 x=0.999811 xprev=0.999813
Ein=4.07 Eout=4.07002 j=7 x=0.999822 xprev=0.999847
Ein=4.07 Eout=4.07002 j=7 x=0.999818 xprev=0.99985
Ein=4.07 Eout=4.07002 j=7 x=0.999816 xprev=0.999851
Comment 1 Gabriele Cosmo 2023-07-15 08:46:05 CEST
*** Problem 2553 has been marked as a duplicate of this problem. ***
Comment 2 loic.thulliez 2023-07-20 23:34:09 CEST
Dear Vasilis,
Thanks to get in touch with us.
When I look at the file that I have processed, I don't see any problem in FS/Inelastic/h_water.z in using the following dataset " wget https://geant4-data.web.cern.ch/datasets/Thermal/ThermalScattering_XS_JEFF33_TSL_mix_JEFF33_ENDFB80_LowPrecision.1.0.tar.gz". 
For example when I look at the first example that you give "Inelastic: T=293.6
Ein=2.855 Eout=2.85501 j=7 x=0.999813 xprev=0.999828", I get:

2.854998e+00 1.551079e+01 6.196719e-01 7.250247e-01 7.936083e-01 8.490708e-01 8.969501e-01 9.397127e-01 9.785491e-01 9.988888e-01

2.855000e+00 1.556070e+01 6.198778e-01 7.254010e-01 7.940956e-01 8.496479e-01 8.976047e-01 9.404366e-01 9.792820e-01 9.989958e-01

2.855000e+00 1.556064e+01 6.198778e-01 7.254010e-01 7.940956e-01 8.496479e-01 8.976047e-01 9.404366e-01 9.792820e-01 9.989958e-01

2.855002e+00 1.550456e+01 6.196516e-01 7.249875e-01 7.935601e-01 8.490138e-01 8.968854e-01 9.396412e-01 9.784762e-01 9.988777e-01

So I don't see any problem on my side.
To try to disentangle things:

* could you look at the file directly with the command :
/usr/bin/zlib-flate -uncompress  < h_water.z >> h_water.txt

and then copy/paste here the lines relevant to the following example that you mention and also give the line number at which you spot the problem: "Inelastic: T=293.6
Ein=2.855 Eout=2.85501 j=7 x=0.999813 xprev=0.999828"

* could you send my the script that you have used to read the data?

Cheers,
Loïc
Comment 3 Vasilis Vlachoudis 2023-07-21 09:15:59 CEST
Thanks Loic for looking at it,

look for example at lines 137627 +3

2.855012e+00 1.610547e+00 9.375713e-01 9.806893e-01 9.899421e-01 9.948478e-01 9.975586e-01 9.990857e-01 9.998263e-01 9.998133e-01
2.855012e+00 1.608808e+00 9.375337e-01 9.806684e-01 9.899246e-01 9.948345e-01 9.975489e-01 9.990792e-01 9.998237e-01 9.998146e-01
2.855012e+00 1.605336e+00 9.374586e-01 9.806264e-01 9.898895e-01 9.948080e-01 9.975294e-01 9.990663e-01 9.998184e-01 9.998170e-01

and compare the last two columns:
9.998263e-01 9.998133e-01
9.998237e-01 9.998146e-01
9.998184e-01 9.998170e-01

BTW now that I am looking the file I see that many entries that could be removed or increase the floating point format precision.
E.g. There are 5 consecutive lines corresponding to the "same" outgoing energy 2.855012e+00
probably due to lack of digits in the formatting, which increases unnecessary the file size.

cheers
vasilis
Comment 4 loic.thulliez 2023-07-21 14:26:49 CEST
Dear Vasilis,
You are right when I processed the data I have made some round-off in the outgoing energy and if you take one more digit, the energies will be different. I will discuss with Alberto if reproducing the library for the next release could be doable.
For the problem of cos(mu), now, I am agree with you. Just to be sure the last example if for light water at 473.6 K, is that it ?
Apparently it is a problem coming from NJOY processing tool, so this may complicate its solving. So I have to inesgivate further the problem.
I stay in touch with you.

Cheers,
Loic
Comment 5 Vasilis Vlachoudis 2023-07-21 16:36:05 CEST
In my opinion, the energy grid resolution you have is enough (much finer than what the data can provide) so I would not see the reason to add one more digit, but rather remove the apparent duplicate entries.

For the cos(mu) issue I have the impression that is due to some numerical precision hiccup in the processing program (NJOY?). If NJOY cannot fix it,
and if it only concerns the last interval (as it seems), my suggestion would be to replace it with the previous value so as to avoid the sampling of the last interval
Comment 6 Vasilis Vlachoudis 2023-07-21 16:36:26 CEST
In my opinion, the energy grid resolution you have is enough (much finer than what the data can provide) so I would not see the reason to add one more digit, but rather remove the apparent duplicate entries.

For the cos(mu) issue I have the impression that is due to some numerical precision hiccup in the processing program (NJOY?). If NJOY cannot fix it,
and if it only concerns the last interval (as it seems), my suggestion would be to replace it with the previous value so as to avoid the sampling of the last interval
Comment 7 loic.thulliez 2023-08-21 14:46:19 CEST
Dear Vasilis,
With a colleague, we have contacted NJOY people and it really seems to be a NJOY problem. A fix has been attempted and now the linearization problem of cos(mu) is gone without be sure that the results are correct. So I think, for now, it is better to stay with what we have and correct the last cos(mu) having strange value in adding to the previous value a small additional epsilon equal to 0.0001, what do you think?
If it is OK with you, I will reprocess the data and get in touch with Alberto to upload them.

On the long term, I will pay attention to new NJOY version and update the database if any long term fix would be done to tackle this problem.

I hope that this solution suits you.

Cheers,
Loïc
Comment 8 Vasilis Vlachoudis 2023-08-21 15:53:49 CEST
Dear Loic,

many thanks for contacting NJOY to fix it.
For me the interim solution you proposed looks fine.
I will wait for the new data set

best
vasilis
Comment 9 loic.thulliez 2023-08-22 11:41:52 CEST
Hello Vasilis,
I have made the correction and uploaded the corrected dataset for h_water here: https://cernbox.cern.ch/s/TfRFMrasMGQgklY
Let me know if everything is also fine for you.
If yes, I will reprocess all the datasets.

Best,
Loïc