$Id: History,v 1.430 2008/11/24 18:28:09 vnivanch Exp $
-------------------------------------------------------------------

     =========================================================
     Geant4 - an Object-Oriented Toolkit for Simulation in HEP
     =========================================================

                      Category History file
                      ---------------------
This file should be used by G4 developers and category coordinators
to briefly summarize all major modifications introduced in the code
and keep track of all category-tags.
It DOES NOT substitute the  CVS log-message one should put at every
committal in the CVS repository !

     ----------------------------------------------------------
     * Reverse chronological order (last date on top), please *
     ----------------------------------------------------------

24 November 08: V.Ivant (emstand-V09-01-45)
G4PSTARStopping, G4ASTARStopping - fixed non-initialized variable
   introduced in the previous tag

19 November 08: V.Ivant (emstand-V09-01-44)
G4WentzelVIModel - minor fix in lateral displacement

13 November 08: A. Schaelicke (emstand-V09-01-43)
G4eBremsstrahlung - activate LPM switch for high energy model
G4eBremsstrahlungRelModel - revised LPMconstant
G4eBremsstrahlungModel, G4eBremsstrahlungRelModel - (VI) use LPM flag
                                from the base class

13 November 08: V.Ivant (emstand-V09-01-42)
G4PSTARStopping - fixed SiO2 and TEFLON data
G4ASTARStopping - fixed GRAFITE data

29 October 08: V.Ivant (emstand-V09-01-41)
G4UrbanMscModel, G4UrbanMscModel2, G4UrbanMscModel90, G4WentzelVIModel 
  use StepStatus from preStepPoint to identify first step for a given track
  instaed of step number in order to address ATLAS problem of small step
  limits happen with suspended tracks

27 October 08: V.Ivant (emstand-V09-01-40)
G4UrbanMscModel2 - extra protection for "UseDistanceToBoundary" option
G4WentzelVIModel - fixed cross section factor for single scattering

23 October 08: V.Ivant (emstand-V09-01-39)
G4eCoulombScatteringModel and G4WentzelVIModel - added protection against
    precision loss in computation of cross section at high energy
G4UrbanMscModel2 - fixed screening parameter of the single scattering part
G4eMultipleScattering - set default RangeFactor = 0.04

22 October 08: V.Ivant (emstand-V09-01-38)
G4IonFluctuations - added G4UniversalFluctuation model, which are used for 
    high energy; added comments and cleanup
G4BetheBlochModel, G4BraggIonModel - take into account effective change 
    change over the step
G4hIonisation - switch off nuclear stopping for pi and K mesons   

20 October 08: V.Ivant (emstand-V09-01-37)
G4UrbanMscModel2 - return back ref-08 version
G4IronStopping, G4MaterialStopping, G4SimpleMaterialStopping moved to materials
G4eBremsstrahlungHEModel - temporary model is removed    

17 October 08: V.Ivant (emstand-V09-01-36)
G4UrbanMscModel2 - use logic of 9.1 version for step limitation
                   option "UseSafety" to fix CPU penalty in sampling
                   calorimeters (L.Urban)
G4UrbanMscModel2, G4UrbanMscModel, G4UrbanMscModel90 added protection
                   against sampling scattering angle with zero transport 
                   cross section   

15 October 08: V.Ivant (emstand-V09-01-35)
For all process classes set sub-types according to the enumeration
of G4EmProcessSubType.hh, improved cout 
G4UrbanMscModel2 - use screning function from G4eCoulombScatteringModel
G4eBremsstrahlung - set relativistic model above 1 GeV by default
G4eBremsstrahlungModel, G4eBremsstrahlungRelModel removed private member
   highEnergyTh and use access method to this threshold in the base class

21 September 08: V.Ivant (emstand-V09-01-34)
G4BetheBlochModel, G4BraggModel, G4BraggIonModel - simplified new methods
G4ionIonisation - use the same low-energy model for He ions and GenericIons
                  (like it was in 9.2beta)

16 September 08: V.Ivant (emstand-V09-01-33)
G4UrbanMscModel, G4UrbanMscModel2, G4UrbanMscModel90 - do not use
   string comparison when compute transport cross section, instead
   compare masses (G.Cosmo)

12 September 08: V.Ivant (emstand-V09-01-32)
Improved verbose output for processes
G4IonFluctuations - do not use Poisson sampling
G4BetheBlochModel, G4BraggModel, G4BraggIonModel - added methods
   GetParticleCharge, GetChargeSquareRatio, CorrectionsAlongStep
   needed for ions; define low and high energy limits inside the model
G4ionIonisation, G4hIonisation - remove InitialiseMassCharge and
                                 CorrectionsAlongStep methods;
                                 limits of kinetic energy for models 
                                 taken from the base class and from
                                 models; separate trietment He ions 

09 September 08: V.Ivant (emstand-V09-01-31)
G4WaterStopping, G4IronStopping, G4MaterialStopping, 
G4SimpleMaterialStopping - use mass number instead of atomic mass
                           (A.Lechner proposal)
G4eBremsstrahlungModel - Migdal constant set to the vavue of 
                         G4eBremsstrahlungRelModel (A.Schaelicke)

28 August 08: V.Ivant (emstand-V09-01-30)
G4WaterStopping, G4IronStopping - add method AddData to speeed up
     compillation and cleanup
G4WentzelVIModel - fixed bug in lateral displacement

26 August 08: A.Schaelicke 
G4eBremsstrahlungRelModel
   * define threshold energy for LPM effect
   * fix LPM calculation
   * define Thomas-fermi FF (ala Tsai)
   * some speed improvements

25 August 08: V.Ivant (emstand-V09-01-29)
G4MaterialStopping, G4SimpleMaterialStopping - fixed compillation
    problem at Windows by adding a new method AddData  

25 August 08: V.Ivant (emstand-V09-01-28)
23 August 08: V.Ivant (emstand-V09-01-27)
G4UrbanMscModel2 - fixed NaN in sampling of cosine theta for 50 GeV e-

22 August 08: V.Ivant (emstand-V09-01-26)
Added new classes with stopping data G4MaterialStopping, 
      G4SimpleMaterialStopping, G4IronStopping 

13 August 08: V.Ivant (emstand-V09-01-25)
G4eCoulombScatteringModel - added extra protection for precision lost in 
                            computation of recoil energy
G4eBremsstrahlungModel, G4eBremsstrahlungHEModel - define more precise names
                          of models

11 August 08: V.Ivant (emstand-V09-01-24)
G4IonFluctuations - do not perform loop over elements of material but use 
                    effetive Z
G4UrbanMscModel2 - bug fix in ComputeTruePathLengthLimit (L.Urban)

4 August 08: V.Ivant (emstand-V09-01-23)
G4eMultipleScattering - allowed to be applied for all changed particles
G4UrbanMscModel2 - changed name to "UrbanMscUni2"
G4eCoulombScatteringModel and G4WentzelVIModel - added protections for ions
G4WaterStopping - added extra data

31 July 08: V.Ivant (emstand-V09-01-22)
G4WentzelVIModel, G4eCoulombScatteringModel, G4CoulombScatteringModel -
           do not define min and max energy in constructor but use Set
           methods
G4MultipleScattering, G4eMultipleScattering, G4hMultipleScattering -
           added cout of model names
G4CoulombScattering - set angular limit of models by Set method

24 July 08: V.Ivant (emstand-V09-01-21)
G4UrbanMscModel2 - central part of scattering angle (theta0) and
           tail of the scattering angle distribution have been tuned
           using some e- and proton scattering data (L.Urban)

21 July 08: V.Ivant (emstand-V09-01-20)
G4eCoulombScatteringModel, G4CoulombScatteringModel  - added usage of 
         G4ElementSelector vector, do not use A in SetupTarget method
G4WentzelVIModel - do not use A in SetupTarget method
                            
16 June 08: V.Ivant (emstand-V09-01-19)
G4PAIPhotonModel - change model name
G4MultipleScattering71 - move inline virtual method to source to avoid 
                         compillation warning

14 June 08: V.Ivant (emstand-V09-01-18)
- G4CoulombScattering - added SetHEModelLimit method to provide more easy
                        initialisation

11 June 08: V.Ivant (emstand-V09-01-17)
- G4eCoulombScatteringModel - SelectIsotope method moved from the derived
    class and sampling of the recoil ion is performed
- G4CoulombScatteringModel - SelectIsotope method moved to the base class 
- G4PAIxSection - new functions for resonance and Rutherford collisions
- G4IonFluctuations - fixed index 
- G4ionIonisation - use G4BraggModel for low-energy ions heavier than He
- G4hIonisation - build separate tables for kaons to allow use hadron 
                  bremsstrahlung and pair production by kaons

2 June 08: V.Ivant (emstand-V09-01-16)
- G4IonFluctuations - added method SetParticleAndCharge 
- G4ionIonisation, G4ionGasIonisation - added pointer to G4IonFluctuations
             and use of method SetParticleAndCharge; compute nuclear
             stopping before adding corrections

20 May 08: V.Ivant (emstand-V09-01-15)
- G4IonFluctuations - summed fluctuation of components of a mixture instead
                      of computation for average Z
- G4BetheBlochModel - added projectile form-factor in computation of max
                      energy transfer and in sampling of the energy of e- 

13 May 08: A.Schaelicke
- G4eBremsstrahlungHEModel - new model, which is an extension of the standard 
                             bremsstrahlung model using a more sophisticated 
                             LPM approach

09 May 08: V.Ivant (emstand-V09-01-14)
- G4hMultipleScattering - added method AlongStepGetPhysicalInteractionLength
    in which for ions scaled energy normalized to one nucleon is used
- G4ionGasIonisation - fixed bug in update of the dynamic charge of 
                        an ion

21 April 08: V.Ivant (emstand-V09-01-13)
- G4WentzelVIModel - new model of multiple scattering
- G4WaterStopping - use spline 
- G4hMultipleScattering - do not build tables for particles with mass > GeV
- G4ionIonisation, G4ionGasIonisation - updated usage of high order 
                                        corrections
- G4CoulombScattering, G4eCoulombScatteringModel - use new parameter
                                                   polarAngleLimit

9 April 08: V.Ivant (emstand-V09-01-12)
- G4UrbanMscModel, G4UrbanMscModel90 - fixed assymetry in transverse
    displacement
- G4eCoulombScatteringModel - fixed bug for compounds

31 March 08: V.Ivant (emstand-V09-01-11)
- G4eCoulombScatteringModel - use SelectAtomRandomly method
- G4UrbanMscModel2 (L.Urban):
           - Simplification of step limitation in ComputeTruePathLengthLimit,
             + tlimitmin is the same for UseDistancetoBoundary and UseSafety       
           - Reorganization of SampleCosineTheta + new method SimpleScattering
             SimpleScattering is used if the relative energy loss is too big
             or theta0 is too big (see data members rellossmax, theta0max)
           - Tuning of the correction factor in ComputeTheta0 
           - exponent c of the 'tail' model function is not equal to 2 any more,
             value of c has been extracted from some e- scattering data
           - Step limitation in ComputeTruePathLengthLimit has been
             simplified further + some data members have been removed 

25 March 08: V.Ivant (emstand-V09-01-10)
- G4BetheBlochModel - use formfactor for sampling
- G4eCoulombScatteringModel - remove unsued array

25 March 08: V.Ivant (emstand-V09-01-09)
- G4ionIonisation - use default linLossLimit of 9.1
- G4hIonisation - use G4IonFluctuations at low energies
- G4IonFluctuations - fixed computation of corrections
- G4BetheBlochModel - finite size correction is taken into
  account both for delta-electron cross section and DEDX
- G4eCoulombScatteringModel - reorganize and cleanup computation
  of cross section

14 March 08: V.Ivant (emstand-V09-01-08)
- G4UrbanMscModel2 - L.Urban fix assymetry in lateral displacement
- G4UrbanMscModel90, G4MscModel71 - fixed warnings for gcc 4.3.0

10 March 08: V.Ivant (emstand-V09-01-07)
- G4MultipleScattering, G4hMultipleScattering, G4UrbanMscModel, 
  G4UrbanMscModel2, G4UrbanMscModel90 uses G4VMscModel interface
- G4eMultipleScattering - new process specialized for e+,e- 

06 March 08: V.Ivant (emstand-V09-01-06)
- G4UrbanMscModel2 is cloned from G4UrbanMscModel
- SubType for all processes is initialized

20 February 08: V.Ivant (emstand-V09-01-05)
G4eCoulombScatteringModel - speedup run-time computations using
  precomputed nuclear form-factors per element

14 February 08: V.Ivant (emstand-V09-01-04)
- G4ionIonisation, G4ionGasIonisation - use new method to compute 
  corrections: IonHighOrderCorrections
- G4BetheBlochModel - when computing dedx for ions use new 
  method IonBarkasCorrection
- G4IonFluctuations - added protection to the computation of
  the correction factor to dispersion which provide smooth 
  transition to small velocities of an ion

04 February 08: V.Ivant (emstand-V09-01-03)
- G4hIonisation, G4ionIonisation, G4ionGasIonisation - add extra 
   protections in computation of non-ionizing energy loss

04 February 08: V.Ivant (emstand-V09-01-02)
G4IonFluctuations - added protection in computation of dispersion 
  on allowing have a corrected dispersion below Bohr value

16 January 08: V.Ivant (emstand-V09-01-01)
G4PAIModel, G4PAIPhotonModel - added an extra protection guaranteed
 correct usage of the last bin of the table of energy transfers 

14 January 08: V.Ivant (emstand-V09-01-00)
- G4hIonisation, G4ionIonisation, G4ionGasIonisation - fixed
   computation of non-ionizing energy loss: at the last ionization step
   and at energies above 2 MeV for protons;
- G4eCoulombScatteringModel - use more safe numerical expression

07 December 07: V.Ivant (emstand-V09-00-22)
G4UrbanMscModel90 is created on base of G4UrbanMscModel of release 9.0
G4hMultipleScattering uses G4UrbanMscModel90

30 November 07: V.Ivant (emstand-V09-00-21)
G4UrbanMscModel - L.Urban fix sign of mean scattering angle for 
                  negatively changed particles

29 November 07: V.Ivant (emstand-V09-00-20)
G4UrbanMscModel - added extra protection in sampling of angle - no
                  sampling if mean angle below tausmall

28 November 07: V.Ivant (emstand-V09-00-19)
G4UrbanMscModel - L.Urban added extra protection in sampling of angle 
	          to avoid NaN 
G4eCoulombScatteringModel - added a protection against precision lost

22 November 07: V.Ivant (emstand-V09-00-18)
G4UrbanMscModel - change parameter tausmall to avoid lost of numerical 
                  precision and NaN values

20 November 07: V.Ivant (emstand-V09-00-17)
G4eCoulombScatteringModel - fixed crash happens at initialisation when 
                            several elements with the same Z are defined

11 November 07: V.Ivant (emstand-V09-00-16)
G4eCoulombScatteringModel - fixed computation of transport cross section

09 November 07: V.Ivant (emstand-V09-00-15)
- G4ionIonisation, G4ionGasIonisation, G4CoulombScatteringModel:
  fill NIEL energy deposit

29 October 07: V.Ivant (emstand-V09-00-14)
- G4UrbanMscModel (V.Ivanchenko) - fixed nan for heavy ions introduced 
	                           in previous tag

27 October 07: V.Ivant (emstand-V09-00-13)
- G4eCoulombScatteringModel, G4CoulombScatteringModel use precomputed
  Z^1/3 and log(A) values to speed up the code; revised nuclear size 
  correction

- G4UrbanMscModel (L.Urban):
         - changed initialisation for ions - parameters are protected
           from modification 
         - use sampleScattering method instead of SampleSecondaries
         - use different correction to Highland formula for different
           particle type (electron, muons, others)
         - tuning ComputeGeomPathLength in order to get better low 
           energy behavior for heavy particles (mu, hadrons)
         - small modification of theta0 in ComputeTheta0 (based on data)
         - some old inconsistency/bug has been cured in SampleCosineTheta
           now the variable prob is always in [0,1]

08 October 07: V.Ivant (emstand-V09-00-12)
- G4eCoulombScatteringModel, G4CoulombScatteringModel  
	- add cut dependence for scattering off electrons
        - reorganized protected methods 

02 October 07: V.Ivant (emstand-V09-00-11)
G4eplusAnnihilation - enable AtRest
G4PAIModel - general cleanup, fixed memory leak
G4PAIySection - a new class which substitutes G4PAIxSection,
                this class is free of memory leak

27 Septamber 07: V.Ivant (emstand-V09-00-10)
G4IonFluctuations - added dependence on cut in the formula of width on cut,
  reduces cut dependence of Bragg peak width for ions; use Fermi energy
  from G4Material
G4BohrFluctuations - minor cleanup

26 Septamber 07: V.Ivant (emstand-V09-00-09)
G4PAIphotonModel, G4PAIModel - fixed MaxSecondaryEnergy method for
  e- and e+ and use it for definition of max energy transfer;
  added control on all cout by fVerbose;  

28 August 07: V.Ivant (emstand-V09-00-08)
- G4eCoulombScatteringModel - fixed compilation warning 

15 August 07: V.Ivant (emstand-V09-00-07)
- G4eCoulombScatteringModel and G4CoulombScatteringModel - fixed bug in 
  computation of screening parameters in SampleSecondary method; 
  reorganized initialisation of kinematics and screening parameters;
  used Z(Z+1) factor to take into account scattering off e-

13 August 07: V.Ivant (emstand-V09-00-06)
- G4CoulombScatteringModel - fixed bug in kinematic of final state
- G4ionIonisation - add protected methods BetheBlochEnergyThreshold()
                    and NuclearStoppingFlag()
- G4ionGasIonisation - added complete implementation of the method
                       CorrectionsAlongStep() and do not call base class
- G4UrbanMscModel - tail of angular distribution modified; compare (L.Urban) 
                    safety with zero after lateral displacement (VI)

02 August 07: V.Ivant (emstand-V09-00-05)
-  G4UrbanMscModel - compare safety not with 0 but with tlimitminfix

31 July 07: V.Ivant (emstand-V09-00-04)
- G4CoulombScatteringModel - introduce energy threshold between models
   with and without nuclear recoil
- G4eCoulombScatteringModel - add array to cash screen parameters
- G4CoulombScatteringModel - fix bug in SamplingSecondaries

30 July 07: V.Ivant (emstand-V09-00-03)
30 July 07: L.Urban
-  G4UrbanMscModel - new, simpler model functions to describe the angular
   distribution; theta0 of this distribution has been changed too (now 
   the form of theta0 is the same as in the Highland formula, but the 
   parameter values are different for e+/e- and the other (heavy) particles;
   the change for the UseDistanseToBoundary case: tlimitmin = 10 stepmin;
   some cosmetics in ComputeTruePathLengthLimit.

28 July 07: V.Ivant (emstand-V09-00-02)
- G4eCoulombScatteringModel - updated screen radius model
- G4ionIonisation - remove obsolete method DefineMassCharge
- G4ionGasIonisation - new ion ionisation process with descrete ion charge and
                       no equilibrium between ion and media 
- G4BraggModel, G4BraggIonModel - more safe computation of scattering angle

16 July 07: V.Ivant (emstand-V09-00-01)
- G4CoulombScattering - update InitialiseProcess and PrintInfo methods 
  to ensure parameters of models change between runs and more clear cout
- G4eCoulombScatteringModel, G4CoulombScatteringModel - added nuclear size
  effect; added separate simulation of scattering on atomic electrons taking
  into account cuts; fixed cross section for compounds. 

13 July 07: V.Ivant (emstand-V09-00-00)
- G4UniversalFluctuation - added protection such that no sampling of
  fluctuations is done if mean energy loss at the step is below minimal
  excitation energy of the media. The fix is important for cases of
  low-dense gases and very small steps.
   
19 June 07: V.Ivant (emstand-V08-03-10)
- G4UrbanMscModel for skin > 0 use range instead of TrueStepLimit
  for computation of distance to boundary, this provides stable
  step limitation by GeomFactor (L.Urban)

11 May 07: V.Ivant (emstand-V08-03-09)
- G4MultipleScattering, G4hMultipleScattering - substitute name 
  "G4v71" -> "Minimal"

29 May 07:  V.Ivanchenko (emstand-V08-03-08)
- G4MultipleScattering, G4hMultipleScattering - fix initialisation
  of lateral displacement (bug introduced in previuos tag)
  
23 May 07:  V.Ivanchenko (emstand-V08-03-07)
- In all processes inherit from G4VEnergyLossProcess or G4VEmProcess 
  remove method SecondaryPostStep;
- G4eBremsstrahlung - remove definition of gamma threshold from constructor,
  define this parameter at initialisation of the process from 
  G4LossTableManager
- G4eeToTwoGammaModel use fParticleChange inside SampleSecondaries

22 May 07:  V.Ivanchenko (emstand-V08-03-06)
- G4VEmModel - changed interface of SampleSecondary method, it become 
  void, extra parameter std::vector<G4DynamicParticle*>*, all
  classes using or inhereting this interface are modified.
  About 5% speedup of EM shower simulation

21 May 07:  V.Ivanchenko (emstand-V08-03-05)
- G4ionIonisation - added InitialiseMassCharge method; remove
      GetMeanFreePath implementation

20 May 07:  V.Ivanchenko (emstand-V08-03-04)
- G4ionIonisation - added NuclearStopping flag

18 May 07:  V.Ivanchenko (emstand-V08-03-03)
- remove obsolete G4VeEnergyLoss and G4VhEnergyLoss 

18 May 07:  V.Ivanchenko (emstand-V08-03-02)
- G4MultipleScattering, G4hMultipleScattering - reorganized methods 
                                                for setting msc
                                                parameters
- G4UrbanMscModel - reorganized initialisation; use G4MscStepLimitType
                    enumerator to choose step limit algorithm
                                                

16 May 07:  V.Ivanchenko (emstand-V08-03-01)
- Remove obsolete classes G4GammaConversion52,
  G4PhotoElectricEffect52, G4eBremsstrahlung52, G4eIonisation52,
  G4eplusAnnihilation52, G4hIonisation52, G4MultipleScattering52
- G4ionIonisation - add data for stopping only for GenericIons

11 May 07:  G.Cosmo (emstand-V08-03-00)
- Use call to G4GeometryTolerance instead of kCarTolerance in PAI classes.
- Requires tag "global-V08-03-00" and related tag set.

10 May 07:  V.Ivanchenko (emstand-V08-02-16)
- G4UrbanMscModel - Fix bug - restore performance of EMV PhysicsLists

01 May 07:  V.Ivanchenko (emstand-V08-02-15)
- G4UrbanMscModel - L.Urban: optimisation of step limitation for skin>0
                             (about 5% CPU save)

24 April 07:  V.Ivanchenko (emstand-V08-02-14)
- G4MultipleScattering - use by default skin=0, because the current 
	                 interface to G4SafetyHelper does not allow 
                         it to provide a valid step in the case of 
                         magnetic field

23 April 07:  V.Ivanchenko (emstand-V08-02-13)
- G4UrbanMscModel - L.Urban: stepping near to boundaries has been
                    changed back in order to have small steps
                    with single scattering before+after boundary
                    for skin > 1.

12 April 07:  V.Ivanchenko
- G4UrbanMscModel - use unique G4SafetyHelper; clean up logic in
                    ComputeTruePathLengthLimit.

04 April 07: V.Ivanchenko (emstand-V08-02-12)
- G4UniversalFluctuation - L.Urban:correction of the algorithm
                           in order to have better width.
                           The width of the energy loss distribution
                           agree rather well with the data.

24 April 07:  V.Ivanchenko (emstand-V08-02-11a)
- G4MultipleScattering   - set default skin=0 for 8.3

22 March 07: V.Ivanchenko (emstand-V08-02-11)
- G4MultipleScattering   - use skin parameter from the base class 
- G4UniversalFluctuation - L.Urban: minor optimisation

20 March 07: V.Ivanchenko (emstand-V08-02-10)
- G4hMultipleScattering - remove SetSkin method, which is implemented
                          in the base class - allowing skin>0

- G4UniversalFluctuation- L.Urban: 'GLANDZ' part of the fluct. model
                      has been completely rewritten, there is no
                      separate very small loss regime any more.
                      The effect of this update is the far better
                      stability of the result against the changes
                      in the cut and changes in the stepsize.

- G4eBremsstrahlungModel - add reinitialisation of LPM flag (VI)

24 February 07: V.Ivanchenko (emstand-V08-02-09)
- G4MultipleScattering - remove SetSkin method, which is implemented
                         in the base class - allowing skin>0

03 March 07
- G4UrbanMscModel - single scattering allowed near to boundaries only,
                    not everywhere 

24 February 07: V.Ivanchenko (emstand-V08-02-08)
- G4UrbanMscModel - L.Urban step reduction before boundary for  
	            geomlimit<geombig only 

23 February 07: V.Ivanchenko (emstand-V08-02-07)
- G4hIonisation - remove dependence on K+ and K- particles
- G4BetheHeitlerModel - for any initial energy select atom of the material
                        on which conversion occur (needed for 
                        polarisation library)   
- G4UrbanMscModel - use tPathLength inside ComputeStep instead of geombig

15-Feb-07: 
- G4UrbanMscModel - L.Urban: small steps with single scattering before and
                    after boundary for skin > 1, for skin=0 and skin=1
                    it works as earlier

15 February 07: mma (emstand-V08-02-06)
- G4eBremsstrahlungModel: correct LPMconstant by factor 2, thanks to G. Depaola

13 February 07: V.Ivanchenko (emstand-V08-02-05)
12 February 07: 
- G4UrbanMscModel - L.Urban: stepping algorithm changed for skin=0,
                    now there are 3 stepping mode :
                    stepping a la 7.1 
                    skin=0 designed for high energy simulations with
                           or without magnetic field
                    skin=1 designed for 'precision' simulations 
                           without magnetic field (default)

06 February 07: V.Ivanchenko (emstand-V08-02-04)
- G4UrbanMscModel - L.Urban : fix in the single scattering code for heavy
                              particles, now the code can be used with
                              skin=1 e+/e- and for heavy particles as well.

- G4MultipleScattering - allow reinicialisation of model parameters between runs
- G4UrbanMscModel - V.Ivanchenko add extra protection inside SampleDisplacement
                                 move SetMscStepLimitation from header to source
                                 and add inside extra initialisation
                    L.Urban      add protection for case when energy loss 
                                 inactivated; fix computation of skindepth value 

29 January 07: V.Ivanchenko (emstand-V08-02-03)
- G4UrbanMscModel - V.Ivanchenko add protections agains NaN values
                    in two places: protection of lateral displacement,
                    sampling of theta when tau = 0;
                    add protection inside ComputeTrueStepLength for
                    the case very small (zero) geometry length 
                    true length set equal to geometry length  

19 January 07: V.Ivanchenko (emstand-V08-02-02)
- G4UrbanMscModel - L.Urban add protection inside lateral displacement
                    sampling against case TrueStepLength < GeomStepLength

18 January 07: V.Ivanchenko (emstand-V08-02-01)
- Fix crash in PrintInfo methods
- G4UrbanMscModel - remove Locate call to navigator
     
15 January 07: mma (emstand-V08-02-00)
- use SetEmModel(index) add SetFluctModel() from G4VEnergyLossProcess
  in eIonisation, hIonisation, ionIonisation, eBremstrahlung

04 Dec 06:  V.Ivanchenko (emstand-V08-01-16)
- G4UrbanMscModel - fix in ComputeTruePathLengthLimit stepmin=1.e-6*mm
  (L.Urban)

23 Nov 06:  V.Ivanchenko (emstand-V08-01-15)
- G4MultipleScattering - set default skin=1 only for e+-,
  for all other particles default skin=0 

20 Nov 06: V.Ivanchenko (emstand-V08-01-14)
20 Nov 06:
- G4UrbanMscModel - fix in the single scattering part of SampleCosineTheta,
  now there is single scattering just before boundary crossings (and not
  inside a volume)    

15 Nov 06: V.Ivanchenko (emstand-V08-01-13)
- G4UrbanMscModel - fix NaN inside SampleCosineTheta (L.Urban)

10 Nov 06: V.Ivanchenko (emstand-V08-01-12)
07 Nov 06:
- G4UrbanMscModel - some optimization in ComputeTruePathLengthLimit,
  fixes in ComputeGeomPathLength, SampleCosineTheta (L.Urban)

31 Oct 06: V.Ivanchenko (emstand-V08-01-11)
- G4UrbanMscModel is changed to work with new approach of parallel
                  navigation (j.Apostolakis)

26 Oct 06: V.Ivanchenko (emstand-V08-01-10)
- G4hMultipleScattering - new class configured for hadrons
- G4eCoulombScatteringModel - set cross section const below 1 keV

23 Oct 06: V.Ivanchenko (emstand-V08-01-09)
- G4BraggIonModel - reduce lowest energy for parameterisation to 0.25 keV
23 Oct 06: L.Urban
- G4MultipleScattering - parameter skin = 1 by default,
- G4UrbanMscModel - more effective safety update in SampleSecondaries,
  + come cosmetics.

20 Oct 06: V.Ivanchenko (emstand-V08-01-08)
- G4CoulombScatteringModel inherit from G4eCoulombScatteringModel,
  screening parameter computation is done in inline function 
- G4eeToTwoGammaModel - introduce member theGamma 

20 Oct 06: L.Urban cleanup of msc
- theta0 parameter for SampleCosineTheta is computed in a public 
  function ComputeTheta0;
- default value of skin = 0 (there is no small step with single scattering if
  skin <=0, and there are ~skin small steps if skin >0
- no z sampling in ComputeGeomPathLength by default
- correction in the single scattering part, allowing not only small angles now
- PostStep ComputeSafety(pos) is used

16 Oct 06: V.Ivanchenko (emstand-V08-01-07)
- Add extra protection to G4eplusAnnihilation52 
- Add warning to all processes 52 and 71 type 

16 Oct 06: L.Urban 
- new msc version (G4MultipleScattering, G4UrbanMscModel):
  -  Stepping has been modified:
     -  min. steplimit in 8.1: tlimitmin = max(lambda/25, 5 nanometer)
                  now        : tlimitmin = max(lambda/25, 1.01*stepmin)
           where stepmin ~ lambda elastic

     - possibility to have extreme small step(s) before boundary crossing
       this feature is not active by default;
       it can be activated by setting the data member "skin" to a
       non-negative value, steplimit = stepmin, if the distance to the boundary
       (in the original direction) is smaller than skin*stepmin;

     - the step restriction is weaker for particles with higher energy,
       i.e. bigger effective facrange value is used in this case
       in 8.0/8.1 this 'scaling' depends on Tkin, new version : 
       scaling depends on lambda, giving smaller material dependence

  - Angular distribution has been changed:

     - single/plural scattering for step <= stepmin
       (in this case t = z + no lateral displacement)

     - parameter theta0 has been (sligtly) modified

     - tail of the distribution has been modified, now the parameter 
       describing the tail is material (i.e. Z) dependent

14 Sept 06: mma (emstand-V08-01-06)  
- move the function SetModel() in G4VEmProcess
     
09 Sept 06: mma (emstand-V08-01-05)  
- add/modify the function SetModel() in G4PhotoElectric, G4ComptonScattering,
  G4GammaConversion, G4eplusAnnihilation

08 Sep 06: V.Ivanchenko (emstand-V08-01-04) 
- Bug fixed in PAI model concerning Tmax for electrons and positrons. Tmax 
  is defined  now for each particle independently (V.Grichine)

30 Aug 06: V.Ivanchenko (emstand-V08-01-03)
- Provide changings required for new processes/models with  polarization:
  G4KleinNishinaCompton - make some members protected
  G4MollerBhabhaModel - make some members protected
  G4eBremsstrahlungModel - reorganize SelectRandomAom method and make 
	some members protected

29 Aug 06: V.Ivanchenko (emstand-V08-01-02)
- Fix problem of positron zero incident energy in G4eeToTwoGammaModel
- Add extra protection inside G4BetheBlochModel

19 Aug 06: V.Ivanchenko (emstand-V08-01-01)
- Fix energy non-conservation in G4PAIModel for positrons (V.Grichine)

08 Aug 06: V.Ivanchenko (emstand-V08-01-00)
- Fix problems and add comments in the classes prototype Coulomb 
  elastic scattering:  G4CoulombScattering,  G4CoulombScatteringModel,
  G4eCoulombScatteringModel
- Set default limit on scattering angle to zero 

22 May 06: V.Ivanchenko (emstand-V08-00-25)
- G4eBremsstrahlung - use gammaThreshold from G4LossTableManager for
  more easier initialisation (CMS request)

17 May 06: V.Ivanchenko (emstand-V08-00-24)
- G4UrbanMscModel - L.Urban improve scattering in thin layers
- G4ASTARStopping, G4PSTARStopping improve comments  

15 May 06: V.Ivanchenko (emstand-V08-00-23)
- G4MollerBhabhaMOdel - fix MinEnergyCut

13 May 06: V.Ivanchenko (emstand-V08-00-22)
- G4WaterStopping - data for light ion stopping in water
- G4ionIonisation - add possibility top use user data on stopping power

11 May 06: L.Urban
- G4MultipleScattering : values of data members tkinlimit, factail 
  has been changed
- G4MscUrbanModel : new data members, changes in ComputeTruePathLengthLimit
  and in SampleCosineTheta,
  name of data member safety has been changed to presafety.

10 May 06: V.Ivanchenko (emstand-V08-00-21)
- G4MultipleScattering and G4MscUrbanModel - provide a possibility of
  reinitialisation of facrange and steppingAlgorithm parameters
  between runs; 
- Fix compilation warning at SUN;

04 May 06: V.Ivanchenko (emstand-V08-00-20)
- G4BetheBlochModel - use different formula for muons and hadrons for tmax (VI) 
- G4UrbanMscModel - fix SUN compilation warning (VI)

26 April 06: V.Ivanchenko (emstand-V08-00-19)
- G4PSTARStopping and G4ASTARStopping - new classes with NIST data on stopping
  powers are used by G4BraggModel and G4BraggIonModel
- G4hIonisation - spin/mass effect update

05 April 06: V.Ivanchenko (emstand-V08-00-18)
G4hIonisation - VI add mass and spin effects (important for pion ionisation)
G4SynchrotronRadiation is moved to xrays and GNUmakefile is modified accordingly
30 March 06 : V.Grichine
G4SynchrotronRadiation - bug fixed for unit polarisation in PostStepDoIt

28 March 06: V.Ivanchenko (emstand-V08-00-17)
- G4eBremsstrahlungModel - fix problem of energy loss calculation below 10 MeV
- G4KleinNishinaModel - remove upper energy limit to have a smooth cross section 
27 March 06 : V.Grichine, G4SynchrotronRadiation updated to set polarisation and 
              new methods for angular distribution  
- G4PAImodel and G4PAIPhotonMOdel fixes important for very low energy hadrons (VG)    

23 March 06: V.Ivanchenko (emstand-V08-00-16)
23 March 06: L.Urban
- bugfix in the SampleCosineThete method in G4UrbanMscModel


21 March 06 : V.Ivanchenko (emstand-V08-00-15)
- G4eBremsstrahlungModel - fix problem of initialisation in the case when 
  cuts are not defined (needed for Extrapolator and for unit tests)
- add prototypes of elastic Coulomb scattering - only for testing

13 March 06 : V.Ivanchenko (emstand-V08-00-14)
- G4UrbanMscModel - fix problem of non-initialised variable

09 March 06 : V.Ivanchenko (emstand-V08-00-13)
- G4MultipleScattering - Make steppling alg be active for ions by default
09 March 06 : V. Grichine
- update of G4SynchrotronRadiation methods for calculation of
  integral number spectrum

07 March 06 : V.Ivanchenko (emstand-V08-00-12)
- Remove G4MscModel
- Use G4UbbanModel for G4MultipleScattering

07 March 06 : V.Ivanchenko (emstand-V08-00-11)
- Fix bug in cross section in G4MscModel71 introduced in 08-00-10
- Create G4UrbanMscModel and optimize interface for msc models 
04 March 06 : V. Grichine
- update of G4SynchrotronRadiation to work in locally (in a volume)
  set magnetic field

17 February 06 : V.Ivanchenko (emstand-V08-00-10)
- G4MscModel and G4MscModel71 - compute really transport cross section, 
  not mfp
     
16 February 06 : L.Urban (emstand-V08-00-09)
- G4MultipleScattering: set function for data member factail, 
  z sampling by default
- G4MscModel: data members b, xsi removed, code cleaning,
  revised 'z' sampling and samplez = true by default   

15 February 06 : mma (emstand-V08-00-08)     
- added functions G4BraggModel::ComputeCrossSectionPerElectron/Atom()
- added functions G4BraggIonModel::ComputeCrossSectionPerElectron/Atom()
- remove obsolete G4SCProcessorStand (V.Ivanchenko)
   
11 February 06 : mma (emstand-V08-00-07)
- added functions G4BetheBlochModel::ComputeCrossSectionPerElectron/Atom()
- move G4LossTableManager::Instance()->EmCorrections() in constructor
     
08 February 06 : mma (emstand-V08-00-06)
- G4hIonisation52, G4eIonisation52, G4eBremsstrahlung52 : the functions
  ComputeCrossSectionPerAtom() and ComputeRestrictedMeandEdx() are made public.
- added test programs : CrossSectionStd.cc and CrossSectionV52.cc 
       
07 February 06 : mma
- added function  G4PEEffectModel::ComputeMeanFreePath()
- added functions G4eeToTwoGammaModel::ComputeCrossSectionPerElectron/Atom()
- added functions G4MollerBhabhaModel::ComputeCrossSectionPerElectron/Atom()
- added function  G4eBremsstrahlungModel::ComputeCrossSectionPerAtom()
     
02 February 06 : mma
- G4BetheHeitlerModel : remove InitialiseCrossSectionPerAtom()
    
31 January 06 : mma (emstand-V08-00-05)
- emstand-V08-00-04 + emstand_p01-V08-00-00     
     
30 January 06 : mma (emstand_p01-V08-00-00)
- build on top of geant4-08-00-ref-00
- G4PolarizedComptonScattering : return G4ComptonScattering52::PostStepDoIt()
 
26 January 05: V.Ivant (emstand-V08-00-04)
26 January 06: V. Grichine 
- fix nan value for delta direction for the case of zero cut 
     
25 January 05: mma (emstand-V08-00-03)
- G4eplusAnnihilation::AtRestDoIt() : remove cut dependance 

24 January 05: V.Ivant (emstand-V08-00-02)
24 January 06: V. Grichine 
- fVerbose for G4PAIModel providing hiding of some technical messages

20 January 05: V.Ivant (emstand-V08-00-01)
19 January 06: L.Urban
- G4MultipleScattering: value of facgeom changed (4 -> 3.5)
                        tlimitmin = facrange*50*micrometer
  G4MscModel: tail of angular distribution changed

10 January 05: V.Ivant (emstand-V08-00-00)
- substitute the method SetStepLimits by SetStepFunction
- move initialisation of default values to the constructor 

12 December 05: L.Urban (emstand-V07-01-30)

- G4MultipleScattering: data member rangecut removed, step limit
                        does not depend on cut any more
     
 8 December 05: mma (emstand-V07-01-29)
- G4MultipleScattering: world is now: navigator->GetWorldVolume()
     
 7 December 05: mma (emstand-V07-01-28)
- G4MultipleScattering: tlimitmin = facrange*rangecut(e-) for every particle
- rangecut computed using index instead of particle name
- volume name World removed
        
 5 December 05: mma (emstand-V07-01-27)
- particleChange.SetProposedKineticEnergy(0.) for killed particle in
  G4PEEffectModel, G4BetheHeilterModel, G4eplusAnnihilation.
  
			 
 1 December 05: V.Ivant (emstand-V07-01-26)
- G4MultipleScattering - add control on verbosity inside SetStepLimitation
                         and extend PrintInfo output

30 November 05: G.Cosmo (emstand-V07-01-25)
- Trivial fixes to G4PAIModel and G4PAIPhotonModel for support of
  CLHEP 2.0.X series.

29 November 05: V.Ivant (emstand-V07-01-24)
- Do not use G4Alpha inside G4BraggIonModel to avoid clash with 
  new particle design
     
16 November 05: mma (emstand-V07-01-23)
- replace RandBit() by G4UniformRand() in G4GammaConversion52 and
  G4BetheHeitlerModel
     
16 November 05: V. Ivanchenko (emstand-V07-01-22)
- G4eBremsstrahlungModel.cc: add electron deviation
     
13 November 05: L.urban (emstand-V07-01-21)
- G4MultipleScattering: some code cleaning, slightly better timing
  for sampling calorimeters (by 1 - 6 %, depending on cut and
  geometry)
- additionnal printing in G4PAIModel  

05 November 05: L.Urban
- G4MultipleScattering: minimum stepsize depends on cut in range
  tlimitmin = facrange*rangecut

27 October 05: mma (emstand-V07-01-20)
- G4MultipleScattering: stepLimitAlgorithm renamed to steppingAlgorithm;
  Function MscStepLimitation (G4bool algorithm, G4double facrange)
     
25 October 05: L.Urban
- G4MultipleScattering: data member prec renamed to stepLimitAlgorithm
  SetstepLimitAlgorithm(G4bool) triggers 'default' facrange
  values (true 0.02, false 0.2), but facrange can be set separately too.

23 October 05: L.Urban
- G4MultipleScattering: 'new' msc stepping + 7.1 like stepping
  together, one can choose between them using data members
  prec and facrange 

23 October 05: V.Ivant (emstand-V07-01-05b)
- a tag included fixes in G4BraggModel.cc and  G4BraggIonModel.cc
  on top of emstand-V07-01-05a; assumed for the patch-01

17 October 05: V.Ivant (emstand-V07-01-19)
- fix in G4BraggModel.cc in chemical formula correction

17 October 05: L.Urban (emstand-V07-01-18)
- G4UniversalFluctuation.cc: correction for very small loss
  to avoid 0 energy loss
- fix in G4BraggIonModel.cc in chemical formula correction

13 October 05: mma (emstand-V07-01-17)
- G4MultipleScattering.cc: remove SetFacrange(0.02) from InitialiseProcess

12 October 05: L.Urban (emstand-V07-01-16)
- G4MultipleScattering.cc: change in TruePathLengthLimit conditions,
  slightly better timing and much weaker cut dependence

10 October 05: V.Ivant (emstand-07-01-15)
- Fix non-initilised variable in G4MultipleScattering

7 October 05: L.Urban (emstand-V07-01-14)
- G4MultipleScattering.cc: bug fixed in TruePathLengthLimit.
  Must cowork with emutils-V07-01-05

6 October 05: L.Urban (emstand-V07-01-13)
- G4MultipleScattering: change in conditions limiting
  the step --> better timing with the same physics

4 October 05: L.Urban (emstand-V07-01-12)
- G4MultipleScattering: upper limit for facrange 0.2,
  facgeom =2 always, corr. in set function of facgeom

4 October 05: V.Ivant (emstand-V07-01-11)
- Move G4MultipleScattering80 and G4MscModel80 into
  G4MultipleScattering and G4MscModel   

3 October 05: L.Urban (emstand-V07-01-10)
- G4MultipleScattering80 : weaker step limitation above 
  Tkinlimit = 2 MeV for e+/e- (limit scaled with mass
  for other particles).Soft limit: facrange increases
  linearly with energy above Tkinlimit.
- G4UniversalFluctuation : cut dependence of the en.loss
  distribution has been reduced
     
2 October 05: mma (emstand-V07-01-09)
- G4eIonisation, G4hIonisation : SetStepLimits (0.2, 1*mm) + integral on
     
2 October 05: L.Urban
- conditions for step limit now are considered 'final' in
  G4MultipleScattering80.cc + code cleaning
- nuclear size correction has been removed from G4MscModel80,
  the correction is already included in the (theoretical)
  tabulated cross section values for Tkin > 10 MeV

16 September 05: L.Urban
- reordering of the conditions in TruePathLengthLimit of 
  G4MultipleScattering80.cc (It gives the same result than
  preceding version, but it is faster)

12 September 05: L.Urban
- new version of  G4MultipleScattering80, now the true pathlength
  limit is determined by the physics (facrange) + geometry 

2 September 05: V.Ivant. (emstand-V07-01-08)
- G4hIonisation : SetStepLimits (0.2, 0.1*mm) + integral off

2 September 05: V.Ivant. (emstand-V07-01-07)
- G4eIonisation : integral off

2 September 05: V.Ivant. (emstand-V07-01-06)
- G4eIonisation : SetStepLimits (0.2, 0.1*mm) 
- add G4MultipleScattering80 and G4MscModel80

2 September 05: V.Ivant. (emstand-V07-01-05)
- This tag is 7.1 + bug fixes
- G4eIonisation : SetStepLimits (1, 1*mm)
- G4hIonisation : SetStepLimits (0.2, 1*mm)
     
12 August 05: mma (emstand-V07-01-04)
- G4eIonisation and G4hIonisation : SetStepLimits (0.2, 0.1*mm)
     
11 August 05: Laszlo + mma (emstand-V07-01-03)
- add G4MultipleScattering80 and G4MscModel80
 
03 August 05: V.Ivant (emstand-V07-01-02)
- Fix intialisation G4eBremsstrahlungModel 

25 July 05: V.Ivant (emstand-V07-01-01)
- Fix in G4MollerBhabhaModel: add protection in calculation of recoil direction 
  for the case of complete energy transfer from e+ to e-

30 June 05: V.Ivant (emstand-V07-01-00)
24 May 05: V.Ivant (stand-V07-00-12)
- Change G4BaggIonModel and G4BaggModel in order to have parameterization
  of chemical effect be independent on method of material definition (by
  number of atoms or by mass fractions); 
- Increase number of bins for internal table of G4BetheHeitlerModel
- Add protection for (tmax < meanPot and pot0) in G4UniversalFluctuations

30 May 05: V.Ivant (stand-V07-00-11)
- Fix compilation warning at SUN in G4BaggIonModel; 

12 May 05: V.Ivant (stand-V07-00-10)
- Move G4BaggIonModel to updated interfaces; 
- cleanup

03 May 05: V.Ivant (stand-V07-00-09)
- move v70 processes (model interface) to be default and old to be 52
  (Compton, GammaConversion, PhotoElectricEffect, eplusAnnihilation)
     
03 May 05: mma (stand-V07-00-08)
- last tag before permutation v70 -> stand ->v52 for photon processes
- G4eplusAnnihilation70 : suppress Integral option
- G4PEEffectModel::SampleSecondaries() : correct for shell selection
- fabs -> std::abs

03 May 05: L.Urban
- G4UniversalFluctuation.cc : bugfix in the part of the Gaussian
  fluctuation + smearing for very small (~eV) loss

21 April 05: V.Ivant (stand-V07-00-07)
- Add G4PhotoElectricEffect70

19 April 05: V.Ivant (stand-V07-00-06)
- Add G4GammaConvertion70
- Cash pointer to navigator for G4MscModel

18 April 05: V.Ivant (stand-V07-00-05)
- Gamma processes migrate to G4ParticleChangeForGamma
- G4MultipleScattering and G4MscModel - optimise internal interfaces

13 April 05: V.Ivant (stand-V07-00-04)
- Remove PAIwithPhotonModel
- Migrade to updated interfaces of utils
- Use G4EmCorrections for hadrons/ions ionisation

18 March 05: V.Ivant (stand-V07-00-03)
- Add G4ComptonScattering70 and G4KleinNishinaModel (V.Ivanchenko)

11 March 05: V.Ivant (stand-V07-00-02)
- Add G4hIonisation70 and G4ionIonisation70 classes (V.Ivanchenko)

10 Feb 05: V.Ivant (stand-V07-00-01)
- Extra protection in G4PAIModel (V.Grichine)
     
07 Feb 05: mma (stand-V07-00-00)
- G4MultipleScattering.cc : make the Setsamplez function working
- G4UniversalFluctuation.hh and .cc : define problim = 5.e-3
                                      set minLoss = 10 eV

01 Dec 04: V.Ivant (stand-V06-02-14)
- Migration to cmath

01 Dec 04: V.Ivant (stand-V06-02-13)
- Move in the classes with real models from utils

30 Nov 04: V.Ivant (stand-V06-02-12)
- Remove G4PAIonisation.icc

29 Nov 04: V.Ivant (stand-V06-02-11)
- Restructure of standard subdirectories
- Cleanup GNUmakefile

17 Nov 04: V.Ivant (stand-V06-02-10)
- Fix problem of test27

11 Nov 04: V.Ivant (stand-V06-02-09)
- Migration to new algorithm to Store/Retrieve tables

04 Nov 04: V.Ivant (stand-V06-02-08)
- Add energy threshold for gamma of G4eBremsstrahlung, which will be used
  to kill e- and start new track in case of hard photon emmision
- Modified fluctuation model for G4PAIPhotonModel

25 Oct 04: V.Ivant (stand-V06-02-07)
- Migrate to new interfaces for ParticleChange

15 Oct 04: V.Ivant (stand-V06-02-06)
- Fix in PAI models - remove cut dependence of results (V.Grichine)
- Fix in G4ionIonisation - can use alpha tables

14 Oct 04: V.Ivant (stand-V06-02-05)
- Add new model for ion ionization G4BraggIonModel
- Add process and model classes for e+ annihilation to pi+pi-

30 Aug 04: V.Ivant (stand-V06-02-04)
- Remove obsolete process G4IonisationByLogicalVolume and 
  obsolete interfaces to particle cathegory

20 Aug 04: V.Ivant (stand-V06-02-03)
- Bug fix for e- ionisation in PAI model for small cuts (VG)
     
13 Aug 04: mma (stand-V06-02-02)
- in all discrete processes make ComputeCrossSection() public and virtual
- suppress icc files

12 Aug 04: V.Ivant (stand-V06-02-01)
- G4ionIonisation - effective charge is taken from util class (VI)
- G4eplusAnnihilation70 introduced (VI)
     
05 Aug 04: mma
- suppress G4eplusAnnihilation.icc, G4GammaConversionToMuons.icc
     
29 Jun 04: mma (stand-V06-02-00)
- G4ComptonScattering.cc : improve totalCrossSection parametrization below
  15 keV (Laszlo). 

07 Jun 04: G.Cosmo (stand-V06-01-03)
- G4PAIxSection.cc: fix in constructor for compilation error in VC++ 6.0
- Moved usage of statics in inline functions to non-inline to allow
  porting for DLLs on Windows. Modified files:
  G4PAIonisation[.icc.cc], G4SynchrotronRadiation[.hh.cc].

27 May 04: V.Ivant (stand-V06-01-02)
- Set integral regime to be default for G4ionIonisation and G4hIonisation
- Exclude G4PAIwithPhotons and G4InitXscPAI classes previously included
  by mistake but still under development ...

27 May 04: V.Ivant (stand-V06-01-01)
- (V.Grichine) Updated and optimise PAI model
- (L.Urban) Minor fix in G4eBremsstrahlung - units properly used

04 May 04: V.Ivant (stand-V06-01-00)
- (V.Grichine) Updated PAI model - use precise integrator, 
  add photon emission, add G4PAIwithPhotons and G4PAIxSection classes
     
15 Mar 04: mma (stand-V06-00-04)
     
10 Mar 04: V.Ivant
- constructor of all discrete processes: name, type

17 Feb 04: V.Ivant (stand-V06-00-03)
- merge the patch and development tag

06 Feb 04: V.Ivant (stand-a-V06-00-00)
- Tag for the patch include:
- Fix in G4PAIModel.cc
- Minor change in G4PAIonisation.cc 

03 Feb 04: V.Ivant (stand-V06-00-02)
- Fix in G4PAIModel.cc

30 Jan 04: V.Ivant (stand-V06-00-01)
- Minor change in G4PAIonisation.cc

22 Jan 04: V.Ivant (stand-V06-00-00)
- Migrade to G4ParticleChangeForLoss

11 Nov 03: V.Ivant (stand-V05-02-07)
- Substitute G4VEnergyLossSTD by G4VEnergyLossProcess
- For ions update ionisation

03 Nov 03: V.Ivant (stand-V05-02-06)
- Remove STD processes

24 Oct 03: V.Ivant (stand-V05-02-05)
-Update defults for processes
-Add PAI model (V.Grichine)

4 Oct 03: G.Cosmo (stand-V05-02-04)
- Modified GNUmakefiles:
  o added dependency to new module "geometry/navigation".
- Coworks with "geometry-V05-02-00" and "digits_hits-V05-02-00".

20 Sept 03: V.Ivant (stand-V05-02-03)
-Update energy intervals for ionisation models
-Update GNUmakefile

08 August 03: V.Ivant (stand-V05-02-02)
-Substitute standerd by STD, freezing old standard as 52

07 August 03: V.Ivant (stand-V05-02-01)
- Change defaults for STD processes
- Introduce Effective charge to G4ionIonisation

24 July 03: V.Ivant (stand-V05-02-00)
-Update model interface according utils-V05-02-00

25 June 03: G.Cosmo (stand-V05-01-05)
- G4PAIxSection.cc: trivial fixes on arguments to pow() for
  porting on .NET 7.1 compiler.

16 June 03: V.Ivant (stand-V05-01-04)
- ShortLived particles are not applicable for G4hIonisation

04 June 03: V.Ivant (stand-V05-01-03)
- Update STD initialisation

26 May 03: V.Ivant (stand-V05-01-02)
-Fix compilation warnings for pedantic compiler options

23 May 03: V.Ivant (stand-V05-01-01)
-Fix initialisation for STD: for integral Bohr fluctuations

15 May 03: V.Ivant (stand-V05-01-00)
- fix in SuprssionFunction in bremsstrahlung STD
- fix in dedx for e- ionisation STD for E<1keV
- set default number 120 bins for dedx table in G4eIonisation
- updated PAI model: include high energy transfers

29 Apr 03: V.Ivant (stand-V05-00-13)
- fix leak in restore tables

26 Apr 03: V.Ivant (stand-V05-00-12)
- fix store/restore tables

11 Apr 03: V.Ivant (stand-V05-00-11)
- fix problem of hadronic tests

11 Apr 03: V.Ivant (stand-V05-00-10)
- fix problem of MFP for PAI

08 Apr 03: V.Ivant (stand-V05-00-09)
- finalRange is region aware

07 Apr 03: V.Ivant (stand-V05-00-08)
- G4VhEnergyLoss, G4hIonisation - fix problem of several runs with
  different cuts

25 Mar 03: mma (stand-V05-00-07)
- G4Ve(h)EnergyLoss : add finalRangeRequested

10 mar 03: V.Ivant (stand-V05-00-06)
- use SubType for ions in G4hIonisation
- migrade to "cut per region" for G4PAIonisation

18 feb 03: V.Ivant (stand-V05-00-05)
- fix problems with lambda and range tables for STD hadrons/ions

13 feb 03: V.Ivant
- add names for all models
- make the set of model per region available
- make SubCutoff regime available per region

12 feb 03: G.Cosmo (stand-V05-00-04)
- Replaced call to RandPoisson::shoot() with G4Poisson(), more performant.
  Affected files: G4PAIonisation.cc, G4PAIxSection.cc.

05 feb 03: V.Ivant (stand-V05-00-03)
- Fix on warnings at SUN for STD classes
- Add Initialise method to STD classes to calculate PartialSumSigma
- Subsitute Material by MaterialCutsCouple for PostStep STD 

04 feb 03: mma
- AnnihiToMuPair.hh and cc : first implementation from Helmut Burkhardt.
  Cosmetic simplifications (mma)
  
24 jan 03: V.Ivant (stand-V05-00-02)
- Migration to "cut per region"

15 jan 03: mma 
- PhotoElectricEffect::ElecThetaDistribution : if gamma>5 --> costeta=1
 
13 jan 03: V.Ivant (stand-V05-00-01)
- Fix problem in cut control in G4PAIonisation.cc 

06 jan 03: V.Ivant (stand-V05-00-00)
- Update interfaces to STD classes in order to be ready to migrade 
  to "cut per region"

04 dec 02: V.Ivant (stand-V04-01-07)
- fix d-electron spectra for STD
     
20 nov 02: G.Cosmo (stand-V04-01-06)
- G4PAIonisation[.hh.icc.cc]: patched access to public static data.
  Added static accessor to be used in the kernel for inline functions
  to allow porting on Windows DLLs.

12 nov 02: V.Ivant (stand-V04-01-05)
- eBremsstrahlung::BuiltLossTable: fix of division by 0 (G4int nn)
 
28 oct 02: V.Ivant (stand-V04-01-04)
- fix compilation warnings for STD classes

17 oct 02: V.Ivant (stand-V04-01-03)
- few changes in all xSTD processes in connection with LossTableBuilder
    
15 oct 02: V.Ivant (stand-V04-01-02)
- redesign for a Model approach: files processNameSTD and processNameModel
     
14 oct 02: mma (stand-V04-01-01)
- G4PAIxSection and G4PAIonisation : put back on the HEAD the versions as they
  are in Geant4-04-01-ref-03, namely:
  G4PAIxSection  hh:1.7             cc:1.10
  G4PAIonisation hh:1.12  icc:1.10  cc:1.23
  
  G4PAIxSectionTest.cc:1.7   G4PAIdNdxTest.cc:1.1   GNUmakefile:1.1
      
07 aug 02: mma (stand-V04-01-00)
- GammaConversionToMuons::DoIt : missprint in OR conditions | instead of || 

10 jun 02: mma (stand-V04-00-13)
- bug fixed for stopping hadrons, V.Ivanchenko
     
04 jun 02: mma (stand-V04-00-12) 
- suppress the G4PAIonisation stuff which crash in TestEm8
  (back to stand-V04-00-10)
     
24 may 02: mma (stand-V04-00-11) 
- G4PAIonosation: production of delta-electrons > cut
- a bug fixed in G4PAIxSection.cc for GenericIon
- G4PAIxSection : new class members for transverse/longitudinal transfer
     
06 may 02: mma (stand-V04-00-10)
- compilation error in G4GammaConversionToMuons
     
29 apr 02: mma (stand-V04-00-09)
- G4PhotoElectric: Generate theta angle of the photoelectron from Sauter-Gravila
  distribution  
     
18 apr 02: mma (stand-V04-00-08)
- new process: G4GammaConversionToMuons
     
18 apr 02: mma (stand-V04-00-07)
- G4ComptonScattering: LowestEnergyLimit=1*keV
- G4PhotoElectric: Keep only Sandia crossSections. Remove BuildPhysicsTables.
  Simplify public interface.     
     
27 mar 02: V.Ivanchenko (stand-V04-00-06)
- G4hIonisation: Bug fix in scaling of lambda tabledelta-electrons > cut

26 mar 02: mma (stand-V04-00-05)
- G4eIonisation: change access to cuts in BuildLossTables (V.Ivanchenko)

22 mar 02: V. Grichine (stand-V04-00-04)
- modifications in G4PAIxSection allowing to get additional information on
  transverse and longitudinal excitations at atomic frequences.
     
21 mar 02: mma (stand-V04-00-03)
- G4GammaConversion::DoIt() correction of e+e- angular distribution (bug 363)
     
27 fev 02: mma (stand-V04-00-02)
- V.Ivanchenko remove the fix for GenericIons in G4VhEnergyLoss, G4hIonisation;

27 fev 02: mma (stand-V04-00-01)
- V.Ivanchenko fix G4VhEnergyLoss, G4hIonisation for GenericIons;
- G4VeEnergyLoss and G4VhEnergyLoss : error in TouchebleHandle - take from 
  PreStepPoint  
     
10 fev 02: mma (stand-V04-00-00)
- G4VeEnergyLoss and G4VhEnergyLoss : error in SetMindeltaCutInRange,
  was set in Energy !  
     
11 jan 02: mma
- gammaConversion::ComputeCrossSection(): correction of extrapolation below 
  EnergyLimit
        
10 jan 02: mma 
- photoEffect: rearrangement in the inlined functions
     
12 nov 01: mma (stand-V03-02-14)
- ParticleMass and Charge : local variables
- merge 11a + 13
- some cleanup in G4hEnergyLoss.hh and .cc 
     
29 oct 01: mma (stand-V03-02-13)
- all static functions no more inlined
     
23 oct 01: mma (stand-V03-02-12)
- cut per material: Ve(h)EnergyLoss, e(h)Ionisation, eBremsstrahlung,
  PAIEnergyLoss, PAIonisation, SynchrotronRadiation     

08 nov 01: G.Cosmo (stand-V03-02-11a)
- Introduced changes to G4VeEnergyLoss.cc and G4VhEnergyLoss.cc for reference
  counted touchables (R.Chytracek). Not included in "stand-V03-02-12" and
  "stand-V03-02-13".

23 oct 01: G.Cosmo (stand-V03-02-11)
- Minor fix to G4PAIxSection.cc, added inclusion of G4Material.hh to cope
  with latest updates included in materials-V03-02-04.

11 oct 01: mma (stand-V03-02-10)
- activate buildDEDXTable() in G4hIonisation::retrievePhysicsTable()

11 oct 01: G.Cosmo (stand-V03-02-09)
- G4VPAIenergyLoss.hh: removed redundant inclusion of RW wrapper header.
 
01 oct 01: mma (stand-V03-02-08)
- Phot,Comp,Conv,Annil: come back to BuildPhysicsTable(particleDefinition)
  invoked from the process manager
       
28 sep 01: mma (stand-V03-02-07)
- StorePhysicsTable(): ParticleName included in fileName.
  Completion of Store/Retrieve functions 
     
21 sep 01: mma (stand-V03-02-06)
- DoIt: fminimalEnergy = 1*eV in phot,comp,conv,anni     
     
19 sep 01: mma (stand-V03-02-05)
- come back to the previous ProcessNames
     
17 sep 01: mma (stand-V03-02-04)
- modifs in almost all classes for the migration of Materials to pure STL,
  but backward compatible with g4rw   

13 sep 01: L.Urban (stand-V03-02-03)
-G4VxEnergyLoss: min.delta cut is set as rcut/100 + some optimisation
    
11 sep 01: L.Urban (stand-V03-02-02)
- G4VhEnergyLoss+G4VeEnergyLoss: bugfix in subcutoff delta generation
     
29 aug 01: mma (stand-V03-02-01)
- G4hIonisation::PostStepDoIt grecj term for spin 1/2 (not 1)
     
13 aug 01: mma
- G4eIonisation: new function ComputeRestrictedMeandEdx()
- G4hIonisation: new function ComputeRestrictedMeandEdx() + 'cleanup'
    
10 aug 01: mma
- store/retrieve PhysicsTables implemented in photelec, compton, gamaconv,
  annihil, eIonisa, eBrems, mulscat, hIonisa      
     
17 jul 01: mma (stand-V03-02-00)
- suppression of the production threshold in phot,compt,conv,annih

11 jul 01: mma
- GammaConversion::PostStepDoIt : sample epsil->power (rndm,0.333333)

29 may 01: V.Ivanchenko 
- clean up againist Linux ANSI strict compilation mode.
     
27 mar 01 mma (stand-V03-00-05)
- commented out the printing of subcutoff energies at initialization
     
05 mar 01 mma (stand-V03-00-04)
- new subdirectory: integral
  migration of all G4I.. processes from muons, standard, utils into integral
       
22 feb 01: mma (stand-V03-00-03)
- G4PhotoElectricEffect.  DoIt: removed protection against low energy gamma,
    after correction in SandiaTable (materials-V03-00-05)
- G4EplusAnnihilation. PostStepDoIt: check with fStopButAlive instead of
   energy == 0. 

05 feb 01: G.Cosmo (stand-V03-00-02)
- Migration to STL for G4DataVector and G4OrderedTable.
  Modified files: G4SynchrotronRadiation.hh, G4IeBremsstrahlung.cc,
                  G4eBremsstrahlung.cc.

23 jan 01: mma (stand-V03-00-01)
- corrections in e/hEnergyLoss.cc: AlongStepDoIt L.Urban 23-01-01
  PostStep information is not used any more in AlongStepDoIt
  when generating sub-cutoff delta rays. (bug found by Babar)
     
16 jan 01: mma (stand-V03-00-00)
- small corrections in e/hEnergyLoss.cc L.Urban 11-01-01
  to ensure consistency between cut in range and step limitation
  due to energy loss (finalRange data member <-> cut in range)
- change in energy loss computation in eBrems.hh and .cc L.Urban 11-01-01
  parametrization of energy loss due to soft brems has been corrected,
  it was too big for big cut values.

17 Nov 00 mma : stand-V02-00-04
     
12 Nov 00 Corrections by Rui Curado da Silva (Polarized Compton)
- Sampling of Phi
- Depolarization probability 
     
08 Nov 00 mma (stand-V02-00-03)
-  eBrem
   07/08/00  new cross section/en.loss parametrisation, LPM flag , L.Urban
   21/09/00  corrections in the LPM implementation, L.Urban   
-  30/10/00  signature in GetLossWithFluct changed L.Urban

01 Nov 00 G.Cosmo (stand-V02-00-02)
-  Removed useless dependencies from GNUmakefile.
-  G4SynchrotronRadiation: added "const" qualifier to usage of
   const G4Field*. Co-works with tag "field-V02-00-00" and related ones
   from geometry.

11 Aug 00 mma
   tag stand-V02-00-01     

10 Aug 00 V.Ivanchenko
-  Change G4VhEnergyLoss.cc, G4VhEnergyLoss.hh, G4hIonisation.cc 
   in order to simulate energy losses of ions; correction to
   cross section for particles with spin 1 is inserted as well.
   Class G4ionIonisation is removed. 

03 Aug 00 Gabriele Cosmo
- Fixes for events' reproducibility:
  o G4GammaConversion.cc: changed usage of RandFlat::shootBit() to
    RandBit::shootBit().
  o G4VIeEnergyLoss.cc, G4VIhEnergyLoss.cc, G4PAIxSectionTest.cc:
    changed RandGauss to G4RandGauss.

31 Jul 00 Gonzalo Gracia
- G4IhIonisation.cc: initialisisation to zero of several  G4PhysicsTable*
  is included in constructor. Some tests were crashing 
  on NT because of the missing initialisation

18 jul 00: V.Ivanchenko (stand-V01-??)
- fix in G4VhEnergyLoss and G4ionIonisation in AlongStepDoIt 
  for particles with Charge^2 > 1; Reorganisation in
  GetConstrain for G4ionIonisation
     
22 jun 00: mma (stand-V01-01-05)
- stop very low energy photons in photo electric effect
- ElossMessenger moved --> G4VEnergyLoss
       
13 jun 00: mma (stand-V01-01-04)
- static pointer MinDeltaEnergy removed from destructor of
  G4VeEnergyLoss and G4VhEnergyLoss
     
07 jun 00: mma (stand-V01-01-03)
- virtual destructor for G4VEnergyLoss

24 may 00: mma (stand-V01-01-02)
- merge 'Plus' processes into standard
- minCut=10 KeV for brems
- corrections in ionisation (Laszlo)

       
27 apr 00 mma  (em-V01-01-01)
- G4endl (dec/iso)      
     
26 apr 00 mma  (em-V01-01-00)
- all EnergyLoss classes renamed G4V... 
  Most classes in standard and muons affected.
- G4Muls moved in utils
- bugs fixe in MuPairProduction  
- cowork with geant4-01-01-ref-02
     
02 mar 00 mma  (em-V01-00-00)
- new G4VEnergyLoss class and related structure
- cowork with geant4-01-00-ref-06
     
10 nov 99 mma  (em-V00-01-03)
- migration to STL: remove RWT hash dictionnary

14th June 1999  John Allison (em-01-00-05b)
- Muon corrections in G4MultipleScattering.cc, G4MuBremsstrahlung.cc
  and G4MuPairProduction.cc by Laszlo Urban, Pedro Arce.
  (Also in rocesses/photoleplon_hadron/src/G4MuNuclearInteraction.cc.)

5th June 1999  John Allison
- standard/GNUmakefile: Force non-optimised compliation of some
  files on HP with aCC: HP ANSI C++ B3910B A.01.15.

May 29, 1999: John Allison
- Added electromagnetic/lowenergy to GNUmakefile and
  electromagnetic/GNUmakefile..
