# Category hadr-man History See `CONTRIBUTING.rst` for details of **required** info/format for each entry, which **must** added in reverse chronological order (newest at the top). It must **not** be used as a substitute for writing good git commit messages! ------------------------------------------------------------------------------- ## 2025-08-25 Vladimir Ivanchenko (hadr-man-V11-03-02) - G4HadronicProcess - removed misleading exception - fixed problem #2675 ## 2025-08-14 Alberto Ribon (hadr-man-V11-03-01) - G4VHighEnergyGenerator : introduced boolean methods to know whether the high-energy hadronic inelelastic interaction is quasi-elastic or diffractive. Note that this can be used for both FTF and QGS hadronic string models. ## 2025-05-03 Vladimir Ivanchenko (hadr-man-V11-03-00) - G4HadronicProcess - removed warning for the case when K0 and antiK0 are transformed into KS or KL. ## 2024-10-19 Vladimir Ivanchenko (hadr-man-V11-02-02) - G4HadronicProcessStore - fixed minor memory leak at exit by addition of G4ThreadLocalSingleton pattern and removed deletion of extra processes to avoid double deletion at exit. ## 2024-05-27 Vladimir Ivanchenko (hadr-man-V11-02-01) - G4HadronicProcessStore - fixed handling of rare processes: printout, cross section maximum search, and deletion end of run. ## 2023-12-09 Vladimir Ivanchenko (hadr-man-V11-02-00) - G4HadronicProcess - explicitly define cross section type per particle type, this should CPU performance for few % ## 2023-11-18 I. Hrivnacova (hadr-man-V11-01-08) - G4HadronicProcess, G4HadXSHelper - fixed memory leak at exit ## 2023-11-17 Vladimir Ivanchenko (hadr-man-V11-01-07) - G4HadronicProcessStore - fixed memory leak at exit ## 2023-11-06 Vladimir Ivanchenko (hadr-man-V11-01-06) - G4HadronicProcessStore - added printouts for neutrino processes G4HadronicProcessType - added new types for neutrino interactions ## 2023-08-16 Vladimir Ivanchenko (hadr-man-V11-01-05) - G4HadronicProcessStore - removed extra not needed empty lines from information printout ## 2023-07-14 Alberto Ribon (hadr-man-V11-01-04) - G4HadronicProcess : reduced the number of warnings concerning kaon0 and anti_kaon0 (which are transformed in kaon0S and kaon0L) to max 1 warning per thread. (This is useful for Fluka-Cern because it produces kaon0 and anti_kaon0.) ## 2023-03-29 Vladimir Ivanchenko (hadr-man-V11-01-03) - G4HadronicProcess - added extra G4Exception for the case if worker cannot share initialisation with master thread (problem #2528), diagnostic is improved - G4HadronicProcessStore - avoid checks of environment variables, instead call to G4HadronicParameters ## 2023-01-21 Vladimir Ivanchenko (hadr-man-V11-01-02) - G4HadronicProcess - removed usage of DebugFlag and RandomFile ## 2023-01-17 Vladimir Ivanchenko (hadr-man-V11-01-01) - G4HadronicProcess - moved several class members to be protected, which is needed for hadron elastic process (and may be other processes) ## 2023-01-09 Vladimir Ivanchenko (hadr-man-V11-01-00) - G4HadronicProcess - substitute access to environment variables by call to G4HadronicParameters ## 2022-11-26 Gabriele Cosmo (hadr-man-V11-00-08) - Fixed compilation warnings for implicit type conversions on macOS/XCode 14.1. ## 2022-11-11 Alberto Ribon (hadr-man-V11-00-07) - G4HadronicProcessStore: extended the Dump method for hypertriton and anti_hypertriton. ## 2022-08-24 Vladimir Ivanchenko (hadr-man-V11-00-06) - G4HadronicProcessType - added fNeutronGeneral ## 2022-08-22 Vladimir Ivanchenko (hadr-man-V11-00-05) - G4HadronicProcess - make access to target nucleus public needed for neutron general process ## 2022-07-01 Alberto Ribon (hadr-man-V11-00-04) - G4HadronicProcess: removed the temporary check and protection introduced in the previous tag (see below). This is not needed any longer after replacing the threshold used for checking the absolute energy non-conservation from DLB_MAX (implying no checking at all) to 350 GeV (this value allows for cases where the residual nucleus is not produced, even when super-heavy nuclides are involved). ## 2022-06-16 Alberto Ribon (hadr-man-V11-00-03) - G4HadronicProcess: temporary check and protection against the crashes that have been seen recently with neutronHP; when a secondary particle has a huge kinetic energy (i.e. higher than the max energy allowed in Geant4 hadronic physics - by default 100 TeV), a JustWarning is thrown and the particle is neglected (i.e. a corresponding G4Track object is not created). ## 2022-05-25 Alberto Ribon (hadr-man-V11-00-02) - G4HadronicProcess: propagate the information on parent resonance (in the FillResults method, from G4HadSecondary to G4Track) ## 2022-05-14 Vladimir Ivanchenko (hadr-man-V11-00-01) - G4HadronicProcess - implemented integral method - G4HadXSTypes, G4HadXSHelper - new helper objects ## 2021-12-10 Ben Morgan (hadr-man-V11-00-00) - Change to new Markdown History format --- # History entries prior to 11.0 16 November 2021 V. Ivanchenko (hadr-man-V10-07-10) --------------------------------------------------- - G4HadronicProcessStore : attempt to fix memory leak at exit 23 September 2021 A. Ribon (hadr-man-V10-07-09) --------------------------------------------------- - G4HadronicProcessType : added new enum value (fEMDissociation = 310) for EM dissociation process (as requested by Laurence James Nevay). 04 August 2021 A. Ribon (hadr-man-V10-07-08) --------------------------------------------------- - HadronicProcess : removed unused private member variable (idxIC); updated the call to the G4Track method to set the model creator ID. 04 June 2021 A. Ribon (hadr-man-V10-07-07) --------------------------------------------------- - HadronicProcess : made public (instead of protected) the method GetHadronicInteraction(). This can be useful for users to access at run-time some information available from a hadronic final-state model. 17 May 2021 J. Madsen (hadr-man-V10-07-06) --------------------------------------------------- - Fixed TLS usage of G4HadronicProcessStore - Fixed loops in G4HadronicProcessStore::Clean() 16 April 2021 B. Morgan (hadr-man-V10-07-05) --------------------------------------------------- - Migrate build to modular CMake API 13 April 2021 A. Ribon (hadr-man-V10-07-04) --------------------------------------------------- - GNUmakefile, sources.cmake : moved most classes of hadronic/models/management into hadronic/management (with the remaining few ones moved into hadronic/util ; moreover, all the classes of hadronic/model/util have been moved to hadronic/util; note that the directories hadronic/models/management/ and hadronic/models/util/ have now been deleted). 22 March 2021 A. Ribon (hadr-man-V10-07-03) --------------------------------------------------- - G4HadronicEPTestMessenger : removed deprecated commands. 18 March 2021 A. Ribon (hadr-man-V10-07-02) --------------------------------------------------- - G4HadronInelasticProcess : moved to hadronic/mangement/ . 08 March 2021 A. Ribon (hadr-man-V10-07-01) --------------------------------------------------- - G4HadronInelasticProcess : removed old and unused header file corresponding to the Gheisha inelastic cross section (that has been deleted). 04 March 2021 A. Ribon (hadr-man-V10-07-00) --------------------------------------------------- - G4HadronInelasticProcess : added a new method to return the particle definition (useful in practice to distinguish between baryons and antibaryons, or between hadrons and ions). 01 November 2020 V. Ivanchenko (hadr-man-V10-06-10) --------------------------------------------------- - G4HadronicProcessStore : fixed Coverity report on the Print(..) method 14 October 2020 A. Ribon (hadr-man-V10-06-09) --------------------------------------------------- - G4HadronicProcess : removed the warnings when the environmental variables G4Hadronic_*Level are used. This is needed for system testing, in order to activate in some platforms these conservation checks for all examples and tests. Note that for advanced users, the use of UI commands are preferable. 05 August 2020 A. Ribon (hadr-man-V10-06-08) --------------------------------------------------- - G4HadronicEPTestMessenger, G4HadronicProcess : deprecated the three environmental variables G4Hadronic_*Level and the corresponding old UI commands "/heptst/*Level", recommending instead the new UI commands "/process/had/heptst/*Level". 04 August 2020 V. Ivanchenko (hadr-man-V10-06-07) --------------------------------------------------- - G4HadronicProcessStore : use verbosity level from the G4HadronicParameters class, add printout of cross section factor - G4HadronicProcess - removed unused flag 20 July 2020 V. Ivanchenko (hadr-man-V10-06-06) --------------------------------------------------- - G4HadronicProcessStore : extended default initialisation printout to anti_lambda 18 May 2020 G. Cosmo (hadr-man-V10-06-05) --------------------------------------------------- - G4HadronicProcessStore: removed unnecessary use of deprecated G4USE_STD11 flag in HtmlFileName(). Also indicated in GitHub PR#13. 16 May 2020 V. Ivanchenko (hadr-man-V10-06-04) --------------------------------------------------- - G4HadronicProcessStore : extended default initialisation printout to sigma-, D-, B-. - G4HadronicProcess : removed check for G4HadronicException, where it cannot be; limit printout on kaon0 in final state. 12 May 2020 A. Ribon (hadr-man-V10-06-03) --------------------------------------------------- - G4HadronicProcessStore : in the method Dump, check the internal verbosity level as well as the newly introduced global hadronic verbosity level, returning immediately (without printing anything) if one of these is 0. 1 April 2020 V. Ivanchenko (hadr-man-V10-06-02) --------------------------------------------------- - G4HadronicProcess : fixed Coverity warning to EP check method for the case when primary particle remains in the interaction 16 January 2020 A. Ribon (hadr-man-V10-06-01) --------------------------------------------------- - G4HadLeadBias : replaced 'G4int' with 'size_t' to avoid warnings (seen on Windows). 3 January 2020 V. Ivanchenko (hadr-man-V10-06-00) --------------------------------------------------- - G4HadronicProcess : for charge check assume, that all final electrons come from internal conversion 11 November 2019 A. Ribon (hadr-man-V10-05-07) --------------------------------------------------- - G4HadronicProcess : in the method CheckResult, a short-lived secondary particle is allowed to have a dynamic mass which differ from the PDG mass by less than three times the particle's width. 17 October 2019 V. Ivanchenko (hadr-man-V10-05-06) --------------------------------------------------- - G4HadronicProcess : for particle out of the mass shell correct kinetic energy in a way, that it is always above 10 keV; use std::getenv method recommended for concurrency 12 September 2019 V. Ivanchenko (hadr-man-V10-05-05) --------------------------------------------------- - G4HadronicProcess : fixed Coverity warnings 21 August 2019 V. Ivanchenko (hadr-man-V10-05-04) --------------------------------------------------- - G4EnergyRangeManager : move operators to be private, removed obsolete method, removed G4HadronicException, instead in case of problem return nullptr - G4HadronicProcess : do not use try/catch pattern to choose hadronic interaction; decrease limit on check of offshell mass from 1.5 MeV to 10 keV - fixed problem 2175; removed unused headers 13 July 2019 V. Ivanchenko (hadr-man-V10-05-03) --------------------------------------------------- - G4EnergyRangeManager : added short cut - if only one model registered for a process no check is applied; implemented C++11 paterns 11 June 2019 A. Ribon (hadr-man-V10-05-02) --------------------------------------------------- - G4EnergyRangeManager : fixed bug regarding the kinetic energy per nucleon in the case of anti-nuclei (the bug was harmless because one single model, FTFP, is used for all energies in the case of anti-nuclei projectiles). 03 June 2019 V. Ivanchenko (hadr-man-V10-05-01) --------------------------------------------------- - G4HadronicProcess - removed try/couch pattern from computation of mean free path, removed final state random rotation 08 May 2019 V. Ivanchenko (hadr-man-V10-05-00) --------------------------------------------------- - G4HadronicInelasticProcess - removed default GHEISHA cross section 08 November 2018 V. Ivanchenko (hadr-man-V10-04-12) 07 November 2018 V. Ivanchenko (hadr-man-V10-04-10) 06 November 2018 V. Ivanchenko (hadr-man-V10-04-09) --------------------------------------------------- - G4HadronicProcess - added check if secondary particle is on the mass shell, if its mass differ from the PDG mass more for 1.5 MeV then mass is forced to the mass shell, energy concerved, but momentum is changed 20 August 2018 V. Ivanchenko (hadr-man-V10-04-08) --------------------------------------------------- - G4HadronicInteractionWrapper - removed as obsolete class 10 August 2018 A. Ribon (hadr-man-V10-04-07) --------------------------------------------------- - sources.cmake, G4HadronicParameters : moved away class G4HadronicParameters in hadronic/util/ to avoid circular dependency between hadronic/management/ and hadronic/cross_sections/ (the former has to depend on the latter, but not vice versa; hadronic/util/ does not depend on either). 6 August 2018 A. Ribon (hadr-man-V10-04-06) --------------------------------------------------- - G4HadronicParameters : created new singleton to keep global hadronic parameters. For the time being, it has only the high-energy limit of hadronic physics (instead of spreading this value in many different files, as done up to now). The default value is set to 100 TeV. 14 July 2018 M.Maire (hadr-man-V10-04-05) --------------------------------------------------- - add function G4HadronicProcess::GetHadronicModel(modelName) which return a G4HadronicInteraction* 8 June 2018 J. Yarba (hadr-man-V10-04-04) --------------------------------------------------- - G4HadronicProcess - use correct return type when calling CheckResult (from PostStepDoIt); otherwise the value of pointer 'result' does not get properly reset to NULL in case a non-conservation is detected, thus "bad" interaction does not get re-sampled 31 May 2017 V. Ivanchenko (hadr-man-V10-04-03) --------------------------------------------------- - G4HadronicProcess, G4HadronInelasticProcess - added keyword "override", cleanup cross section scale factor and weights - G4HadronicProcessStore - use "nullptr", added flag buildXSTable and get/set methods 30 May 2017 V. Ivanchenko (hadr-man-V10-04-02) --------------------------------------------------- - G4HadronicProcess, G4VLeadingParticleBiasing, G4HadLeadBias fixed compilation warning of CMSSW at gcc7.0.0 29 May 2017 V. Ivanchenko (hadr-man-V10-04-01) --------------------------------------------------- - G4HadronicProcess - use const pointers and "nullptr" for G4Material and G4Element, use ComputeCrossSection(...) method, remove creation of new materials in run time inside GetElementCrossSection(..) method, all materials should be created in user code 09 May 2018 Alberto Ribon (hadr-man-V10-04-00) --------------------------------------------------- - G4HadronicProcess : fixed warnings in gcc 8 regarding catching polymorphic type by value, instead of by reference. 12 September 2017 Krzysztof Genser (hadr-man-V10-03-06) --------------------------------------------------- - G4HadronicProcessType.hh added fMuAtomicCapture 31 August 2017 Dennis Wright (hadr-man-V10-03-05) --------------------------------------------------- - G4HadronicProcessStore.cc: remove circular dependence on G4RadioactiveDecay 17 July 2017 Dennis Wright (hadr-man-V10-03-04) ------------------------------------------------- - G4HadronicProcessStore::DumpHtml(): add PrintHtml for generic ion - G4HadronicProcessStore::PrintHtml(): add loop to print descriptions of "extra" processes, including radioactive decay. - G4HadronicProcessStore::Clean(): add exception to prevent deletion of G4RadioactiveDecay - already deleted somwhere else. 11 May 2017 V. Ivanchenko (hadr-man-V10-03-03) 10 May 2017 V. Ivanchenko (hadr-man-V10-03-00) --------------------------------------------------- - G4HadronicProcess - correctly check charge and energy balance in the case of e- internal conversion; improved initialisation for constructors 01 July 2016 V. Ivanchenko (hadr-man-V10-02-03) --------------------------------------------------- - G4EnergyRangeManager - fixed Coverity warning 24 June 2016 Alberto Ribon (hadr-man-V10-02-02) --------------------------------------------------- - G4HadronicProcess - added check on the final-state secondaries to see if kaon0 or anti_kaon0 are present: if this the case, they are transformed into either kaon0S or kaon0L, with equal (50%) probability. 27 May 2016 V. Ivanchenko (hadr-man-V10-02-01) --------------------------------------------------- - G4HadronicProcess - added flag of "integral" approach to take into account cross section change at a step; use nullptr; do not create new materials in the method GetElementCrossSection(), istead only try to find existing simple G4Material 18 April 2016 V. Ivanchenko (hadr-man-V10-02-00) --------------------------------------------------- - G4HadronicProcessStore - call initialisation of all G4HadronicInteractions 30 October 2015 Gunter Folger (hadr-man-V10-01-06) --------------------------------------------------- - while loop check: G4HadronicProcess.cc has one loops, already checked with counter 21 September 2015 Dennis Wright (hadr-man-V10-01-05) ------------------------------------------------------ - G4HadronicProcess::BiasCrossSectionByFactor : replace if( (it != "PhotonInelastic") && (it != "ElectroNuclear") && (it != "PositronNuclear") ) by if( (it != "photonNuclear") && (it != "electronNuclear") && (it != "positronNuclear") ) to fix fatal exception in bug report 1740. 09 September 2015 A. Ribon (hadr-man-V10-01-04) --------------------------------------------------- - G4HadronicProcessStore : print "/n", i.e. "per nucleon", in the kinetic energy limits of hadronic models in the case of ions (address bug report #1775). 13 August 2015 A. Ribon (hadr-man-V10-01-03) --------------------------------------------------- - G4HadronicProcess : trivial and useless Coverity fixes. 27 May 2015 G.Folger (hadr-man-V10-01-02) --------------------------------------------------- - Updates to G4HadronicProcessStore for Html documentation 15 May 2015 A. Ribon (hadr-man-V10-01-01) --------------------------------------------------- - G4HadronicProcess : improved the method GetElementCrossSection to be used also with neutronHP (which needs a material defined). 11 March 2015 V. Ivanchenko (hadr-man-V10-01-00) --------------------------------------------------- - G4HadronicProcessStore, G4HadronicProcess - fixed procedure of deletion at exit 19 November 2014 G. Folger(hadr-man-V10-00-17) --------------------------------------------------- - G4HadronicProcess::CheckResult(): Add check for dynamic mass to correspond to PDG mass within ~10%. 12 November 2014 V. Ivanchenko (hadr-man-V10-00-16) --------------------------------------------------- - G4HadronicProcessStore -fixed computation of cross sections for ions 12 November 2014 V. Ivanchenko (hadr-man-V10-00-15) --------------------------------------------------- - G4HadronicProcess - fixed final track status for some models like G4WilsonAbrasionModel 11 November 2014 V. Ivanchenko (hadr-man-V10-00-14) --------------------------------------------------- - G4HadronicProcess - clear final state before resample interaction due to energy balance violation 7 November 2014 V. Ivanchenko (hadr-man-V10-00-13) ------------------------------------------------ 4 November 2014 V. Ivanchenko (hadr-man-V10-00-12) ------------------------------------------------ - G4HadronicProcess - added creator model type to secondary 12 September 2014 Tatsumi Koi (hadr-man-V10-00-11) ------------------------------------------------ - Add BuildPhysics method for Initialisation of models before run Co working with hadr-modman-V10-00-05 include/G4EnergyRangeManager.hh src/G4EnergyRangeManager.cc src/G4HadronicProcess.cc 4 August 2014 V. Ivanchenko (hadr-man-V10-00-10) ------------------------------------------------ - G4HadronicProcessStore, G4HadronicProcess: simplified registration and de-registration; fixed Coverity report 1 August 2014 Alberto Ribon (hadr-man-V10-00-09) ------------------------------------------------ - G4EnergyRangeManager, G4HadronicProcess: moved the computation of the kinetic energy per nucleon (in the case of ion projectile) from G4HadronicProcess to G4EnergyRangeManager. 1 August 2014 Alberto Ribon (hadr-man-V10-00-08) ------------------------------------------------ - G4EnergyRangeManager : added a new method GetHadronicInteraction which uses G4HadronicInteraction::IsApplicable. - G4HadronicProcess : replaced the old method of G4EnergyRangeManager (still there but deprecated) with the new one. 1 July 2014 Gunter Folger (hadr-man-V10-00-07) ---------------------------------------------- - G4HadronicProcessStore::PrintHtml(): include ProcessDescription inline in physics lists description 22 May 2014 Andrea Dotti (hadr-man-V10-00-06) -------------------------------------------- - Code cleanup 22 May 2014 Andrea Dotti (hadr-man-V10-00-05) -------------------------------------------- - Fixing valgrind report 21 May 2014 Andrea Dotti (hadr-man-V10-00-04) -------------------------------------------- - Retagging: previous tag was ok. 21 May 2014 Alberto Ribon (hadr-man-V10-00-03) --------------------------------------------- - G4HadronicProcessStore : add printout information for deuteron, triton, He3 and alpha. 20 May 2014 Andrea Dotti (hadr-man-V10-00-02) --------------------------------------------- - G4HadronicProcessStore : correct for bug in Clear() for which stopping processes are deleted twice (once because are registered as normal processes and once are registered as extra processes). 15 May 2014 Vladimir Ivanchenko (hadr-man-V10-00-01) --------------------------------------------------- - G4HadronicProcess: added method GetHadronicInteractionList() allowing access to the list of registered models, removed obsolete access methods to G4EnergyRangeManager - G4HadronicProcessStore - become G4ThreadLocalSingletone allowing proper destruction of hadronic processes/models/x-sections - G4EnergyRangeManager - cleaned up; instead of c-array models pointers are stored in stl vector - this tag requires remove deletion of Physics vectors from destructors of all hadronic classes 03 February 2014 Gunter Folger (hadr-man-V10-00-00) --------------------------------------------------- - G4HadronicProcess: in EnergyMomentumCheck... add printout of 3momentum 20 June 2013 Dennis Wright (hadr-man-V09-06-03) ------------------------------------------------- - G4EnergyRangeManager : re-order initialization of hadronicInteractionCounter in copy ctor and assignment operator to satisfy coverity 19 April 2013 Tatsumi Koi (hadr-man-V09-06-02) ------------------------------------------------------- - Add dump method include/G4EnergyRangeManager.hh src/G4EnergyRangeManager.cc 7 March 2013 michel maire (hadr-man-V09-06-01) - G4HadronicProcessStore- Dump and Print: cosmetic in Processes summary 30 January 2013 michel maire (hadr-man-V09-06-00) ------------------------------------------------------- - G4HadronicProcessStore::GetCrossSectionPerAtom() - add material 14 November 2012 Vladimir Ivantchenko (hadr-man-V09-05-24) ------------------------------------------------------- - G4HadronicProcess.cc - added full printout about hadronic exception inside G4Exception printout, fixed bug#1377 14 November 2012 Vladimir Ivantchenko (hadr-man-V09-05-23) ------------------------------------------------------- - G4HadronicProcess.cc - added catch of G4HadronicException inside BuildPhysicsTable method 11 October 2012 Krzysztof Genser (hadr-man-V09-05-22) ------------------------------------------------------- - G4HadronicProcessType.hh added fLeptonAtRest 01 October 2012 Alberto Ribon (hadr-man-V09-05-21) ------------------------------------------------------- - Fixed warnings in G4HadronicProcessStore.cc. 28 September 2012 Michael Kelsey (hadr-man-V09-05-20) ------------------------------------------------------- - G4HadronicProcess: Restore inheritance from G4VDiscreteProcess; this migration will be done during 10.0 development. Remove deprecation warning from original constructor for now (keep new constructor in addition). 28 September 2012 Alberto Ribon (hadr-man-V09-05-19) ------------------------------------------------------- - Fixed warnings in G4HadronicProcessStore.cc. 20 September 2012 Gabriele Cosmo (hadr-man-V09-05-18) ------------------------------------------------------- - Explicitly use inclusion of headers for system of units and physical constants, in plan to remove implicit inclusion from globals.hh. 19 September 2012 Michael Kelsey (hadr-man-V09-05-17) ------------------------------------------------------- - G4HadronicProcess.hh: Fix compiler warning about unused parameters in GetMeanLifeTime() (added to cover pure virtual in AtRest). 18 September 2012 Michael Kelsey (hadr-man-V09-05-16) ------------------------------------------------------- - G4HadronicProcess: Inherit from G4VRestDiscreteProcess, to unify "normal" and stopping/capture activities. Change constructor signature to take G4HadronicProcessType argument (requires changes to all subclasses), use it to toggle base-class configuration flags. - G4HadronInelasticProcess.cc: Follow base class migration, above. - Requires co-working tags: hadr-proc-V09-05-08, hadr-cohe-V09-05-10, hadr-chips-proc-V09-05-05, hadr-stopping-V09-05-21 31 August 2012 Michael Kelsey (hadr-man-V09-05-15) ---------------------------------------------------- - G4HadronicProcessStore.cc: Add e+ and mu+ to level-1 reporting. 31 August 2012 Gunter Folger (hadr-man-V09-05-14) ---------------------------------------------------- - G4HadronicProcess: avoid printing of blank line from CheckEnergyMomentumConservation() 02 August 2012 V.Ivanchenko (hadr-man-V09-05-13) ---------------------------------------------- - G4HadronicProcess: removed GetTargetDefinition() instead added GetTargetIsotope; check cross section in PostStepDoIt only for charged particles (for performance reasons) 28 July 2012 michel maire (hadr-man-V09-05-12) ---------------------------------------------- - G4HadronicProcess: add function GetTargetDefinition() 24 July 2012 michel maire (hadr-man-V09-05-11) ---------------------------------------------- - G4HadronicProcessStore: add functions GetCrossSectionPerAtom() and GetCrossSectionPerVolume() 11 July 2012 Gunter Folger (hadr-man-V09-05-10) -------------------------------------------------- - G4HadronicProcess.cc: fix problem of flushing stdout/stderr for energy checking printout. 2 July 2012 John Apostolakis (hadr-man-V09-05-09) ------------------------------------------------- - G4HadronicProcess.cc: Improved quick check and full check for case of electro-nuclear. Copes with case that both primary survives and secondaries are created. 8 June 2012 Gabriele Cosmo (hadr-man-V09-05-08) ------------------------------------------------- - Fixed trivial cases of hidden variable visibility, detected with '-Wshadow' compilation option on gcc compiler. 4 June 2012 Dennis Wright (hadr-man-V09-05-07) ------------------------------------------------- - G4HadronicProcess.hh: remove methods ResetNumberOfInteractionLengthLeft() and GetTotalNumberOfInteractionLengthTraversed() as these have been moved to G4VProcess. Must use with tag procman-V09-05-00 or later. 21 May 2012 Gunter Folger (hadr-man-V09-05-06) --------------------------------------------------- - E/p conservation fails only if both absolute and relative fail; effect: at low energies, compare to absolute limit, and at high energies use relative limit; cross-over when limits cross, or at absolute = Ekinetic * relative Charge, baryon non-conservation will make test fail as before. 10 May 2012 Gunter Folger (hadr-man-V09-05-05) --------------------------------------------------- - Improve format of E/p conservation check printout - Ignore check for charge and baryon number conservation when limit is DBL_MAX 09 May 2012 Gunter Folger (hadr-man-V09-05-04) --------------------------------------------------- - Add check for momentum conservation, reusing limits for energy. - Add check for charge and baryon number conservation 05 May 2012 Vladimir Ivantchenko (hadr-man-V09-05-03) --------------------------------------------------- - G4HadronicProcess - methods FillResult, CheckResult, CheckEnergyMomentumConservation and members theTotalResult, epReportLevel, thePro moved to protected to be used in derived classes; removed unused ModelingState; commented out obsolete method FillTotalResult; change logic of definition of time for secondary particles inside method FillResults 28 April 2012 Mikhail Kosov (hadr-man-V09-05-02) --------------------------------------------------- - Sorry, I tagged it for Gunter to compile stopping 16 march 2012 Gunter Folger - not yet tagged --------------------------------------------------- - Add printing of model desciptions to html files. 16 March 2012 Gunter Folger (hadr-man-V09-05-01) --------------------------------------------------- - add method for energy non-conservation check; in case of non-conservation, re-sample the interaction. Limits are set in G4HadronicInteraction, and may be overridden for models; LEP and HEP override defaults, as these do not return the nucleus in teh final state. A test mode aborting events and reporting info on stderr is available, and triggered by a negative value in G4Hadronic_epReportLevel env. variable. 22 January 2012 Dennis Wright (hadr-man-V09-05-00) --------------------------------------------------- - move isotope production infrastructure from process to model level; now done only for LEP models - G4HadronicProcess.hh, .cc: remove all isotope production infrastructure - G4IsoParticleChange.hh : move to models/management 24 November 2011 Vladimir Ivantchenko (hadr-man-V09-04-23) -------------------------------------------------------- - G4HadronicProcess - changed order of checks - first track status, after value of cross section to remove potential numerical problem of cross section computation for zero kinetic energy hadrons 6 November 2011 Vladimir Ivantchenko (hadr-man-V09-04-22) -------------------------------------------------------- - G4HadronicProcess - more accurate check of zero primary energy 4 November 2011 Vladimir Ivantchenko (hadr-man-V09-04-21) -------------------------------------------------------- - G4HadronicProcess - more accurate check of zero primary energy 3 November 2011 Vladimir Ivantchenko (hadr-man-V09-04-20) -------------------------------------------------------- - G4HadronicProcess - added change status if final energy of primary particle is zero 1 November 2011 Vladimir Ivanchenko (hadr-man-V09-04-19) 21 October 2011 Vladimir Ivanchenko (hadr-man-V09-04-18) ---------------------------------------------------------- - G4HadronicProcess: added protected method GetTargetNucleusPointer; make DumpState method protected 18 October 2011 Michael Kelsey (hadr-man-V09-04-17) --------------------------------------------------- - G4HadronicProcess.cc: In ::CheckEnergyMomentumConservation(), check for projectile kinetic energy below the absolute energy-conservation bound; extremely slow particles should not have a "relative" conservation check. 11 October 2011 Michael Kelsey (hadr-man-V09-04-16) --------------------------------------------------- - G4HadronicProcess.cc: In ::CheckEnergyMomentumConservation(), check for "do nothing" result (G4ParticleChange with "fAlive" status), and compute final-state momentum differently than just adding up secondaries. 06 October 2011 Dennis Wright (hadr-man-V09-04-15) -------------------------------------------------- - replace Description() with ProcessDescription(std::ostream&) 28 September 2011 Vladimir Ivanchenko (hadr-man-V09-04-14) ---------------------------------------------------------- - G4HadronicProcess: complete migration to integer Z and A. 26 Sepember 2011 Michael Kelsey (hadr-man-V09-04-13) ---------------------------------------------------- - G4HadronicProcess.cc: Add file-scope variable to capture envvar with name of file for saving random engine state. Used immediately prior to model "ApplyYourself" call. 9 September 2011 Michael Kelsey (hadr-man-V09-04-12) ---------------------------------------------------- - G4HadronicProcess.cc: migration to new G4HadFinalState interface - G4HadLeadBias.cc: migration to new G4HadFinalState interface Requires hadr-util-V09-04-02 6 September 2011 Vladimir Ivanchenko (hadr-man-V09-04-11) -------------------------------------------------------- - G4HadronicProcess: migration to new G4Exception interface; return back GetMicroscopicCrossSection and mark it as an obsolete method; make GetElementCrossSection inlined 23 August 2011 Vladimir Ivanchenko (hadr-man-V09-04-10) -------------------------------------------------------- - G4HadronicProcess: use new interface to cross sections; substitute GetMicroscopicCrossSection by GetElementCrossSection; added check on zero kinetic energy of primary and secondary after interaction (active if G4HadronicProcess_debug environment variable is set) - G4HadronicProcessStore - use new interface to cross sections 1 August 2011 Dennis Wright (hadr-man-V09-04-09) -------------------------------------------------- - Add method G4HadronicProcessStore::DumpHtml to write out html physics list documentation - Add method G4HadronicProcessStore::PrintHtml to print html documentation for processes, models and cross sections for each particle 25 July 2011 Vladimir Ivanchenko (hadr-man-V09-04-08) ---------------------------------------------------- - G4HadronicProcess: added public method GetTargetNucleus to access target isotope; added private method FillResult which provides more simple and transparent handle of primary and secondaries, in particular, allowing primary be unchanged 20 July 2011 Michael Kelsey --------------------------- - G4HadronicProcess: Add null-pointer checks for material and volume to DumpState() 7 June 2011 Dennis Wright (hadr-man-V09-04-07) ---------------------------------------------------- - G4HadronicProcessType: fRadioactiveDecay changed from 211 to 210 5 June 2011 Dennis Wright (hadr-man-V09-04-06) ---------------------------------------------------- - G4HadronicProcessType: add fRadioactiveDecay = 211 to enum 6 April 2011 Gunter Folger (hadr-man-V09-04-05) ---------------------------------------------------- - enhance printout for case 3 in E/p checking with initial state info. 5 April 2011 Gunter Folger (hadr-man-V09-04-04) ---------------------------------------------------- - modify E/p checking to allow to use stdout or stderr, depending on checklevel>0 or checklevel<0. 17 March 2011 Gunter Folger (hadr-man-V09-04-03) ---------------------------------------------------- - modify E/p checking to take the tighter limit of process and model 25 February 2011 Gunter Folger (hadr-man-V09-04-02) ---------------------------------------------------- - allow to turn on checking for E/p conservation by environment variables: G4Hadronic_epReportLevel : set to checklevel [1,4] G4Hadronic_epCheckRelativeLevel: level of relative conservation G4Hadronic_epCheckAbsoluteLevel: level for absolute conservation 10 February 2011 Dennis Wright (hadr-man-V09-04-01) ---------------------------------------------------- - add method MultiplyCrossSectionBy() to G4HadronicProcess so that cross sections can be scaled for testing 7 January 2011 Dennis Wright (hadr-man-V09-04-00) ---------------------------------------------------- - G4HadronicProcess.cc: make GetCrossSectionDataStore public so it can be accessed through the process - G4HadronicProcessStore::Print() : extend to include cross section info 30 November 2010 Dennis Wright (hadr-man-V09-03-06) ----------------------------------------------------- - G4HadronicProcess.cc : in PostStepDoIt, check cross section value before calling ApplyYourself. If less than or equal to zero, return track unchanged. 21 November 2010 Dennis Wright (hadr-man-V09-03-05) ----------------------------------------------------- - G4EnergyRangeManager: initialize theHadronicInteractionCounter and ptr theHadronicInteraction as per CoVerity 17 August 2010 Vladimir Ivanchenko (hadr-man-V09-03-04) -------------------------------------------------------- - G4HadronicProcess - use const GetParticleDefinition method of G4DynamicParticle - G4HadronicProcessStore - remove const_cast 29 July 2010 Vladimir Ivanchenko (hadr-man-V09-03-03) ------------------------------------------------ - G4HadronicProcess - added protection against negative cross section; removed commented old code - G4HadronicProcessStore - reduce number of const_cast 01 June 2010 Gunter Folger (hadr-man-V09-03-02) ------------------------------------------------ - restore #include for 21 April 2010 Dennis Wright (hadr-man-V09-03-01) ------------------------------------------------ - create G4HadronicEPTestMessenger to make energy/momentum test commands available in UI - include G4HadronicEPTestMessenger in G4HadronicProcessStore 2 April 2010 Dennis Wright (hadr-man-V09-03-00) ----------------------------------------------- - G4HadronicProcess: add methods CheckEnergyMomentumConservation, SetEpReportLevel, SetEnergyMomentumCheckLevels, GetEnergyMomentumCheckLevels, which implement energy/momentum checking - also includes Vladimir Ivantchenko's clean-up of unused code 2 December 2009 Vladimir Ivanchenko (hadr-man-V09-02-05) --------------------------------------------------------- - G4HadronicProcessStore - added protection to the Clean method 25 February 2009 Vladimir Ivanchenko (hadr-man-V09-02-04) --------------------------------------------------------- - G4HadronicProcessStore - added protection to the Clean method 22 February 2009 Vladimir Ivanchenko (hadr-man-V09-02-03) --------------------------------------------------------- 14 February 2009 Vladimir Ivanchenko (hadr-man-V09-02-02) --------------------------------------------------------- - G4HadronicProcessStore - added Clean method and cleanup of model and cross section stores 06 February 2009 Vladimir Ivanchenko (hadr-man-V09-02-01) --------------------------------------------------------- 24 January 2009 Vladimir Ivanchenko (hadr-man-V09-02-00) ------------------------------------------------------- - G4HadronicProcessStore - added destruction of processes 01 December 2008 Dennis Wright (hadr-man-V09-01-10) --------------------------------------------------- - G4HadronicProcess - make MeanFreePath() public again. In future make it protected again, but make a public method which calls it. 21 November 2008 Dennis Wright (hadr-man-V09-01-09) --------------------------------------------------- - G4HadronicProcess - remove again method SetDispatch for major release 22 October 2008 Vladimir Ivanchenko (hadr-man-V09-01-08) ------------------------------------------------------ - G4HadronicProcessStore - use G4HadronicProcessType enumerator - G4HadronicProcess - returned back obsolete method SetDispatch for minor release 02 October 2008 Dennis Wright (hadr-man-V09-01-07) -------------------------------------------------- - create new hadronic process subtype enum G4HadronicProcessType: enum G4HadronicProcessType { fHadronElastic = 111, fHadronInelastic = 121, fCapture = 131, fFission = 141, fHadronAtRest = 151, fChargeExchange = 161 }; - G4HadronicProcess.hh - add enum to identify process subtypes - G4HadronInelasticProcess.cc - change process sub-type from 12 to fHadronInelastic 04 August 2008 Vladimir Ivanchenko (hadr-man-V09-01-06) ------------------------------------------------------ - G4HadronicProcessStore - improve cout - G4HadronicProcess - cleanup: use method SampleZandA to select an isotope do not use home-made NanCheck do not check environment variables run-time directly fill G4HadronicWhiteBoard implement PostStepDoIt and DumpPhysicsTable methods - G4HadronInelasticProcess - use methods of the base class 04 August 2008 Vladimir Ivanchenko (hadr-man-V09-01-05) ------------------------------------------------------ - G4HadronicProcessStore - use sub-types to access cross sections, add proceses following only G4VProcess interface 08 July 2008 Dennis Wright (hadr-man-V09-01-04) ----------------------------------------------- - set process sub-type to 12 for G4HadronInelasticProcess 09 June 2008 Dennis Wright (hadr-man-V09-01-03) ----------------------------------------------- - G4HadronicProcess.cc - turn off error in case of fStopButAlive, but leave it in place for fStopAndKill, fKillTrackAndSecondaries and fPostponeToNextEvent 05 June 2008 Vladimir Ivanchenko (hadr-man-V09-01-02) ---------------------------------------------------- - G4HadronicProcessStore - comment out destructor 19 May 2008 Vladimir Ivanchenko (hadr-man-V09-01-01) ---------------------------------------------------- - G4HadronicProcessStore - new singleton to keep pointers to all hadronic processes - G4HadronicProcess - added PreparPhysicsTable and BuildPhysicsTable methods, added registration in G4HadronicProcessStore 19 May 2008 Vladimir Ivanchenko (hadr-man-V09-01-00) ---------------------------------------------------- - G4HadronicProcess - cleanup of the header (add comments, move methods for isotope production to the src, make GetMeanFreePath protected, remove duplication of PostStepDoIt), add default implementation of GetMicroscopicCrossSection, comment out check IfApplicable in MeanFreePath 15 October 2007 Dennis Wright (hadr-man-V09-00-00) -------------------------------------------------- - G4HadronicProcess::FillTotalResult: T. Koi's fix of bug #967 - replaced aT.GetGlobalTime() with the variable time at line #664. 15 June 2007 Gabriele Cosmo (hadr-man-V08-03-03) ------------------------------------------------ - G4HadronicProcess: fixed memory leak with deletion of 'theIsoResult' and 'theCrossSectionDataStore' in destructor. 12 June 2007 Dennis Wright (hadr-man-V08-03-02) ----------------------------------------------- - G4HadronicProcess::FillTotalResult: use different G4DynamicParticle constructor and do not allow kinetic energy to be exactly 0. This partly removes a spurious peak at 90 degrees 01 June 2007 Dennis Wright (hadr-man-V08-03-01) ----------------------------------------------- - G4HadronicProcess.cc : change default for isotope production to off this fixes a memory leak. 30 Apr 2007 Dennis Wright (hadr-man-V08-03-00) ---------------------------------------------- - G4HadronicProcess.cc remove effective charge calculation remove unused variable newWeight 23 Apr 2007 Dennis Wright (hadr-man-V08-02-03) ---------------------------------------------- - G4HadronicProcess.hh remove AlwaysKillLeadingHadron method - G4HadronicProcess.cc use Alex Howard's fix of weighting error in leading particle killer 10 Apr 2007 Dennis Wright (hadr-man-V08-02-02) ---------------------------------------------- - G4HadronicInteractionWrapper.hh, .cc add process and model name arguments to ApplyInteraction method and enter them into whiteboard - G4HadronicProcess.cc add process and model name arguments to ApplyInteraction method 2 Mar 2007 Dennis Wright (hadr-man-V08-02-01) --------------------------------------------- - G4HadronicProcess.cc: put in Vladimir Ivantchenko's fix to stop killing primaries for elastic 26 Dec 2006 Dennis Wright (hadr-man-V08-02-00) ---------------------------------------------- - G4HadronicProcess.hh, .cc: Add handling of user-defined isotopes: re-implement methods GetMeanFreePath() and ChooseAandZ() to use new methods in G4CrossSectionDataStore. No longer use dispatch pointer to call data store methods. Data members currentZ, currentN and methods GetCurrentZ(), GetCurrentN() removed as no longer needed 20 Oct 2006 Dennis Wright (hadr-man-V08-01-00) ---------------------------------------------- - G4HadronicProcess.hh, .cc: remove unused method GetDistanceToBoundary() 13 Mar 2006 Dennis Wright (hadr-man-V08-00-03) ---------------------------------------------- - G4HadronicProcess::ChooseAandZ() : throw fatal exception if Z > 92 is chosen - G4HadronicProcess::GeneralPostStepDoIt() : for suspended tracks, allow PostStep action to occur at end of step, but maintain suspended track status. Remove warning for suspended tracks. 17 Jan 2006 Dennis Wright (hadr-man-V08-00-02) ---------------------------------------------- - G4HadronicProcess.cc: add comments 12 Jan 2006 Dennis Wright for Mikhail Kossov (hadr-man-V08-00-01) ----------------------------------------------------------------- - G4EnergyRangeManager.cc: in method GetHadronicInteraction, case 2, print out some diagnostic information for exception of two fully overlapping models. 16 Dec 2005 Dennis Wright for Mikhail Kossov (hadr-man-V08-00-00) ----------------------------------------------------------------- - G4HadronicProcess.hh: in method ChooseHadronicInteraction, check G4HadronicInteractionCounter for error - if so print out - G4EnergyRangeManager.hh: make method GetHadronicInteractionCounter public - G4EnergyRangeManager.cc: in method GetHadronicInteraction, case 0, print out diagnostic information for exception when no model is found. 15 Dec 2005 Dennis Wright ------------------------- - G4HadronicProcess.cc: fixed bug # 611 - problems caused when hadronic interactions reset stopButAlive particle to Alive solution: In method FillTotalResult add lines } else if (aT.GetKineticEnergy() == 0) { theTotalResult->ProposeTrackStatus(fStopButAlive); } 18 Nov 2005 Dennis Wright (hadr-man-V07-01-00) ---------------------------------------------- - G4HadronicProcess.cc: migration