Files
geant4/source/processes/hadronic/management/History
T
2025-12-05 08:54:02 +01:00

1088 lines
47 KiB
Plaintext

# 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 <typeinfo>
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: <sstream> migration