-------------------------------------------------------------------

     ==========================================================
     Geant4 - an Object-Oriented Toolkit for Physics Simulation
     ==========================================================

            History file for hadronic/models/cascade
            ----------------------------------------

This file should be used to summarize modifications introduced in the 
code and to keep track of all tags.

     ---------------------------------------------------------------
     * Please list in reverse chronological order (last date on top)
     ---------------------------------------------------------------

1 Dec 2009 Dennis Wright (hadr-casc-V09-02-11)
----------------------------------------------
- G4PionSampler, G4NucleonSampler: change loop variable in ctor from i to j
  in order to satisfy Windows compiler
 
11 Nov 2009 Dennis Wright (hadr-casc-V09-02-10)
-----------------------------------------------
- G4CascadParticle, G4InuclElementaryParticle: add integer argument to ctor
  to indicate which generation cascade particle belongs to.
  Also change G4NucleiModel and G4BertiniNucleiModel to use this.

 8 Oct 2009 Dennis Wright (hadr-casc-V09-02-09)
-----------------------------------------------
- G4PionSampler:  use charge exchange cross section for pi0-p, go back
   original Bertini pi0-p elastic partial cs.  Update pi0 total cross
   section accordingly.  Improve fits to pi-p partial cs and update 
   pi- total cross sections.
- G4NucleiModel: update pi- and pi0 total cross sections

24 Sep 2009 Dennis Wright (hadr-casc-V09-02-08)
-----------------------------------------------
- add class G4NucleonSampler which replaces old pp, pn, and nn partial and
    total cross sections also modify other classes which use them
- move large arrays which are instantiated at every call of frequently
    used methods.  They are now initialized once in constructors.
- G4CascadSpecialFunctions: put copy of total cross section method
    in G4NucleiModel, also remove unneeded energy scale arrays 
    (now replaced with a new one)
- G4CascadeInterface: move instantiation of various collider classes
    outside of loop, and put on stack instead of heap
- G4ElementaryParticleCollider: re-design to use G4NucleonSampler and
    remove instantiation of large arrays from within loops in code
- G4NucleiModel: remove instatiation of large arrays from with loops,
    add new total cross section sampling, remove use of all but one
    energy scale 

17 Sep 2009 Dennis Wright (hadr-casc-V09-02-07)
-----------------------------------------------
- G4PionSampler: remove large static arrays
- G4FinalStateSampler: remove static array pointer to G4 particle types
- G4ElementaryParticleCollider: clean up

4 Sep 2009 Dennis Wright (hadr-casc-V09-02-06)
----------------------------------------------
- add assignment operator to class G4CollisionOutput

31 Aug 2009 Dennis Wright (hadr-casc-V09-02-05)
-----------------------------------------------
- add class G4FinalStateSampler which was accidentally omitted from
  the previous tag

25 Aug 2009 Dennis Wright (hadr-casc-V09-02-04)
-----------------------------------------------
- correct bug in particle ordering in G4PionSampler
- clean up dead code in G4NucleiModel and G4ElementaryParticleCollider

20 Aug 2009 Dennis Wright (hadr-casc-V09-02-03)
-----------------------------------------------
- create class G4PionSampler: samples partial cross sections, multiplicities 
  and final state particle types required for pi+, pi- and pi0 scattering 
  within a nucleus.  This class uses re-evaluated pion partial cross sections
  and includes production of strange particle pairs. 
- G4CascadeSigmaPlusNChannel: correct sigma plus cross sections
- G4CascadSpecialFunctions:  move pion, kaon, hyperon total cross sections 
  to this class 
- G4ElementaryParticleCollider: re-write to use G4PionSampler class for 
  cross sections and multiplicities, remove method reChargering (now redundant)
  
15 Apr 2009 Dennis Wright (hadr-casc-V09-02-02)
-----------------------------------------------
- previous tag no longer used.  Bring hadr-casc-V09-02-00 back to
  HEAD and re-tag

21 Feb 2009 Dennis Wright (hadr-casc-V09-02-01)
-----------------------------------------------
- add printCrossSection method to G4CascadSpecialFunctions
- in GeElementaryParticleCollider, add high energy flag to distinguish
  "string-like" behavior
- G4IntraNucleiCascader.cc - allow secondaries from HE interaction to 
  leave nucleus without interacting
- G4NucleiModel - get high_energy_interaction flag value from G4ElementaryParticleCollider

11 Feb 2009 V.Ivanchenko (hadr-casc-V09-02-00)
-----------------------------------------------
- set absorption coefficient 1.0 instead of 0.2 inside
  G4CascadSpecialFunctions (D.Wright)

25 Nov 2008 Dennis Wright (hadr-casc-V09-01-10)
-----------------------------------------------
- fix multiplicity sampling in G4ElementaryParticleCollider::generateMultiplicity().
  Now partial cross sections are normalized to the total cross section instead 
  of just the sum of 2-body to 6-body final state cross sections.  Also fix 
  2-body cross sections above 7 GeV where they were too small.
  Fix the same cross sections which appear in G4CascadSpecialFunctions.cc

21 Nov 2008 Dennis Wright (hadr-casc-V09-01-09)
-----------------------------------------------
- add some comments to cross section tables in G4CascadSpecialFunctions.cc
  and G4ElementaryParticleCollider.cc

24 Oct 2008 Dennis Wright (hadr-casc-V09-01-08)
-----------------------------------------------
- replace GetAtomicMass() with GetNuclearMass() in cascade/G4InuclEvaporation
  and evaporation/G4BertiniEvaporation
- V. Ivantchenko added name to G4CascadeInterface ("Bertini Cascade")

17 Oct 2008 Dennis Wright (hadr-casc-V09-01-07)
-----------------------------------------------
- added Coulomb barrier plus barrier penetration in G4IntraNucleiCascader.cc

27 Sep 2008 Dennis Wright (hadr-casc-V09-01-06)
-----------------------------------------------
- Fixed 4.3 compiler warnings for G4InuclElementaryParticle.hh by providing
  initializers for particle type and mass
- Remove unused variables totscm, totlab in G4BigBanger.cc, 
  G4ElementaryParticleCollider.cc, and unused mom1 from G4InuclSpecialFunctions.cc

22 Sep 2008 Gabriele Cosmo (hadr-casc-V09-01-05)
------------------------------------------------
- Introduced simple wrapper class G4CascadeMomentum meant to replace usage
  of std::vector<double> in the cascade code, to reduce memory allocations.
  Courtesy of P.Elmer (princeton Univ.).
- Modified cascade code to make use of G4CascadeMomentum.

 3 Sep 2008 Dennis Wright (hadr-casc-V09-01-04)
-----------------------------------------------
- G4ElementaryParticleCollider.cc: in method generateMultiplicity, remove
  large_cut which increases multiplicity from 3 to 4 abruptly at 4 GeV
  and above.   This caused a sharp drop-off in the single pion spectra from 
  pH reactions.   The effect in heavier nuclei is small.
  
29 Jun 2008 Dennis Wright (hadr-casc-V09-01-03)
-----------------------------------------------
- add changes made by M. Paterno, J. Kowalkowski, and M. Fischler (FNAL)  
  to speed up code.  All G4Cascade***Channel classes and related code changed.

 5 May 2008 Dennis Wright (hadr-casc-V09-01-02)
-----------------------------------------------
- retag hadr-casc-V09-csbug as hadr-casc-V09-01-02

30 Apr 2008 Dennis Wright (hadr-casc-V09-csbug)
-----------------------------------------------
- fix cross section bug in G4CascadSpecialFunctions that returned
  low or zero total cross sections for pi-p, pi+n, np, and pi0 
  interactions

29 Apr 2008 Dennis Wright (hadr-casc-V09-01-01)
-----------------------------------------------
- bring tag hadr-casc-V09-01-coula to HEAD, make official tag

22 Apr 2008 Dennis Wright (hadr-casc-V09-01-param)
--------------------------------------------------
- changed pp, nn total cross section parameterization in 
  G4CascadSpecialFunctions to more closely reflect the PDG values (old one 
  was off by as much as a factor of 3.

3 Apr 2008 Dennis Wright (hadr-casc-V09-01-coula)
-------------------------------------------------
- removed Coulomb barrier from G4IntraNucleiCascader.cc (causes unphysical spike)

3 Apr 2008 Dennis Wright (hadr-casc-V09-01-coul)
------------------------------------------------
- Added Coulomb barrier in G4EquilibriumEvaporator.cc, G4IntraNucleiCascader.cc

17 Nov 2007 Dennis Wright (hadr-casc-V09-00-02)
-----------------------------------------------
- Fix angular distribution for nucleon-nucleon elastic scattering
  above 2.8 GeV, by modifying G4ElementaryParticleCollider::getElasticCase
 
25 May 2007 Dennis Wright for Aatos Heikkinen (hadr-casc-V08-03-00)
-------------------------------------------------------------------
- implemented interfaces for pre-equilibrium and equilbrium evaporation 
  models

04 May 2007 Aatos Heikkinen (hadr-casc-V08-02-00)
-------------------------------------------------

- Added protection in G4ElementaryParticleCollider against negative
  value to sqrt().

08 May 2006 Dennis Wright (hadr-casc-V08-00-00)
-----------------------------------------------

- cascade: remove G4BERTINI_KAON conditional assembly flags.  Files
  affected:
  G4ElementaryParticleCollider.hh, cc
  G4InuclElementaryParticle.hh
  G4NucleiModel.hh, cc
  G4CascadeInterface.cc
  G4IntraNucleiCascader.cc

- cascade (Pekka Kaitaniemi): G4ElasticCascadeInterface: derive
  from G4VIntraNuclearTransportModel instead of G4HadronElastic.
  Check for case when no elastic scattering occurs.  If so, 
  return original bullet and target.  

24 Nov 2005 Dennis Wright (hadr-casc-V07-01-00)
----------------------------------------------

- cascade (bertini-V07-01-00 by Aatos Heikkinen)
   elastic scattering interface added:
   G4ElasticCascadeInterface.hh, .cc added
   G4CascadeInterface.hh modified

