ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/geant4.9.5.p01-fix-cputime-regression.patch
Revision: 1.2
Committed: Tue Jul 24 07:03:13 2012 UTC (12 years, 9 months ago) by davidlt
Branch: MAIN
CVS Tags: cmsbuild_20130311_1500-61X-osx107, cmsbuild_20130311_1424-61X-osx108-gcc472, cmsbuild_20130327-61X-slc6, cmsbuild_20130405_1715-61X-gcc472, eulisse_20130330_1130-62X-armv7hl-dev, eulisse_20130411_1456-62X-slc6-dev, eulisse_20130227_1854-62X-dev, eulisse_20130411_1120-62X, eulisse_20130411_1129-62X-next, CMSSW_6_2_0_pre5slc6, dmendezl_20130423_1116-62X-next, dmendezl_20130423_1154-62X-next, dmendezl_20130423_1129-62X-slc6-dev, dmendezl_20130423_1112-62X-next, dmendezl_20130423_1102-62X, ForCMSSW_6_2_0_pre5slc6-slc6_amd64_gcc472, dgmlForCMSSW_6_2_0_pre5slc6-osx107_amd64_gcc472, ForCMSSW_6_2_0_pre5slc6-slc6_amd64_gcc480, dgmlForCMSSW_6_2_0_pre5slc6-slc5_amd64_gcc472, dmendezl_20130422_1417-62X-next, dmendezl_20130422_1359-62X-next, dmendezl_20130418_1659-62X-next, dmendezl_20130418_1643-62X-next, dmendezl_20130418_1706-62X-slc6-dev, dmendezl_20130418_1710-62X, dmendezl_20130411_1456-62X-slc6-dev, dmendezl_20130411_1134-62X-next, dmendezl_20130411_1129-62X-next, dmendezl_20130411_1124-62X-next, dmendezl_20130411_1120-62X, CMSSW_6_2_0_pre5-osx108_amd64_gcc472, CMSSW_6_2_0_pre5-osx107_amd64_gcc472, CMSSW_6_2_0_pre5-slc6_amd64_gcc472, CMSSW_6_2_0_pre5-slc6_amd64_gcc480, dmendezlForCMSSW_6_1_2_SLHC1-slc5_amd64_gcc472, geForCMSSW_6_2_0_pre5-slc5_amd64_gcc472, davidltForCMSSW_6_2_0_pre5-slc6_amd64_gcc472, davidltForCMSSW_6_2_0_pre5-osx108_amd64_gcc472, davidltForCMSSW_6_2_0_pre5-slc6_amd64_gcc480, davidltForCMSSW_6_2_0_pre5-osx107_amd64_gcc472, CMSSW_6_1_2_SLHC1-slc5_amd64_gcc472, CMSSW_6_1_2_SLHC1, davidltForCMSSW_6_1_2_SLHC1-slc5_amd64_gcc472, CMSSW_6_2_0_pre5-slc5_amd64_gcc472, CMSSW_6_2_0_pre5, davidltForCMSSW_6_2_0_pre5-slc5_amd64_gcc472, davidlt_20130408_1108-62X-slc6-dev, davidlt_20130408_1239-62X-next, davidlt_20130408_1107-62X, eulisse_20130407_1388-62X, eulisse_20130407_1218-62X, ge20130406_2000-62X, davidlt_20130403_1140-62X-slc6-dev, davidlt_20130403_1144-62X-next, davidlt_20130403_1139-62X, sm130402-63X-slc5_mic, eulisseForCMSSW_6_1_2-slc6_amd64_gcc472, dmendezlForCMSSW_6_1_2-slc6_amd64_gcc472, davidlt_20130330_1130-62X-armv7hl-dev, davidlt_arm_6, davidlt_arm_5, davidlt_arm_4, davidlt_arm_3, davidlt_arm_2, davidlt_arm_1, davidlt_20130328_0732-62X-slc6-dev, davidlt_20130328_0731-62X-next, davidlt_20130328_0731-62X, dm20130327-61X-slc6, dgmlForCMSSW_6_1_2-osx107_amd64_gcc472, dgmlForCMSSW_6_1_2-osx108_amd64_gcc472, CMSSW_6_1_2, ForCMSSW_6_1_2-slc6_amd64_gcc472, davidlt_20130325_1139-62X-next, davidlt_20130325_1353-62X-next, davidlt_20130325_1132-62X-slc6-dev, davidlt_20130325_1131-62X-next, davidlt_20130325_1108-62X, dgmlForCMSSW_6_1_2-slc5_amd64_gcc472, CMSSW_6_2_0_pre4-slc6_amd64_gcc472, ForCMSSW_6_2_0_pre4-slc6_amd64_gcc472, CMSSW_6_2_0_pre4-osx107_amd64_gcc472, CMSSW_6_2_0_pre4-osx108_amd64_gcc472, CMSSW_6_2_0_pre4-slc6_amd64_gcc480, daForCMSSW_6_2_0_pre4-osx107_amd64_gcc472, daForCMSSW_6_2_0_pre4-osx108_amd64_gcc472, ForCMSSW_6_2_0_pre4-slc6_amd64_gcc480, davidlt_20130320_1840-62X-slc6-dev, BOOTSTRAP_slc6_amd64_gcc480, CMSSW_6_2_0_pre4-slc5_amd64_gcc472, CMSSW_6_2_0_pre4, daForCMSSW_6_2_0_pre4-slc5_amd64_gcc472, BOOTSTRAP_fc18_armv7hl_gcc480, pgForCMSSW_6_2_X_2013-03-15-0200-slc5_amd64_gcc472, davidlt_20130314_1540-62X-next, dmendezl_20130312_1520-slc6, dmendezl_20130311_1500-61X-osx107, dmendezl_20130311_1424-61X-osx108-gcc472, eulisse_20130311_0939-61X, geForCMSSW_6_1_2-slc5_amd64_gcc472, davidlt_20130307_0945-62X-next, davidlt_20130307_0943-62X, CMSSW_6_2_0_pre3-osx107_amd64_gcc472, CMSSW_6_2_0_pre3-osx108_amd64_gcc472, eulisse_20130405_1715-61X-gcc472, eulisse_20130304_1715-61X-osx107, eulisse_20130304_1715-61X-osx108-gcc472, eulisse_20130304_1714_61X-slc6, daForCMSSW_6_2_0_pre3-osx107_amd64_gcc472, daForCMSSW_6_2_0_pre3-osx108_amd64_gcc472, CMSSW_6_2_0_pre3-slc6_amd64_gcc472, ForCMSSW_6_2_0_pre3-slc6_amd64_gcc472, CMSSW_6_2_0_pre3-slc5_amd64_gcc472, CMSSW_6_2_0_pre3, CMSSW_6_1_1-osx108_amd64_gcc472, CMSSW_6_1_1-osx107_amd64_gcc472, daForCMSSW_6_2_0_pre3-slc5_amd64_gcc472, daForCMSSW_6_1_1-osx108_amd64_gcc472, daForCMSSW_6_1_1-osx107_amd64_gcc472, CMSSW_6_1_1_SLHCphase2tk1-slc5_amd64_gcc472, CMSSW_6_1_1_SLHCphase2tk1, daForCMSSW_6_1_1_SLHCphase2tk1-slc5_amd64_gcc472, davidlt_20130227_1855-62X-next, davidlt_20130227_1854-62X-dev, davidlt_20130227_1854-62X, davidlt_20130227_1127-62X-next, davidlt_20130227_1126-62X-dev, davidlt_20130227_1125-62X, davidlt_20130226_1240-62X-next, davidlt_20130226_1320-62X-dev, davidlt_20130226_1239-62X, CMSSW_6_1_1_SLHCphase1tk1-slc5_amd64_gcc472, CMSSW_6_1_1_SLHCphase1tk1, daForCMSSW_6_1_1_SLHCphase1tk1-slc5_amd64_gcc472, eulisse_20130225_1400-62x-next, eulisse_20130225_1400-62x, davidlt_20130225_1102-62X-next, davidlt_20130225_1025-62X-dev, davidlt_20130225_1025-62X, davidlt_20130222_1635-62X-next, davidlt_20130222_1634-62X-dev, davidlt_20130222_1633-62X, davidlt_20130220_1737-62X-next, davidlt_20130220_1736-62X-dev, davidlt_20130220_1735-62X, CMSSW_6_2_0_pre2-slc5_amd64_gcc480, daForCMSSW_6_2_0_pre2-osx107_amd64_gcc472, daForCMSSW_6_2_0_pre2-osx108_amd64_gcc472, ForCMSSW_6_2_0_pre2-slc6_amd64_gcc472, daForCMSSW_6_2_0_pre2-slc5_amd64_gcc480, CMS_CONDWEB_DEV, CMS_CONDWEB_0_2, CMSSW_6_2_0_pre2-slc5_amd64_gcc472, CMSSW_6_2_0_pre2, CMS_CONDWEB_0_1, daForCMSSW_6_2_0_pre2-slc5_amd64_gcc472, CMSSW_6_1_1-slc5_amd64_gcc472, CMSSW_6_1_1, daForCMSSW_6_1_1-slc5_amd64_gcc472, davidlt_20130213_0902-62X-dev, davidlt_20130212_1424-62X-next, davidlt_20130212_1424-62X, davidlt_20130212_1000-62X-dev, davidlt_20130212_1020-62X-next, davidlt_20130212_1001-62X, daForCMSSW_6_1_0_SLHC-slc5_amd64_gcc472, davidlt_20130209_1053-61X-osx107-gcc472, davidlt_20130209_1051-61X-osx108-gcc472, davidlt_20130209_1109-61X-slc6-gcc472, davidlt_20130208_1428-62X-next, davidlt_20130208_1427-62X, BOOTSTRAP_slc5_amd64_gcc480, davidlt_20130207_2033-61X-gcc472, davidlt_20130207_1856-62X, davidlt_20130206_2133-62X-next, davidlt_20130206_2129-62X-osx107-gcc472, davidlt_20130207_1345-62X-osx108-gcc472, davidlt_20130206_2133-62X-gcc472-next, davidlt_20130206_1150-62X-osx107-gcc472, davidlt_20130206_1150-62X-osx108-gcc472, davidlt_20130206_1149-62X-gcc472-next, davidlt_20130206_1149-62X, davidlt_20130206_0923-62X-osx107-gcc472, davidlt_20130206_0922-62X-osx108-gcc472, davidlt_20130206_0922-62X-gcc472-next, davidlt_20130206_0909-62X, davidlt_20130205_2014-62X-osx108-gcc472, davidlt_20130205_1941-62X-osx107-gcc472, davidlt_20130205_1942-62X-gcc472-next, davidlt_20130205_1939-62X, geForCMSSW_6_2_0_pre1-osx108_amd64_gcc472, geForCMSSW_6_2_0_pre1-osx107_amd64_gcc472, CMSSW_6_2_0_pre1, geForCMSSW_6_2_0_pre1-slc5_amd64_gcc472, ForCMSSW_6_1_0-slc6_amd64_gcc472, eulisse_20130128_1430-62X-gcc472-next, eulisse_20130128_1430-62X-slc6-gcc472, eulisse_20130128_1430-62X, eulisse_20130128_1043-62X, davidlt_20130116_1037-62X-osx108-gcc472, davidlt_20130116_1009-62X-osx107-gcc472, davidlt_20130116_1008-62X-slc6-gcc472, davidlt_20130116_1043-62X, cms_adminFor-slc5_amd64_gcc472, eulisse_20130112_1105-62X, eulisse_20130112_0044-62X, eulisse_20130109_2108-62X-gcc472, eulisse_20121231_1245-61X-gcc472, eulisse_20121230_2125-61X-gcc472, CMSSW_6_1_0-osx107, CMSSW_6_1_0-osx108, CMSSW_6_1_0, eulisse_20121217_2120-61X-gcc472, eulisse_20121217_2135-61X-gcc472, eulisse_20121217_2127-61X-slc6-gcc472, eulisse_20121217_2059-61X-osx107-gcc472, eulisse_20121217_1941-61X-osx107-gcc472, eulisse_20121216_1036-61X-gcc472, eulisse_20121214_2046-61X-osx108-gcc472, eulisse_20121214_2022-61X-gcc472, CMSSW_6_0_1_PostLS1v2_patch4, eulisse_20121214_1049-61X-osx107-gcc472, eulisse_20121214_1044-61X-slc6-gcc472, eulisse_20121214_1009-61X-gcc472, eulisse_20121213_2246-61X-osx107-gcc472, eulisse_20121213_2133-61X-slc6-gcc472, eulisse_20121213_1659-61X-gcc472, davidlt_20121212_1833-61X-osx107-gcc472, davidlt_20121212_1832-61X-osx108-gcc472, davidlt_20121212_1831-61X-slc6-gcc472, davidlt_20121212_1831-61X-gcc472, CMSSW_6_1_0_pre8-slc5_amd64_gcc472, CMSSW_6_1_0_pre8, daForCMSSW_6_1_0_pre8-osx108_amd64_gcc472, daForCMSSW_6_1_0_pre8-osx107_amd64_gcc472, daForCMSSW_6_1_0_pre8-slc5_amd64_gcc472, davidlt_20121207_1047-61X-osx107-gcc472, davidlt_20121207_1046-61X-osx108-gcc472, davidlt_20121207_1045-61X-slc6-gcc472, davidlt_20121207_1045-61X-gcc472, davidlt_20121206_0901-61X-osx107-gcc472, davidlt_20121206_1159-61X-osx108-gcc472, davidlt_20121206_0900-61X-slc6-gcc472, davidlt_20121206_0859-61X-gcc472, CMSSW_6_1_0_pre7_TS127013-slc5_amd64_gcc472, CMSSW_6_1_0_pre7_TS127013, davidlt_20121204_1200-61X-osx107-gcc472, davidlt_20121204_1200-61X-osx108-gcc472, davidlt_20121204_1200-61X-slc6-gcc472, davidlt_20121204_1200-61X-gcc472, daForCMSSW_6_1_0_pre7_TS127013-slc5_amd64_gcc472, davidlt_20121204_0745-61X-osx107-gcc472, davidlt_20121204_0743-61X-osx108-gcc472, davidlt_20121204_0844-61X-slc6-gcc472, davidlt_20121204_0843-61X-gcc472, davidlt_20121203_1104-61X-osx107-gcc472, davidlt_20121203_0957-61X-osx108-gcc472, davidlt_20121203_0956-61X-slc6-gcc472, davidlt_20121203_0955-61X-gcc472, CMSSW_6_1_0_pre7-osx108_amd64_gcc472, CMSSW_6_1_0_pre7-osx107_amd64_gcc472, eulisse_20121129_1546-61X-gcc472, eulisse_20121129_1439-61X-gcc472, eulisse_20121129_1406-61X-gcc472, daForCMSSW_6_1_0_pre7-osx108_amd64_gcc472, daForCMSSW_6_1_0_pre7-osx107_amd64_gcc472, eulisse_20121129_1155-61X-gcc472, CMSSW_6_0_1_PostLS1v2_patch3-slc5_amd64_gcc462, CMSSW_6_0_1_PostLS1v2_patch3, daForCMSSW_6_0_1_PostLS1v2_patch3-slc5_amd64_gcc462, CMSSW_6_1_0_pre7-slc5_amd64_gcc472, CMSSW_6_1_0_pre7, daForCMSSW_6_1_0_pre7-slc5_amd64_gcc472, davidlt_20121128_0903-61X-osx107-gcc472, davidlt_20121128_0902-61X-osx108-gcc472, davidlt_20121128_0904-61X-slc6-gcc472, davidlt_20121128_0902-61X-gcc472, davidlt_20121127_1909-61X-osx108-gcc472, davidlt_20121127_1909-61X-osx107-gcc472, davidlt_20121127_1908-61X-slc6-gcc472, davidlt_20121127_1907-61X-gcc472, davidlt_20121127_1044-61X-osx107-gcc472, davidlt_20121127_1028-osx108-gcc472, davidlt_20121127_1020-61X-slc6-gcc472, davidlt_20121127_1012-gcc472, eulisse_20121126_2202_61X-gcc472, CMSSW_6_1_0_pre6_TS126203_TS126341_patch1-slc5_amd64_gcc472, CMSSW_6_1_0_pre6_TS126203_TS126341_patch1, daForCMSSW_6_1_0_pre6_TS126203_TS126341_patch1-slc5_amd64_gcc472, CMSSW_6_1_0_pre6g496cand01-slc5_amd64_gcc472, CMSSW_6_1_0_pre6g496cand01, daForCMSSW_6_1_0_pre6g496cand01-slc5_amd64_gcc472, davidlt_20121122_1002-61X-g496cand01-gcc472, CMSSW_6_0_1_PostLS1v2_patch2-slc5_amd64_gcc462, CMSSW_6_0_1_PostLS1v2_patch2, daForCMSSW_6_0_1_PostLS1v2_patch2-slc5_amd64_gcc462, CMSSW_6_0_1_PostLS1v2_patch1-slc5_amd64_gcc462, CMSSW_6_0_1_PostLS1v2_patch1, daForCMSSW_6_0_1_PostLS1v2_patch1-slc5_amd64_gcc462, CMSSW_6_1_0_pre6-osx108_amd64_gcc472, CMSSW_6_1_0_pre6-osx107_amd64_gcc472, eulisse_20121120_1136_61X-gcc472, daForCMSSW_6_1_0_pre6-osx107_amd64_gcc472, daForCMSSW_6_1_0_pre6-osx108_amd64_gcc472, ForCMSSW_6_1_0_pre6-slc6_amd64_gcc472, davidlt_20121119_1533-61X-g496cand01-gcc472, CMSSW_6_1_0_pre6_TS126203_TS126341-slc5_amd64_gcc472, CMSSW_6_1_0_pre6_TS126203_TS126341, daForCMSSW_6_1_0_pre6_TS126203_TS126341-slc5_amd64_gcc472, CMSSW_6_1_0_pre6-slc5_amd64_gcc472, CMSSW_6_1_0_pre6, daForCMSSW_6_1_0_pre6-slc5_amd64_gcc472, CMSSW_6_0_1_PostLS1v2, davidlt_20121113_0821-61X-osx107-gcc472, davidlt_20121113_0816-osx108-gcc472, davidlt_20121113_0835-61X-slc6-gcc472, davidlt_20121113_0819-61X-gcc472, davidlt_20121110_0800-osx108-gcc472, davidlt_20121109_1131-61X-osx107-gcc472, davidlt_20121109_1130-61X-slc6-gcc472, davidlt_20121109_1127-0735-61X-gcc472, eulisse_20121107-0735-61X-gcc472, davidlt_20121105_1212-osx108-gcc472, davidlt_20121105_1128-61X-osx107-gcc472, davidlt_20121105_1127-61X-slc6-gcc472, davidlt_20121105_1126-61X-gcc472, CMSSW_6_1_0_pre5-slc5_amd64_gcc472, CMSSW_6_1_0_pre5, daForCMSSW_6_1_0_pre5-slc5_amd64_gcc472, CMSSW_6_0_1_PostLS1v1-slc5_amd64_gcc472, CMSSW_6_0_1_PostLS1v1-slc5_amd64_gcc462, CMSSW_6_0_1_PostLS1v1, daForCMSSW_6_0_1_PostLS1v1-slc5_amd64_gcc472, daForCMSSW_6_0_1_PostLS1v1-slc5_amd64_gcc462, davidlt_20121101_1230-osx108-gcc472, davidlt_20121101_1230-61X-gcc472, davidlt_20121101_1230-61X-osx107-gcc472, davidlt_20121101_1230-61X-slc6-gcc472, davidlt_20121030_1450-osx108-gcc472, davidlt_20121030_1450-61X-slc6-gcc472, davidlt_20121030_1450-61X-osx107-gcc472, davidlt_20121030_1450-61X-gcc472, davidlt_20121029_1240-osx108-gcc472, davidlt_20121029_1251-61X-osx107-gcc472, davidlt_20121029_1108-61X-slc6-gcc472, davidlt_20121029_1056-61X-gcc472, CMSSW_6_0_1-osx107_amd64_gcc462, CMSSW_6_0_1-slc6_amd64_gcc462, eulisse_20121026_1128-61X-gcc472, ForCMSSW_6_0_1-slc6_amd64_gcc462, daForCMSSW_6_0_1-osx107_amd64_gcc462, eulisse_20121025_1358-61X-gcc472, davidlt_20121025_1106-osx108-gcc472, davidlt_20121025_1108-61X-osx107-gcc472, davidlt_20121025_1107-61X-slc6-gcc472, davidlt_20121025_1106-61X-gcc472, davidlt_20121024_1014-osx108-gcc472, davidlt_20121024_1014-61X-osx107-gcc472, davidlt_20121024_1013-61X-slc6-gcc472, davidlt_20121024_1011-61X-gcc472, eulisse_20121024_0912-61X-gcc472, eulisse_20121023_0912-61X-gcc472, davidlt_20121023_1647-61X-osx107-gcc472, BOOTSTRAP_osx107_amd64_gcc472, eulisse_20121023_1600-61X-gcc472, CMSSW_6_0_1-slc5_amd64_gcc472, CMSSW_6_0_1-slc5_amd64_gcc462, CMSSW_6_0_1, davidlt_20121023_1155-61X-slc6-gcc472, daForCMSSW_6_0_1-slc5_amd64_gcc472, daForCMSSW_6_0_1-slc5_amd64_gcc462, BOOTSTRAP_slc6_amd64_gcc472, davidlt_20121022_1024-60X-osx107, davidlt_20121022_1027-60X-slc6, davidlt_20121022_1019-60X-gcc472, davidlt_20121022_1013-60X, eulisse_20121017_1120-61X-gcc472, CMSSW_6_1_0_pre4-osx108_amd64_gcc472, CMSSW_6_1_0_pre4-osx107_amd64_gcc462, CMSSW_6_1_0_pre4-slc6_amd64_gcc462, eulisse_20121015_1727-61X-gcc472, daForCMSSW_6_1_0_pre4-osx108_amd64_gcc472, daForCMSSW_6_1_0_pre4-osx107_amd64_gcc462, ForCMSSW_6_1_0_pre4-slc6_amd64_gcc462, CMSSW_6_1_0_pre4-slc5_amd64_gcc472, CMSSW_6_1_0_pre4-slc5_amd64_gcc462, CMSSW_6_1_0_pre4, CMSSW_6_1_0_pre3_TS124729-slc5_amd64_gcc462, daForCMSSW_6_1_0_pre4-slc5_amd64_gcc472, daForCMSSW_6_1_0_pre4-slc5_amd64_gcc462, CMSSW_6_1_0_pre3_TS124729, eulisse_20121011_1741-61X-gcc472, eulisse_20121011_1728-61X-gcc472, eulisse_20121011_1718-61X-gcc472, daForCMSSW_6_1_0_pre3_TS124729-slc5_amd64_gcc462, davidlt_20121009_1600-61X-slc6, davidlt_20121009_1600-61X-osx107, davidlt_20121009_1600-61X-gcc472, davidlt_20121009_1600-61X, davidlt_20121009_1530-osx108-gcc472, davidlt_20121008_1222-osx108-gcc472, davidlt_20121008_1257-61X-osx107, davidlt_20121008_1223-61X-slc6, davidlt_20121008_1221-61X-gcc472, davidlt_20121008_1220-61X, davidlt_20121005_1417-61X-osx108_amd64_gcc472, davidlt_20121004_1021-60X-gcc472, BOOTSTRAP_osx108_amd64_gcc472, davidlt_20121003_1452-61X-gcc472, davidlt_2, davidlt_1, eulisse_20121003_1138-61X-gcc470, CMSSW_6_0_0_patch1-slc5_amd64_gcc472, CMSSW_6_0_0_patch1-slc5_amd64_gcc462, CMSSW_6_1_0_pre3-osx108_amd64_gcc470, CMSSW_6_1_0_pre3-osx107_amd64_gcc462, CMSSW_6_1_0_pre3-slc6_amd64_gcc462, CMSSW_6_1_0_pre3-slc5_amd64_gcc470, daForCMSSW_6_0_0_patch1-slc5_amd64_gcc462, daForCMSSW_6_0_0_patch1-slc5_amd64_gcc472, eulisse_20121001_1347-61X-gcc470, CMSSW_6_1_0_pre3-slc5_amd64_gcc462, CMSSW_6_1_0_pre3, daForCMSSW_6_1_0_pre3-osx108_amd64_gcc470, daForCMSSW_6_1_0_pre3-osx107_amd64_gcc462, ForCMSSW_6_1_0_pre3-slc6_amd64_gcc462, daForCMSSW_6_1_0_pre3-slc5_amd64_gcc470, daForCMSSW_6_1_0_pre3-slc5_amd64_gcc462, eulisse_20120930_1000-61X-gcc470, eulisse_20120928_0244-61X-gcc470, eulisse_20120928_0219-61X-gcc470, eulisse_20120928_0150-61X-gcc470, davidlt_20120927_1517-61X-osx108, davidlt_20120927_1510-61X-osx107, davidlt_20120927_1511-61X-slc6, davidlt_20120927_1508-61X-gcc470, davidlt_20120927_1507-61X, BOOTSTRAP_slc5_amd64_gcc472, davidlt_20120925_1134-61X-osx108, davidlt_20120925_1135-61X-osx107, davidlt_20120925_1129-61X-slc6, davidlt_20120925_1124-61X-gcc470, davidlt_20120925_1123-61X, davidlt_20120921_1153-61X-osx107, davidlt_20120921_1158-61X-slc6, davidlt_20120921_1151-61X-osx108, davidlt_20120921_1150-61X-gcc470, davidlt_20120921_1150-61X, davidlt_20120920_1536-61X-osx107, davidlt_20120920_1529-61X-osx108, davidlt_20120920_1529-61X-slc6, davidlt_20120920_1528-61X-gcc470, davidlt_20120920_1527-61X, eulisse_20120920_1429-61X-gcc470, CMSSW_6_1_0_pre2-slc6_amd64_gcc462, CMSSW_6_1_0_pre2-slc5_amd64_gcc470, CMSSW_6_1_0_pre2-osx107_amd64_gcc462, CMSSW_6_1_0_pre2-osx108_amd64_gcc470, CMSSW_6_1_0_pre2-slc5_amd64_gcc462, CMSSW_6_1_0_pre2, eulisse_20120918_2117-61X-gcc470, eulisse_20120918_1706-61X-gcc470, ForCMSSW_6_1_0_pre2-slc6_amd64_gcc462, daForCMSSW_6_1_0_pre2-slc5_amd64_gcc470, CMSSW_6_0_0_patch1, daForCMSSW_6_1_0_pre2-osx107_amd64_gcc462, daForCMSSW_6_1_0_pre2-osx108_amd64_gcc470, daForCMSSW_6_1_0_pre2-slc5_amd64_gcc462, daForCMSSW_6_0_0_patch1-slc5_amd64_gcc470, davidlt_20120917_0750-61X-osx108, davidlt_20120917_0748-61X-osx107, davidlt_20120917_0802-61X-slc6, davidlt_20120917_0746-61X-gcc470, davidlt_20120917_0745-61X, davidlt_20120914_1755-61X-osx108, davidlt_20120914_1415-61X-osx107, davidlt_20120914_1414-61X-slc6, davidlt_20120914_1412-61X-gcc470, davidlt_20120914_1412-61X, davidlt_20120914_1040-61X-osx108, davidlt_20120914_1040-61X-osx107, davidlt_20120914_1039-61X-slc6, davidlt_20120914_1109-61X-gcc470, davidlt_20120914_1042-61X, davidlt_20120912_1154-61X-osx107, davidlt_20120912_1156-61X-slc6, davidlt_20120912_1130-61X-gcc470, davidlt_20120912_1127-61X, CMSSW_6_0_0_SLHCtkpre1, daForCMSSW_6_0_0_SLHCtkpre1-slc5_amd64_gcc462, davidlt_20120911_0937-61X-osx108, ecbForCMSSW_6_0_0_SLHCtkpre1-slc5_amd64_gcc462, davidlt_20120910_1500-61X-osx108, davidlt-20120910-1500-61X-osx108_amd64_gcc470, davidlt-20120910-1247-61X-osx108_amd64_gcc470, CMSSW_6_1_0_pre1-slc6_amd64_gcc462, ForCMSSW_6_1_0_pre1-slc6_amd64_gcc462, CMSSW_6_1_0_pre1-slc5_amd64_gcc470, CMSSW_6_1_0_pre1, davidlt-20120904-1046-61X-osx108_amd64_gcc470, davidlt_20120903_2145-61X-osx107, davidlt_20120903_2005-61X-slc6, davidlt_20120903_1832-61X-gcc470, davidlt_20120903_1830-61X, daForCMSSW_6_1_0_pre1-slc5_amd64_gcc470, daForCMSSW_6_1_0_pre1-slc5_amd64_gcc462, CMSSW_6_0_0-osx107_amd64_gcc462, CMSSW_6_0_0-slc6_amd64_gcc462, CMSSW_6_0_0-slc5_amd64_gcc470, daForCMSSW_6_0_0-osx107_amd64_gcc462, ForCMSSW_6_0_0-slc6_amd64_gcc462, daForCMSSW_6_0_0-slc5_amd64_gcc470, davidlt_20120831_0948-61X-osx107, davidlt_20120831_0947-61X-slc6, davidlt_20120831_0937-61X-gcc470, davidlt_20120831_0930-61X, cmsForCMSSW_6_1_X_2012-08-30-1000-slc5_amd64_gcc470, CMSSW_6_0_0_TS123272, davidlt_20120830_0812-61X-osx107, davidlt_20120830_1035-61X-slc6, davidlt_20120830_0810-61X-gcc470, davidlt_20120830_0810-61X, daForCMSSW_6_0_0_TS123272-slc5_amd64_gcc462, CMSSW_6_0_0_TS123032, davidlt_20120829_1119-61X-osx107, davidlt_20120829_1117-61X-slc6, davidlt_20120829_1116-61X-gcc470, davidlt_20120829_1115-61X, daForCMSSW_6_0_0_TS123032-slc5_amd64_gcc462, CMSSW_6_0_0, daForCMSSW_6_0_0-slc5_amd64_gcc462, davidlt-20120827-1519-61X-osx108_amd64_gcc470, davidlt-20120827-1506-61X-osx108_amd64_gcc470, davidlt-20120827-1431-61X-osx108_amd64_gcc470, davidlt_20120824_1354-61X-osx107, davidlt_20120824_1352-61X-slc6, davidlt_20120824_1351-61X, davidlt_20120824_1352-61X-gcc470, davidlt_20120824_0928-61X-osx107, davidlt_20120824_0927-61X-slc6, davidlt_20120824_0926-61X, davidlt_20120824_0926-61X-gcc470, davidlt_20120822_1706-61X, davidlt_20120822_0925-61X-osx107, davidlt_20120822_1136-61X-slc6, davidlt_20120822_0921-61X-gcc470, davidlt_20120822_0921-61X, davidlt_20120820_1005-61X-gcc470, davidlt_20120820_1003-61X-osx107, davidlt_20120820_0956-61X-slc6, davidlt_20120820_0956-61X, davidlt_20120813_1021-60X-gcc470, davidlt_20120809_1259-60X-gcc470, davidlt_20120809_1258-60X, davidlt_20120809_1256-60X-slc6, davidlt_20120809_1255-60X-osx107, davidlt_20120808_1030-60X-osx107, davidlt_20120808_1030-60X-gcc470, davidlt_20120808_1030-60X-slc6, davidlt_20120808_1030-60X, davidlt_20120808_1000-60X-osx107, davidlt_20120808_1000-60X-gcc470, davidlt_20120808_1000-60X-slc6, davidlt_20120808_1000-60X, CMSSW_6_0_0_pre11-slc6, CMSSW_6_0_0_pre11-osx107, CMSSW_6_0_0_pre11-gcc470, ForCMSSW_6_0_0_pre11-slc6_amd64_gcc462, daForCMSSW_6_0_0_pre11-osx107_amd64_gcc462, daForCMSSW_6_0_0_pre11-slc5_amd64_gcc470, CMSSW_6_0_0_pre11, daForCMSSW_6_0_0_pre11-slc5_amd64_gcc462, davidlt_20120801_0942-60X-osx107, davidlt_20120801_0941-60X-slc6, davidlt_20120801_0940-60X-gcc470, davidlt_20120801_0940-60X, davidlt_20120730_1526-60X-osx107, davidlt_20120730_1520-60X-gcc470, davidlt_20120730_1521-60X-slc6, davidlt_20120730_1520-60X, davidlt_20120725_1000-60X-osx107, davidlt_20120725_1000-60X-gcc470, davidlt_20120725_1000-60X-slc6, davidlt_20120725_1000-60X, CMSSW_6_0_0_pre10, daForCMSSW_6_0_0_pre10-slc5_amd64_gcc462, davidlt_20120724_1813-60X-osx107, davidlt_20120724_1817-60X-slc6, davidlt_20120724_1811-60X-gcc470, davidlt_20120724_1805-60X, HEAD
Changes since 1.1: +157 -26 lines
Log Message:
An updated patch from Vladimir IVANTCHENKO <Vladimir.Ivantchenko@cern.ch>

1) minor modification which reduce number of calls to cross sections
2) fix of time for recoils in elastci scatetring (affecting HCAL
response)

File Contents

# User Rev Content
1 davidlt 1.2 diff -arupN geant4.9.5.p01.orig/source/processes/hadronic/cross_sections/include/G4HadronCrossSections.hh geant4.9.5.p01/source/processes/hadronic/cross_sections/include/G4HadronCrossSections.hh
2     --- geant4.9.5.p01.orig/source/processes/hadronic/cross_sections/include/G4HadronCrossSections.hh 2012-07-23 08:38:19.000000000 +0200
3     +++ geant4.9.5.p01/source/processes/hadronic/cross_sections/include/G4HadronCrossSections.hh 2012-07-23 09:14:23.000000000 +0200
4 davidlt 1.1 @@ -58,6 +58,8 @@
5    
6     enum { TSIZE=41, NPARTS=35, NELAB=17, NCNLW=15, NFISS=21 };
7    
8     +class G4Pow;
9     +
10     class G4HadronCrossSections
11     {
12     public:
13     @@ -100,6 +102,8 @@ class G4HadronCrossSections
14    
15     static G4HadronCrossSections* theInstance;
16    
17     + G4Pow* g4pow;
18     +
19     G4double sigelastic;
20     G4double siginelastic;
21     G4ParticleDefinition* prevParticleDefinition;
22 davidlt 1.2 diff -arupN geant4.9.5.p01.orig/source/processes/hadronic/cross_sections/src/G4HadronCrossSections.cc geant4.9.5.p01/source/processes/hadronic/cross_sections/src/G4HadronCrossSections.cc
23     --- geant4.9.5.p01.orig/source/processes/hadronic/cross_sections/src/G4HadronCrossSections.cc 2012-07-23 08:38:19.000000000 +0200
24     +++ geant4.9.5.p01/source/processes/hadronic/cross_sections/src/G4HadronCrossSections.cc 2012-07-23 09:14:05.000000000 +0200
25 davidlt 1.1 @@ -55,7 +55,7 @@
26     #include "G4HadronCrossSections.hh"
27     #include "G4ios.hh"
28     #include "G4HadronicException.hh"
29     -
30     +#include "G4Pow.hh"
31    
32     // Initialize static pointer for singleton instance
33     G4HadronCrossSections* G4HadronCrossSections::theInstance = 0;
34 davidlt 1.2 @@ -1217,7 +1217,10 @@ G4bool G4HadronCrossSections::correctIne
35 davidlt 1.1 G4HadronCrossSections::G4HadronCrossSections()
36     : prevParticleDefinition(0), prevElement(0), prevZZ(0), prevAA(0),
37     prevKineticEnergy(DBL_MAX), lastEkx(0.), lastEkxPower(0.), verboseLevel(0)
38     -{}
39     +{
40     + siginelastic = sigelastic = 0.0;
41     + g4pow = G4Pow::GetInstance();
42     +}
43    
44     G4HadronCrossSections::~G4HadronCrossSections()
45     {}
46 davidlt 1.2 @@ -1243,7 +1246,12 @@ G4HadronCrossSections::GetInelasticCross
47 davidlt 1.1 if (particle->GetDefinition() != prevParticleDefinition ||
48     particle->GetKineticEnergy() != prevKineticEnergy ||
49     ZZ != prevZZ || AA != prevAA)
50     - CalcScatteringCrossSections(particle, ZZ, AA);
51     + { CalcScatteringCrossSections(particle, ZZ, AA); }
52     + if (verboseLevel > 1) {
53     + G4cout << " x-section inelastic(mb)= "
54     + << siginelastic/millibarn << G4endl;
55     + }
56     +
57     return siginelastic;
58     }
59    
60 davidlt 1.2 @@ -1255,8 +1263,12 @@ G4HadronCrossSections::GetElasticCrossSe
61 davidlt 1.1 if (particle->GetDefinition() != prevParticleDefinition ||
62     particle->GetKineticEnergy() != prevKineticEnergy ||
63     ZZ != prevZZ || AA != prevAA)
64     - CalcScatteringCrossSections(particle, ZZ, AA);
65     + { CalcScatteringCrossSections(particle, ZZ, AA); }
66    
67     + if (verboseLevel > 1) {
68     + G4cout << " x-section elastic(mb)= "
69     + << sigelastic/millibarn << G4endl;
70     + }
71     return sigelastic;
72     }
73    
74 davidlt 1.2 @@ -1279,33 +1291,37 @@ G4HadronCrossSections::CalcScatteringCro
75 davidlt 1.1 G4double xspiel, xspiin;
76    
77     G4int ipart = GetParticleCode(aParticle);
78     - G4double a = AA;
79     - G4double z = ZZ;
80     + prevAA = AA;
81     + prevZZ = ZZ;
82     + prevParticleDefinition = aParticle->GetDefinition();
83     + prevKineticEnergy = aParticle->GetKineticEnergy();
84    
85     if (verboseLevel > 1) {
86     - G4cout << "G4HadronCrossSections: a=" << a << G4endl;
87     - G4cout << "G4HadronCrossSections: z=" << z << G4endl;
88     + G4cout << "G4HadronCrossSections::ScatteringCrossSections: "
89     + << aParticle->GetDefinition()->GetParticleName()
90     + << " E(MeV)= " << aParticle->GetKineticEnergy()/MeV
91     + << " Z= " << ZZ << " A= " << AA << G4endl;
92     }
93    
94     -// Ions...
95     + // Ions...
96    
97     if (ipart >= 30 && ipart <= 32) {
98    
99     G4double apart=0;
100     - if (ipart == 30) apart = std::pow(2., 1./3.);
101     - else if (ipart == 31) apart = std::pow(3., 1./3.);
102     - else if (ipart == 32) apart = std::pow(4., 1./3.);
103     + if (ipart == 30) apart = g4pow->Z13(2);
104     + else if (ipart == 31) apart = g4pow->Z13(3);
105     + else if (ipart == 32) apart = g4pow->Z13(4);
106    
107     - G4double term = apart + std::pow(a, 1./3.);
108     + G4double term = apart + g4pow->Z13(AA);
109     sigin = 49.*term*term;
110     - // Convert cross section from mb to default units
111     + // Convert cross section from mb to default units
112     siginelastic = sigin*millibarn;
113     - if(aParticle->GetKineticEnergy() < 6*MeV) siginelastic = 0;
114     + if(prevKineticEnergy < 6*MeV) siginelastic = 0;
115     sigelastic = 0.;
116     return;
117     }
118    
119     - G4double ek = aParticle->GetKineticEnergy()/GeV;
120     + G4double ek = prevKineticEnergy/GeV;
121    
122     // Low energy neutrons...
123    
124 davidlt 1.2 @@ -1349,7 +1365,7 @@ G4HadronCrossSections::CalcScatteringCro
125 davidlt 1.1 G4int ja2 = NCNLW - 1;
126     do {
127     G4int midBin = (ja1 + ja2)/2;
128     - if (a < cnlwat[midBin])
129     + if (AA < cnlwat[midBin])
130     ja2 = midBin;
131     else
132     ja1 = midBin;
133 davidlt 1.2 @@ -1365,7 +1381,7 @@ G4HadronCrossSections::CalcScatteringCro
134 davidlt 1.1 dy = cnlwel[ja2][je1] - cnlwel[ja1][je1];
135     rca = dy/dnlwat;
136     b = cnlwel[ja1][je1] - rce*elab[je1] - rca*cnlwat[ja1];
137     - sigelastic = rce*ek + rca*a + b;
138     + sigelastic = rce*ek + rca*AA + b;
139     // Inelastic cross section:
140     // E interpolation or extrapolation at JA1
141     dy = cnlwin[ja1][je2] - cnlwin[ja1][je1];
142 davidlt 1.2 @@ -1374,7 +1390,7 @@ G4HadronCrossSections::CalcScatteringCro
143 davidlt 1.1 dy = cnlwin[ja2][je1] - cnlwin[ja1][je1];
144     rca = dy/dnlwat;
145     b = cnlwin[ja1][je1] - rce*elab[je1] - rca*cnlwat[ja1];
146     - siginelastic = rce*ek + rca*a + b;
147     + siginelastic = rce*ek + rca*AA + b;
148     // Convert cross sections from mb to default units
149     sigelastic = sigelastic*millibarn;
150     siginelastic = siginelastic*millibarn;
151 davidlt 1.2 @@ -1446,14 +1462,14 @@ G4HadronCrossSections::CalcScatteringCro
152 davidlt 1.1
153     // A-dependence from parameterization...
154    
155     - if (a >= 1.5) {
156     + if (AA >= 2) {
157    
158     crel = 1.;
159     crin = 1.;
160    
161 davidlt 1.2 G4int i = 3;
162 davidlt 1.1 - if (a < 50.) i = 2;
163     - if (a > 100.) i = 4;
164 davidlt 1.2 + if (AA < 50) i = 2;
165     + else if (AA > 100.) i = 4;
166     i = i - 1; // For array indexing
167 davidlt 1.1
168     // Protons and neutrons
169 davidlt 1.2 @@ -1474,7 +1490,7 @@ G4HadronCrossSections::CalcScatteringCro
170 davidlt 1.1 if (correctInelasticNearZero && je1 == 0 && i <= 3) {
171     G4double m0 = aParticle->GetMass()/GeV;
172     G4double T = std::sqrt(m0*m0 + p*p) - m0;
173     - G4double dx = std::sqrt(m0*m0 + plab[1]*plab[1]) - m0;
174     + dx = std::sqrt(m0*m0 + plab[1]*plab[1]) - m0;
175     rc = dy/dx;
176     xsecin = rc*T + b;
177     }
178 davidlt 1.2 @@ -1490,7 +1506,7 @@ G4HadronCrossSections::CalcScatteringCro
179 davidlt 1.1 // Calculate correction factors (crel, crin) from values
180     // on Al, Cu, Pb. Note that data is only available for pions and protons.
181     G4double wgch = 0.5;
182     - if (a < 20.) wgch = 0.5 + 0.5*std::exp(-(a - 1.));
183     + if (AA < 20) { wgch = 0.5 + 0.5*std::exp(-G4double(AA - 1)); }
184     sigel = wgch*sigel + (1. - wgch)*xsecel;
185     sigin = wgch*sigin + (1. - wgch)*xsecin;
186    
187 davidlt 1.2 @@ -1517,8 +1533,8 @@ G4HadronCrossSections::CalcScatteringCro
188 davidlt 1.1 }
189    
190     // Apply correction factors
191     - sigin = crin*(sigin + sigel)*std::pow(a, alph);
192     - sigel = crel*0.36*sigel*std::pow(a, 1.17);
193     + sigin = crin*(sigin + sigel)*g4pow->powZ(AA, alph);
194     + sigel = crel*0.36*sigel*g4pow->powZ(AA, 1.17);
195     sigel = sigel*partel[ipart1];
196     sigin = sigin*partin[ipart1];
197     }
198 davidlt 1.2 @@ -1591,7 +1607,7 @@ G4HadronCrossSections::GetFissionCrossSe
199 davidlt 1.1
200     G4double z43ba;
201     if (j == 4) {
202     - z43ba = std::pow(G4double(ZZ), 4./3.)/G4double(AA);
203     + z43ba = ZZ*g4pow->Z13(ZZ)/G4double(AA);
204     z43ba = std::max(-67. + 38.7*z43ba, 0.);
205     } else {
206     z43ba = 1.;
207 davidlt 1.2 diff -arupN geant4.9.5.p01.orig/source/processes/hadronic/management/src/G4HadronicProcess.cc geant4.9.5.p01/source/processes/hadronic/management/src/G4HadronicProcess.cc
208     --- geant4.9.5.p01.orig/source/processes/hadronic/management/src/G4HadronicProcess.cc 2012-07-23 08:38:33.000000000 +0200
209     +++ geant4.9.5.p01/source/processes/hadronic/management/src/G4HadronicProcess.cc 2012-07-23 09:15:11.000000000 +0200
210     @@ -213,11 +213,13 @@ G4HadronicProcess::PostStepDoIt(const G4
211     ed);
212     }
213    
214     - if (GetElementCrossSection(aParticle, anElement, aMaterial) <= 0.0) {
215     - // No interaction
216     - //theTotalResult->Clear();
217     - return theTotalResult;
218     - }
219     + if(aParticle->GetDefinition()->GetPDGCharge() != 0.0) {
220     + if (GetElementCrossSection(aParticle, anElement, aMaterial) <= 0.0) {
221     + // No interaction
222     + //theTotalResult->Clear();
223     + return theTotalResult;
224     + }
225     + }
226    
227     // Next check for illegal track status
228     //
229     diff -arupN geant4.9.5.p01.orig/source/processes/hadronic/processes/src/G4WHadronElasticProcess.cc geant4.9.5.p01/source/processes/hadronic/processes/src/G4WHadronElasticProcess.cc
230     --- geant4.9.5.p01.orig/source/processes/hadronic/processes/src/G4WHadronElasticProcess.cc 2012-07-23 08:38:33.000000000 +0200
231     +++ geant4.9.5.p01/source/processes/hadronic/processes/src/G4WHadronElasticProcess.cc 2012-07-23 09:14:51.000000000 +0200
232     @@ -99,6 +99,9 @@ G4VParticleChange* G4WHadronElasticProce
233     const G4Step& step)
234     {
235     aParticleChange.Initialize(track);
236     + G4double weight = track.GetWeight();
237     + aParticleChange.ProposeWeight(weight);
238     +
239     G4double kineticEnergy = track.GetKineticEnergy();
240     const G4DynamicParticle* dynParticle = track.GetDynamicParticle();
241     const G4ParticleDefinition* part = dynParticle->GetDefinition();
242     @@ -112,14 +115,14 @@ G4VParticleChange* G4WHadronElasticProce
243     { return G4VDiscreteProcess::PostStepDoIt(track,step); }
244    
245     G4Material* material = track.GetMaterial();
246     - G4Nucleus* targetNucleus = GetTargetNucleusPointer();
247     + G4Nucleus* targNucleus = GetTargetNucleusPointer();
248    
249     // Select element
250     G4Element* elm = 0;
251     try
252     {
253     elm = GetCrossSectionDataStore()->SampleZandA(dynParticle, material,
254     - *targetNucleus);
255     + *targNucleus);
256     }
257     catch(G4HadronicException & aR)
258     {
259     @@ -138,8 +141,8 @@ G4VParticleChange* G4WHadronElasticProce
260     {
261     G4ExceptionDescription ed;
262     ed << "Target element "<< elm->GetName()<<" Z= "
263     - << targetNucleus->GetZ_asInt() << " A= "
264     - << targetNucleus->GetA_asInt() << G4endl;
265     + << targNucleus->GetZ_asInt() << " A= "
266     + << targNucleus->GetA_asInt() << G4endl;
267     DumpState(track,"ChooseHadronicInteraction",ed);
268     ed << " No HadronicInteraction found out" << G4endl;
269     G4Exception("G4WHadronElasticProcess::PostStepDoIt", "had005",
270     @@ -153,33 +156,38 @@ G4VParticleChange* G4WHadronElasticProce
271    
272     // Initialize the hadronic projectile from the track
273     // G4cout << "track " << track.GetDynamicParticle()->Get4Momentum()<<G4endl;
274     - G4HadProjectile thePro(track);
275     + G4HadProjectile theProj(track);
276     if(verboseLevel>1) {
277     G4cout << "G4WHadronElasticProcess::PostStepDoIt for "
278     << part->GetParticleName()
279     << " in " << material->GetName()
280     - << " Target Z= " << targetNucleus->GetZ_asInt()
281     - << " A= " << targetNucleus->GetA_asInt() << G4endl;
282     + << " Target Z= " << targNucleus->GetZ_asInt()
283     + << " A= " << targNucleus->GetA_asInt() << G4endl;
284     }
285    
286     G4HadFinalState* result = 0;
287     try
288     {
289     - result = hadi->ApplyYourself( thePro, *targetNucleus);
290     + result = hadi->ApplyYourself( theProj, *targNucleus);
291     }
292     catch(G4HadronicException aR)
293     {
294     G4ExceptionDescription ed;
295     ed << "Call for " << hadi->GetModelName() << G4endl;
296     ed << "Target element "<< elm->GetName()<<" Z= "
297     - << targetNucleus->GetZ_asInt()
298     - << " A= " << targetNucleus->GetA_asInt() << G4endl;
299     + << targNucleus->GetZ_asInt()
300     + << " A= " << targNucleus->GetA_asInt() << G4endl;
301     DumpState(track,"ApplyYourself",ed);
302     ed << " ApplyYourself failed" << G4endl;
303     G4Exception("G4WHadronElasticProcess::PostStepDoIt", "had006",
304     FatalException, ed);
305     }
306    
307     + // Check the result for catastrophic energy non-conservation
308     + // cannot be applied because is not guranteed that recoil
309     + // nucleus is created
310     + // result = CheckResult(theProj, targNucleus, result);
311     +
312     // directions
313     G4ThreeVector indir = track.GetMomentumDirection();
314     G4double phi = CLHEP::twopi*G4UniformRand();
315     @@ -224,8 +232,9 @@ G4VParticleChange* G4WHadronElasticProce
316    
317     //G4cout << "Efinal= " << efinal << " TrackStatus= " << status << G4endl;
318    
319     - // recoil
320     aParticleChange.SetNumberOfSecondaries(0);
321     +
322     + // recoil
323     if(result->GetNumberOfSecondaries() > 0) {
324     G4DynamicParticle* p = result->GetSecondary(0)->GetParticle();
325    
326     @@ -238,7 +247,14 @@ G4VParticleChange* G4WHadronElasticProce
327     pdir.rotateUz(indir);
328     // G4cout << "recoil rotated " << pdir << G4endl;
329     p->SetMomentumDirection(pdir);
330     - aParticleChange.AddSecondary(p);
331     +
332     + // in elastic scattering time and weight are not changed
333     + G4Track* t = new G4Track(p, track.GetGlobalTime(),
334     + track.GetPosition());
335     + t->SetWeight(weight);
336     + t->SetTouchableHandle(track.GetTouchableHandle());
337     + aParticleChange.AddSecondary(t);
338     +
339     } else {
340     edep += p->GetKineticEnergy();
341     delete p;