# Category emstand 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!

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

## 2024-06-06 V.Ivanchenko (emstand-V11-01-26)
- G4BetheHeitler5DModel - fixed computation of sinTheta

## 2024-05-28 V.Ivanchenko
- G4BetheHeitler5DModel - added checks on arguments of G4Exp in SampleSecondaries(..)
    method to avoid FPE problems in the case of -O3 optimisation

## 2024-01-23 V.Ivanchenko (emstand-V11-01-25)
- G4IonICRU73Data - fixed bug #2586 for the case if target material has
    an element with Z>92, improve debug printouts. In the Lindhard-Sorensen 
    model to compute dEdx the first try is to take it from ICRU73 or ICRU90 
    data, if this class return 0.0, then dEdx is computed from G4GenericIon 
    and effective charge.

## 2023-11-03 Ben Morgan (emstand-V11-01-24)
- Use "G4" prefixed version of EXPAT/ZLIB CMake variables

## 2023-10-19 V.Ivanchenko (emstand-V11-01-23)
- G4UrbanMscModel - (L. Urban) tuned step limit parameterisation for 
    the case of enabled optional algorithm of lateral displacement.
    The default tracking is not affected.

## 2023-10-07 V.Ivanchenko (emstand-V11-01-22)
- G4ASTARStopping, G4PSTARStopping, G4IonICRU73Data - use logarithmic search
    of bin for free vectors

## 2023-10-05 V.Ivanchenko (emstand-V11-01-21)
- G4UrbanMscModel - (L. Urban) optional method SampleDisplacementNew(..) is
    rewritten. This method is not used so far in any EM physics configurations
    by default but may be enabled via UI command and/or C++ interface

## 2023-10-02 V.Ivanchenko (emstand-V11-01-20)
- G4eBremsstrahlungRelModel - fixed potential division by zero if advanced
    compiler options are used, use G4Pow

## 2023-08-21 V.Ivanchenko (emstand-V11-01-19)
- G4SeltzerBergerModel - implement inheritance from G4VEmModel instead of 
    G4eBremsstrahlungRelModel, which means re-implementing common methods
    by cut and paster from G4eBremsstrahlungRelModel and removal LPM 
    computations; use std::applyOnce approach to initilize static data;
    upplied code format.
- G4eBremsstrahlungRelModel - use std::applyOncy approach to initilize
    static data. This MR is a continuation of implementing a general
    solution for initialisation of static data proposed by Stephan
    Hageboeck

## 2023-06-18 V.Ivanchenko (emstand-V11-01-18)
- G4BetheHeitlerModel, G4PairProductionRelModel, G4eBremsstrahlungRelModel,
  G4SeltzerBergerModel - further reorganized initialisation for #2543 and 
    considered neccesity to fix, Initilise(..) method described by Stephan
    Hageboeck, to have thread safe check if a model is the first 
    instance of the class, set lock and perform initilisation of all static
    data. Results of standard EM tests are unchanged.

## 2023-06-17 V.Ivanchenko (emstand-V11-01-17)
- G4UrbanMscModel - reduced number of re-computations of safety,
    results of EM tests unchanged

## 2023-06-13 V.Ivanchenko (emstand-V11-01-16)
- G4LindHardSorensenIonModel - do not try to use ICRU73 data for projectile Z>80

## 2023-06-05 V.Ivanchenko (emstand-V11-01-15)
- G4eBremsstrahlung, G4SeltzerBergerModel - do not change LPM flag at
    initialisation, do not repeat base class initialisation,
    improve code comments
- G4eBremsstrahlungRelModel - improved comments to the code

## 2023-06-04 V.Ivanchenko (emstand-V11-01-14)
- G4eBremsstrahlungRelModel - use LPM flag from G4EmParameters

## 2023-06-03 V.Ivanchenko (emstand-V11-01-13)
- G4BetheHeitlerModel, G4PairProductionRelModel, G4eBremsstrahlungRelModel,
  G4SeltzerBergerModel - reorganized initialisation to address bug report #2543.
    Initialisation of static element data is performamed only once for the first
    object independently on how many objects of this kind is created in a thread.
    Results of simulation are identical, only data race is excluded.

## 2023-05-09 V.Ivanchenko (emstand-V11-01-12)
- updated hadron/ion ionisation models; initialise stopping power data
  once: PSTAR and ICRU90 in G4BraggModel, ASTAR - in G4BraggIonModel, 
  ICRU73 and ICRU90 ion (Z>2) data in G4LindHardSorensenIonModel;
  G4BraggIonModel inherit from G4Bragg model; fixed stopping power
  of heavy ions at moderate energies

## 2023-05-03 V.Ivanchenko (emstand-V11-01-11)
- G4LindhardSorensenIonModel - use G4BraggModel for preliminary computation
    of DEDX at initialisation for G4GenericIon instead of G4BraggIonModel,
    which fix problem of low-energy ion tracking in 11.1ref04

## 2023-04-20 V.Ivanchenko (emstand-V11-01-10)
- G4BetheBlochModel, G4BraggIonModel, G4BraggModel,
  G4LindhardSorensenIonModel - updated effective charge of an ion at each
    step of simulation or at each call to G4EmCalculator
  G4WaterStopping, G4hIonisation - clean-up the code
  G4ionIonisation - do not use G4WaterStopping, code clean-up

## 2023-04-17 V.Ivanchenko (emstand-V11-01-09)
- G4BraggModel, G4BraggIonModel - use proton stopping data for for all ions
    except alpha, make datasets ponters static, address problem #2532
- G4LinhardSorensenModel - added extra protection and improved debug printout

## 2023-03-11 V.Ivanchenko (emstand-V11-01-08)
- G4UrbanMscModel - optimisation of the code without any change of the 
    results (L. Urban)

## 2023-03-05 V.Ivanchenko (emstand-V11-01-07)
- G4CoulombScattering - fixed typo
- G4PAIModel, G4PAIPhotModel, G4PAIModelData, G4PAIPhotData, G4PAIxSection,
  G4PAIySection - fixed problem in tests and code clean-up 

## 2023-03-04 V.Ivanchenko (emstand-V11-01-06)
- G4CoulombScattering - added extra constructor to address all existing 
    cases, for pure single scattering integral method type is changed 
    from fOnePeak to fEmDecreasing and spline interpolation is used. 
    This is needed for the fix of #2530.

## 2023-02-24 V.Ivanchenko (emstand-V11-01-05)
- G4WentzelOKandVIxSection - fix numeric instability for the extreme case of 
    very small kinetic energy (< 1 eV)

## 2023-02-21 V.Ivanchenko (emstand-V11-01-04)
- G4WentzelOKandVIxSection - fix #2530, improved comments
- G4CoulombScattering - added constructor with changed signature, which
    used flag "isCombined" instead of process name, improved initialisation
    and comments to the code
- G4eCoulombScatterinModel - improve initialisation and code comments

## 2023-02-14 V.Ivanchenko (emstand-V11-01-03)
- Preparation for the fix of the problem #2530 - fix apply single 
    scattering per region
- G4UrbanMscModel - check IsLocked() method before definition of 
    lateral displacement algorithm and positron correction;
    improve formatting
- G4CoulombScattering - added SetCombined(G4bool) method allowing
    user to configuer the process; improve formatting and initialisation
- G4eCoulombScatterinModel - improve formatting

## 2023-01-13 V.Ivanchenko (emstand-V11-01-02)
- G4ESTARStopping, G4GoudsmitSaundersonTable, G4GSPWACorrections, 
  G4GSMottCorrection, G4SeltzerBergerModel, G4SBBremTable, G4IonICRU73Data, 
  G4eDPWAElasticDCS - do not call std::getenv from model classes, instead
    use G4EmParameters, do not check if G4LEDATA environment variable
    defined correctly - this is responsibility of the global utility

## 2022-12-21 V.Ivanchenko (emstand-V11-01-01)
- G4GoudsmithSoundersonMscModel - fixed warning when build CMSSW

## 2022-12-11 V.Ivanchenko (emstand-V11-01-00)
- G4UrbanMscModel - added flag MscPositronCorrection

## 2022-11-23 Gabriele Cosmo (emstand-V11-00-21)
- Fixed more compilation warnings for implicit type conversions.

## 2022-11-18 Gabriele Cosmo (emstand-V11-00-20)
- Fixed compilation warnings for implicit type conversions on macOS/XCode 14.1.

## 2022-11-10 V.Ivanchenko (emstand-V11-00-19)
  Fixed stopping power problem identified by T. Toshita
- G4IonICRU73Data - fixed stopping power parameterisation below lowest
    energy point; apply unit factor to material vector and not to
    data inside each element vector; include debug printouts protected
    by verbosity; implement data tables for materials and not 
    material-cut-couples; provide non-zero dEdx for ions with Z > 80
- G4LindhardSorensenIonModel - fixed CorrectionAlongStep() computations
    at low energy

## 2022-10-18 V.Ivanchenko (emstand-V11-00-18)
- G4UrbanMscModel - L.Urban remove computation and use of rangecut for
    step limitation; this affect only EM option3 physics making 
    results more close to option4 and there is some CPU advantage

## 2022-10-18 V.Ivanchenko (emstand-V11-00-17)
- G4PEEffectFluoModel - implement usage PhotoeffectBelowKShell flag, allowing
    enable/disable photo-electron production below K-shell of an atom;
    by default this is enabled, so effect on results; if it will be disabled
    some CPU improvement may be expected
- G4BetheBlochModel, G4BraggIonModel, G4LindhardSorensenIonModel -
    use the same computation of effective charge and energy at a step
    inside CorrectionAlongStep(..) method; improved range of ions in the default
    EM physics configuration

## 2022-10-12 V.Ivanchenko (emstand-V11-00-16)
- G4hIonisation, G4ionIonisation - updated initialisation to be coherent with
    possible creation of combined DNA/standard Physics List: do not modify
    low energy limit for a model; define high energy limit considering
    high energy limit set in the Physics List and the mass of the particle

## 2022-10-07 V.Ivanchenko (emstand-V11-00-15)
- G4AtimaEnergyLossModel, G4BetheBlochModel, G4BraggIonModel,
  G4LindhardSorensenIonModel - do not set effective charge to the model
    of energy loss fluctuation inside CorrectionAlongStep(...) method,
    it is done by G4VEnergyLossProcess, this addresses problem #2495

## 2022-08-16 V.Ivanchenko (emstand-V11-00-14)
- G4UrbanMscModel - L.Urban optimized the code keeping algorithms unchaged

## 2022-05-24 V.Ivanchenko (emstand-V11-00-13)
- G4EmStandUtil - new utility class
- G4eIonisation, G4hIonisation, G4ionIonisation - added selection of the model
    of energy loss fluctuations using G4EmStandUtil

## 2022-05-24 V.Ivanchenko (emstand-V11-00-12)
- G4UrbanMscModel - L. Urban extended cache data with 5 variables for positrons,
    removed used headers, minor saving of instructions, results should be unchanged
- G4eBremsstrahlungRelModel, G4eBremParametrizedModel - cosmetic changes

## 2022-04-29 Daren Sawkey (emstand-V11-00-11)
- many files: run clang-tidy. Use keywords nullptr, default, auto; removed unneeded
  nullptr checks when delete-ing

## 2022-04-25 Ben Morgan (emstand-V11-00-10)
- Add missing dependencies

## 2022-04-14 V.Ivanchenko (emstand-V11-00-09)
- G4UrbanMscModel - L.Urban move safety computation before
    step limitation algorithms in order to save few instructions,
    which should not affect results; comments to the code are improved
- G4eBremsstrahlungRelModel, G4PairProductionRelModel - added headers 
    of G4Exp, G4Pow to source
- G4WentzelVIRelModel, G4WentzelOKandVIxSection, G4LindhardSorensenIonModel,
  G4ICRU49NuclearStoppingModel - use G4AutoLock
- G4PairProductionRelModel, G4eBremsstrahlungRelModel - added G4Log, 
    G4Exp headers
- G4BetheHeitler5DModel - do not instantiate G4MuonPlus, G4MuonMinus
    inside the model to allow usage of this class in physics lists 
    without muons

## 2022-04-07 V.Ivanchenko (emstand-V11-00-08)
- G4hIonisation - improved initialisation

## 2022-03-24 V.Ivanchenko (emstand-V11-00-07)
- G4eBremsstrahlung - improved initialisation

## 2022-03-07 V.Ivanchenko (emstand-V11-00-06)
- G4UrbanMscModel - L.Urban added two extra class members

## 2022-03-04 V.Ivanchenko (emstand-V11-00-05)
- G4UniversalFluctuation - removed unnecessary "if"

## 2022-02-18 V.Ivanchenko (emstand-V11-00-04)
- G4UniversalFluctuation, G4UrbanFluctuation - L.Urban use the same fw=4 and a0=42
    parameters of the model providing similar results for small steps or thin 
    layers to Geant4 10.7 version of fluctuations (fixed #2466) 

## 2022-02-14 V.Ivanchenko (emstand-V11-00-03)
- G4UrbanMscModel - minor optimisation of arithmetic
- G4UniversalFluctuation - introduced a new protected method SampleGlandz(..),
    which provides sampling of non-Gauss fluctuations; improved arithmetic;
    results are identical to the version of the release 11.0 
- G4UrbanFluctuation - reorganized version of fluctuation model from
    Geant4 10.7 in SampleGlandz(...) method
- G4LossFluctuationDummy - new class with zero fluctuations

## 2022-01-24 V.Ivanchenko (emstand-V11-00-02)
- G4UrbanMscModel - removed multiple initialisation of the cache data structure and
    possible data race

## 2022-01-08 V.Ivanchenko (emstand-V11-00-01)
- G4CoulombScattering - for single scattering used in restriced interval of large
    angles use fEmIncreasing type of cross section shape

## 2021-12-10 Ben Morgan (emstand-V11-00-00)
- Change to new Markdown History format

---

# History entries prior to 11.0

26 November 21: V.Ivanchenko  (emstand-V10-07-28)
- G4PairProductionRelModel - reduce upper limit of parameterisation x-section 
    from 80 to 30 GeV

09 November 21: V.Ivanchenko  (emstand-V10-07-27)
- G4ionIonisation - minor clean-up
- G4IonICRU73Data - new data structure for ion ionisation data
- G4LindhardSorensenIonModel - use G4BraggIonModel, G4BetheBlochModel 
    and G4IonICRU73Data, do not apply corrections at the last step of 
    an ion
- G4BraggIonModel, G4BetheBlochModel - do not apply corrections at 
    the last step of an ion

30 October 21: V.Ivanchenko  (emstand-V10-07-26)
- G4BetheBlochModel, G4BraggIonModel, G4ionIonisation - use ion 
    corrections for all ions except alpha in order to fix #2440

12 October 21: V.Ivanchenko  (emstand-V10-07-25)
- G4BetheBlochModel, G4BraggIonModel - improved usage of corrections
    to ion dedx, code clean-up
- G4ionIonisation - use G4WaterStopping with spline enabled
- G4alphaIonisation - removed as obsolete

07 Octoberber 21: V.Ivanchenko  (emstand-V10-07-24)
- G4UniversalFluctuations - Laszlo Urban substantially simplified
    sampling algorithm - less number of parameters, faster
    computations, results are in statistical agreement with the 
    previous version of the code

27 September 21: V.Ivanchenko  (emstand-V10-07-23)
- G4BraggIonModel, G4BetheBlochModel - fixed computation of
    dedx for alpha if ICRU90 data are used (problem #2414);
    improved method signatures; code clean-up.
- G4hIonisation, G4ionIonisation - He3 dedx derived from alpha dedx;
    pi, K, proton, pbar, GenericIon have own dedx and other tables;
    other hadrons derived from K, protons, pbar; ions derived
    from GenericIon
- G4ASTARStopping - improved method signatures
- CoulombScattering - disable spline

31 August 21: J.Hahnfeld (emstand-V10-07-22)
- G4PEEffectFluoModel - optimize cross section computation with
  reciprocals and Horners scheme

27 August 21: V.Ivanchenko  (emstand-V10-07-21)
- G4BraggModel, G4BraggIonModel - set lowest energy to 0.25 keV,
    added protection to limit cut value by the lowest energy
- G4LinhardSorensenIonModel, G4ICRU73QOModel - added protection 
    to limit cut value by the lowest energy
- G4BetheBlochModel - minor clean-up

26 August 21: V.Ivanchenko  (emstand-V10-07-20)
- G4BetheBlochModel - critical fix of dEdx for protons and alpha
    with scaled energy E>10 GeV for the case of use ICRU90 data.
    Should fix #2414

20 August 21: V.Ivanchenko  (emstand-V10-07-19)
- G4PAIModelData - use optimal methods to access G4PhysicsVector

04 August 21: A.Ribon  (emstand-V10-07-18)
- G4eplusAnnihilation : migrated to the new version of G4PhysicsModelCatalog

18 July 21: V.Ivanchenko  (emstand-V10-07-17)
- G4UniversalFluctuation, G4IonFluctuations, G4AtomaFluctuations,
  G4PAIModel, G4PAIPhotModel - updated according to change 
    of G4VEmFluctuationModel signature 

16 July 21: V.Ivanchenko  (emstand-V10-07-16)
- G4UniversalFluctuation - minor optimisation, code clean-up 
- G4UrbanMscModel - use random arrays instead flat() method
    to speed-up the code; use more const variables

10 July 21: V.Ivanchenko  (emstand-V10-07-15)
- G4BetheBlochModel, G4ESTARStopping, G4AtimaEnergyLossModel,
  G4LindhardSorensenIonModel - fixed Coverity warnings by 
    initialisation of all variables in class constructors
- G4UrbanMscModel - do not apply energy correction at small 
    steps below 1% of a particle range

24 May 21: J.Allison  (emstand-V10-07-14)
- G4eplusAnnihilation.cc:
  o Instantiate clip board only if Quantum Entanglement is requested.

23 May 21: V.Ivanchenko  (emstand-V10-07-13)
- G4PAIModelData, G4eplusTo2GammaOKVIModel - corrected 
    initialisation of physics vectors spline

15 May 21: V.Ivanchenko  (emstand-V10-07-12)
- G4CoulombScattering, G4eBremsstrahlung, G4eplusAnnihilation -
  updated set of flags for spline and the integral approach

10 May 21: V.Ivanchenko  (emstand-V10-07-11)
- G4BetheBlochModel - minor cleanup - more const variables 
- G4LindhardSorensenData - updated definition of spline

16 April 21: B.Morgan (emstand-V10-07-10)
- Migrate build to modular CMake API

02 May 21: J.Allison  (emstand-V10-07-09)
- G4eplusAnnihilation:
  o Introduce Quantum Entanglement. This is activated by
      /process/em/QuantumEntanglement.
  o For e+e- -> gamma gamma, the gammas are "tagged" here and must be
    "analysed" in a Compton scattering process - see, for example,
    G4LivermorePolarizedComptonModel. Otherwise entanglement has no
    effect even if activated.
  o Add data member:  G4int fEntanglementModelIndex;
    Entanglement uses AuxiliaryTrackInformation, so we need to pick up a
    unique model index. In the constructor:
      fEntanglementModelIndex
      = G4PhysicsModelCatalog::Register("G4GammaGammaEntanglement");
    Then in AtRestDoIt:
      t->SetAuxiliaryTrackInformation
      (fEntanglementModelIndex,new G4EntanglementAuxInfo(clipBoard));

28 April 21: V.Ivanchenko  (emstand-V10-07-08)
- G4BetheBlochModel, G4BraggIonModel, G4LindhardSorensenIonModel,
  G4ICRU73QOModel, G4AtimaIonIonisationModel - changed interface
    to ion ionisation corrections

24 April 21: V.Ivanchenko  (emstand-V10-07-07)
- clean-up models for 11.0

18 April 21: V.Ivanchenko  (emstand-V10-07-06)
- clean-up models for 11.0

10 April 21: V.Ivanchenko  (emstand-V10-07-05)
- clean-up energy loss models for 11.0

03 April 21: V.Ivanchenko  (emstand-V10-07-04)
- clean-up models for 11.0

30 March 21: V.Ivanchenko  (emstand-V10-07-03)
- clean-up ionisation processes

18 March 21: V.Ivanchenko  (emstand-V10-07-02)
- clean-up gamma processes

08 February 21: V.Ivanchenko  (emstand-V10-07-01)
- G4BohrFuluctuations, G4HeatedKleinNishinaCompton are removed

26 January 21:  V.Ivanchenko  (emstand-V10-07-00)
- G4BetheBlochModel, G4LindhardSorensenIonModel - fixed problem #2312,
    restore computation of maximum energy transfer from Geant4 10.4,
    affect only ultrarelativistic ions

11 November 20:  V.Ivanchenko  (emstand-V10-06-19)
- G4UrbanMscModel - restored parameterisation of step limit to
    the variant of emstand-V10-06-13

10 November 20:  V.Ivanchenko (emstand-V10-06-18)
- G4SauterGavrilaAngularDistribution, G4DeltaAngle - code clean-up

01 November 20:  V.Ivanchenko (emstand-V10-06-17)
- G4eplusTo3GammaOKVIModel, G4LindhardSorensenIonModel - fixed
  Coverity reports

11 October 20:  V.Ivanchenko  (emstand-V10-06-16)
- G4UrbanMscModel - L.Urban optimized parameterisation of limit
    on distance for e+- step

02 September 20:  V.Ivanchenko  (emstand-V10-06-15)
- G4UrbanMscModel - L.Urban changed computation of tlimit in
    the step limitation algorithm "UseDistanceToBoundary", only
    Opt3 EM physics is affected

29 August 20:  V.Ivanchenko   (emstand-V10-06-14)
- G4ICRU49NuclearStoppingModel, G4WentzelOKandVIxSection,
  G4WentzelVIRelModel, G4SeltzerBergerModel,
  G4LindhardSorensenIonModel.hh - improved usage of Mutex lock -
    it is defined inside one method with call to any other method;
    standard deletion of copy consructor and asignment operator

21 July 20:  V.Ivanchenko     (emstand-V10-06-13)
- G4UrbanMscModel - L.Urban changed parameterisation of backscattering
    parameter 'doverra'

02 July 20: M. Novak          (emstand-V10-06-12)
- G4eDPWAElasticDCS - a new class that handles the numerical Differential Cross
   Sections(DCS) for Coulomb scattering of e-/e+, computed by Dirac Partial Wave
   Analysis(DPWA) using ELSEPA
- G4eDPWACoulombScatteringModel - as new class that implements single Coulomb
   scattering model for e-/e+ based on the numerical DCS provided by the above
   G4eDPWAElasticDCS class

15 May 20:  V.Ivanchenko      (emstand-V10-06-11)
- G4UrbanMscModel - added e- range cut to the cache data structure; minor
    improvement of the code
- G4UniversalFluctuation - set value for a0 = 42 after optimisations

29 April 20: Gunter Folger    (emstand-V10-06-10)
- fix for clang10: G4PAIPhotModel.hh, G4PAIModel.hh : mark class final

26 April 20:  V.Ivanchenko    (emstand-V10-06-09)
- G4UrbanMscModel - L.Urban improved cache data structure

22 April 20:  V.Ivanchenko    (emstand-V10-06-08)
- G4LindhardSorensenData - fixed data table

07 April 20:  V.Ivanchenko    (emstand-V10-06-07)
- G4UniversalFluctuation - 10.6 value for a0=50 is returned, because
    test results with the previous tag does not improve all thin target tests
- G4eeToTwoGammaModel - code clean-up; added static flag, which identifies if
    electron motion is taken into account for sampling of acolliniarity,
    when annihilation is happen at rest; the model was introduced previously
    by John Allison, here we ensure, that by default no extra computation
    is performed; also removed extra printout at initialisation and extra
    data structure

02 April 20:  V.Ivanchenko    (emstand-V10-06-06)
- G4UniversalFluctuation - L.Urban propose to change a0 from
    50 to 40 in order to improve agreement with silicon data;
    minor C++ improvements are added in order to speed-up the code

25 March 20:  V.Ivanchenko    (emstand-V10-06-05)
- G4UniversalFluctuation - L.Urban propose to change nmaxCont from
    16 to 8 in order to speed-up simulation
- G4BetheHeitler5DModel - Li Zhuxin change  "final"  keyword by "override"
    for virtual methods

23 March 20:  J.Allison       (emstand-V10-06-04)
- G4eeToTwoGammaModel - introduce thermal model of positronium decay to two gammas:
  o In this model, the positronium acquires a mean kinetic energy
    on formation, which contributes to a small non-collinearity of
    the gammas, detectable and significant in PET. To activate this
    model, material->GetIonisation()->SetMeanEnergyPerIonPair(meanKE).
    A mean kinetic energy of 5 eV produces a projected acollinearity
    of about 0.5 degrees FWHM, as reported in K.Shibuya et al.,
    IFMBE Proceedings Vol. 14/3 1667 (2007).

09 March 20:  V.Ivanchenko    (emstand-V10-06-03)
- G4eplusAnnihilation - fixed problem seen in the rare case, when
    initial energy is null

03 March 20:  V.Ivanchenko    (emstand-V10-06-02)
- G4UrbanMscModel - removed Cache and introduced data struct
    precomputed at initialisation

25 February 20:  V.Ivanchenko (emstand-V10-06-01)
- G4UrbanMscModel - L.Urban changed tlimitmin computation for e-
    (for e+ kept unchanged) and changed parameterisation
    of stepmin; two private inline methods are added to reduce
    duplication of the code

07 December 19:  V.Ivanchenko (emstand-V10-06-00)
- G4BetheHeitler5DModel - added protection against negative
    argument of sqrt() due to precision lost

06 November 19:  V.Ivanchenko (emstand-V10-05-26)
- G4ESTARStopping, G4GSMottCorrection, G4GSPWACorrections,
  G4GoudsmitSaundersonTable, G4SBBremTable, G4SeltzerBergerModel
    minor cleanup: getenv -> std::getenv, use G4Element::GetZasInt()

05 November 19:  V.Ivanchenko (emstand-V10-05-25)
- G4UrbanMscModel - fixed problem introduced in emstand-V10-05-22
    which affect Opt3 EM physics

31 October 19:  V.Ivanchenko (emstand-V10-05-24)
- G4SeltzerBergerModel, G4ICRU49NuclearStoppingModel - cosmetic
    modifications - more safe initialisation in the MT mode

24 October 19:  I.Semeniouk (emstand-V10-05-23)
- G4BetheHeitler5DModel - new parameters set for muon (30% speed up),
    nuclear threshold calculation.

23 October 19:  V.Ivanchenko (emstand-V10-05-22)
- G4UrbanMscModel - (L.Urban) minor cleanup, should not affect results

18 October 19: I.Semeniouk (emstand-V10-05-21)
- G4BetheHeitler5DModel Add gamma conversion to mu+ mu- mode

16 October 19: D.Sawkey (emstand-V10-05-20)
- G4eplusAnnihilation: set secondary weight correctly using bias manager.

1 October 19:  V.Ivanchenko (emstand-V10-05-19)
- G4UrbanMscModel, G4GoudsmitSaundersonMscModel, G4WentzelVIModel -
    use lambdalimit and facsafety from the base class G4VMscModel

2 September 19:  M.Novak (emstand-V10-05-18)
- G4PairProductionRelModel, G4GammaConversion - The high energy model for e-/e+
    pair production has been extended down to threshold (2mc^2) such that it
    gives results (both x-section and final state) identical to those produced
    by the low energy (G4BetheHeitlerModel). Since this new version of the
    high energy model can describe e-/e+ pair production from threshold up to
    PeV (LPM effects are included) the G4BetheHeitlerModel was removed from the
    G4GammaConversion process.

29 August 19:  V.Ivanchenko (emstand-V10-05-17)
- G4UrbanMscModel - L.Urban modified step limit parameters:
    lambdalimit to 0.5 mm; facsafety to 0.67.

24 August 19:  V.Ivanchenko (emstand-V10-05-16)
- G4UrbanMscModel - L.Urban modified step limit parameters:
    lambdalimit from 1 mm to 0.4 mm; facsafety from 0.6 to 0.7.
- G4WentzelOKadriVIxSection, G4WentzelVIModel - return previous
    parameterisation of screening parameter

14 August 19:  V.Ivanchenko (emstand-V10-05-15)
- G4hCoulombScatteringModel, G4hCoulombScatteringModel - removed
    unused headers

25 July 19:  V.Ivanchenko (emstand-V10-05-14)
- G4SeltzerBergerModel - during initialisation data files uploaded
    only data for elements used in geometry, lazy initialisation
    of the data is also available (may be used in unit tests)

20 July 19:  V.Ivanchenko (emstand-V10-05-13)
- G4WentzelOKandVIxSection - modified parameterisation of screening
    parameter for e+-, which affect backscattering at low energies
    making results closer to data
- G4ScreeningMottCrossSection, G4eSingleCoulombScatteringModel
    optimized code and data structure; fixed floating point exception
    for low energy; use C++11 patterns

28 May 19:  V.Ivanchenko (emstand-V10-05-12)
- G4UrbanMscModel - L.Urban modified lateral displacement sampling

14 May 19:  V.Ivanchenko (emstand-V10-05-11)
- G4ScreeningMottCrossSection, G4KleinNishinaModel, G4SeltzerBergerModel,
  G4eSingleCoulombScatteringModel - use element->GetZasInt() interface
    in order to reduce number of double->int conversions in run time

10 April 19: I.Semeniouk (emstand-V10-05-10)
- G4BetheHeitler5DModel - replace local boost and rotation functions with
  CLHEP boost, boostZ, transform. One random generator flatArray call in
  sampling loop.

09 April 19:  V.Ivanchenko (emstand-V10-05-09)
- G4IonCoulombScatteringModel, G4eSingleCoulombScatteringModel,
  G4hCoulombScatteringModel - fixed kinematics for low kinetic energy
  of primary (problem #2152)

01 April 19: V.Ivanchenko (emstand-V10-05-08)
- G4eCoulombScatteringModel, G4WentzelOKandVIxSection - cleanup debug cout
  and initialisation

17 March 19: M.Novak (emstand-V10-05-07)
- G4BetheHeitler5DModel, G4BetheHeitlerModel, G4IonCoulombScatteringModel,
  G4PAIModel, G4PAIPhotModel, G4PairProductionRelModel, G4SeltzerBergerModel,
  G4XrayRayleighModel, G4eBremParametrizedModel, G4eBremsstrahlungRelModel,
  G4eCoulombScatteringModel, G4eSingleCoulombScatteringModel - make use of the
  new target atom selector (emutils-V10-05-07) that can reuse the already known
  log-energy value.

17 March 19: M.Novak (emstand-V10-05-06)
- G4UrbanMscModel, G4WentzelVIModel, G4GoudsmitSaundersonMscModel - make use of
  the new base class methods (emutils-V10-05-06), utilising the already known
  log-energy value, in case of dEdx, range and transport mean free path log -
  vector table accesses.

04 March 19:  V.Ivanchenko (emstand-V10-05-05)
- G4UrbanMscModel - L.Urban optimise step limitation for UseSafetyPlus
    and UseDistanceToBoundary; minor clean-up of step limit method

01 March 19:  V.Ivanchenko (emstand-V10-05-04)
- G4BetheBlochModel - code clean-up, removed tabs, some empty lines

27 February 19:  I.Semeniouk (emstand-V10-05-03)
- G4BetheHeitler5DModel - commint assert on negative bp1
- G4BetheHeitler5DModel - set x,y components in BoostG4LorentzVector
    method

07 February 19:  V.Ivanchenko (emstand-V10-05-02)
- G4eMultipleSacttering, G4hMultipleScattering - reduced
    length of printouts (fix problem #2105)

31 January 19:  V.Ivanchenko (emstand-V10-05-01)
- G4ModifiedTsai, G4SauterGavrilaAngularDistribution - reduced
    length of names for these generators (fix problem #2105)

15 January 19:  V.Ivanchenko (emstand-V10-05-00)
- G4eplusTo2GammaOKVIModel - fixed crash at initialisation

26 November 18:  V.Ivanchenko (emstand-V10-04-54)
- G4WentzelOKandVIxSection - fixed destructor

23 November 18:  V.Ivanchenko (emstand-V10-04-53)
- G4eplusTo2GammaOKVIModel - fixed trivial Coverity warning

07 November 18:  V.Ivanchenko (emstand-V10-04-52)
- G4BetheHeitler5DModel - (I.Semeniouk) added protection to boost
    computation responsible for numerical problem

05 November 18:  V.Ivanchenko (emstand-V10-04-51)
- G4eplusTo2GammaOKVIModel, G4eplusTo3GammaOKVIModel - make consistent
    definition of cross section for 2-gamma and 3-gamma models, use
    cuts for gamma in sampling of 3-gamma final state

02 November 18:  V.Ivanchenko (emstand-V10-04-50)
- G4SeltzerBergerModel, G4eBremsstrahlungRelModel - use by default
    G4ModifiedTsai generator instead of G4DipBustGenerator

26 October 18:  V.Ivanchenko (emstand-V10-04-49)
- G4BetheHeitler5DModel - (I.Semeniouk) cleaned up comments

24 October 18:  V.Ivanchenko (emstand-V10-04-48)
- G4BetheBlochModel, G4BraggIonModel - fixed usage of ICRU90 data

16 October 18: D.Sawkey (emstand-V10-04-47)
- G4eplusAnnihilation: set weights for directional splitting

10 October 18:  V.Ivanchenko (emstand-V10-04-46)
- G4UrbanMscModel - L.Urban added correction to get better
    backscattering at low energy
- G4LindhardSorensenData, G4LindhardSorensenIonModel - correction
    of dEdx computation

09 October 18: V.Ivanchenko (emstand-V10-04-45)
- G4eplusAnnihilation - back to emstand-V10-04-42

09 October 18: J.L. Rodriguez-Sanchez (emstand-V10-04-44)
- G4AtimaEnergyLossModel, G4AtimaFluctuations - fixed some errors
  and added some cosmetic modifications

02 October 18: D.Sawkey (emstand-V10-04-43)
- G4eplusAnnihilation - enable directional splitting

01 October 18: V.Ivanchenko (emstand-V10-04-42)
- G4BraggModel, G4BraggIonModel - minor optimisation
- G4LindhardSorensenData - limit parameterisation to interval
    of validity

27 September 18: V.Ivanchenko (emstand-V10-04-41)
- G4BraggModel, G4BraggIonModel, G4BetheBlochModel - added
    optional possibility to use ICRU90 data
- G4LindhardSorensenData - fixed interpolation of corrections for
    large energies
- G4LindhardSorensenIonModel, G4PSTARStopping - minor cleanup

21 September 18: V.Ivanchenko (emstand-V10-04-40)
- G4GammaConversion, G4eBremsstrahlung, G4hIonisation - use upper
    energy limit for low-energy model from PhysicsList instead of
    hard-coding values
- G4ionIonisation - apply correction to energy loss only to BetheBloch
    ionisation model
- G4ComptonScattering, G4PhotoElectricEffect, G4eIonisation,
  G4eplusAnnihilation, G4BetheBlochModel - improved comments

17 September 18: D. Sawkey (emstand-V10-04-39)
- G4CoulombScattering, G4eBremsstrahlung, G4[e,h]MultipleScattering,
  G4eplusAnnihilation, G4[e,h,ion,alpha]Ionisation, G4ComptonScattering,
  G4NuclearStopping, G4PhotoElectricEffect,
  : change auto-generated documentation format to rST

14 September 18: V.Ivanchenko (emstand-V10-04-38)
- G4eSingleCoulombScatteringModel - fixed problem #2090

31 August 18: V.Ivanchenko (emstand-V10-04-37)
- G4LindhardSorensenIonModel - fixed numerical problem in computation
    of correction

29 August 18: L.Urban (emstand-V10-04-36)
- G4UrbanMscModel - correction in order to get better backscattering
   for low energy

17 August 18: V.Ivanchenko (emstand-V10-04-35)
- G4ScreeningMottCrossSection, G4eSingleCoulombScatteringModel - added
    extra protections on argument of std::acos avoiding crash due to
    precision lost; clean-up and formats of code; one run time method
    is moved inlined; initialisation methods are moved to the source

17 August 18: V.Ivanchenko (emstand-V10-04-34)
17 August 18: V.Ivanchenko (emstand-V10-04-33)
- G4MottCoefficients class is removed because big inefficiency was reported
    by Grigory Latyshev
- G4MottData.hh static data file is created instead
- G4ScreeningMottCrossSection - use G4MottData and improved time consuming
  computations

12 August 18: M. Novak (emstand-V10-04-32)
- G4SBBremTable - fixed compiler warning
- G4eBremssrahlungRelModel, G4PairProductionRelModel - fixed possible out-of-
   bound vector access introduced in the previous tag.
- G4SeltzerBergerModel - added extra protections for data per Z access

10 August 18: M. Novak (emstand-V10-04-31)
- G4DipBustGenerator - optimisation, speedup: using G4Pow::A13
- G4SeltzerBergerModel - extended model with optional sampling tables for fast
  run time sampling of the emitted photon energy from the Seltzer-Berger scalled
  DCS instead of using the rejection. The sampling tables are hadled by the new
  G4SBBremTable class. There is a 40-60 % model speedup with some additional
  memory consumption.
- G4eBremsstrahlungRelModel - improved LPM function approximation, code cleanup
  and optimization.

27 July 18: V.Ivanchenko (emstand-V10-04-30)
- G4BetheHeitler5DModel - (I.Semeniouk) inverted CDF for X generation,
  code cleanup; bug fix: Polarization vector not normalized in coordinate
  transformation; removed empty lines
- G4BetheHeitlerModel, G4PairProductionRelModel - removed empty lines

25 June 18: V.Ivanchenko (emstand-V10-04-29)
- G4LindhardSorensenData - fixed Coverity warnings on read beyond
    the array boundary

15 June 18: V.Ivanchenko (emstand-V10-04-28)
- G4AtimaEnergyLossModel, G4LindhardSorensenData - fixed Coverity warnings
    on read/write out of the array boundary

11 June 18: M.Novak (emstand-V10-04-27)
- G4PairProductionRelModel, G4BetheHeitler5DModel - fixed computation of cross
  section in the new version of the high energy model. Fixed triplet production
  below treshold in the 5D model by I. Semeniouk.

11 June 18: V.Ivanchenko (emstand-V10-04-26)
- G4AtimaEnergyLossModel, G4AtimaFluctuations - fixed data handling in the
  new ion ionisation, which were identified by Coverity code analysis

04 June 18: M. Novak (emstand-V10-04-25)
- G4BetheHeitler5DModel - optimization of the final state sampling (M. Novak)

28 May 18: M. Novak (emstand-V10-04-24)
- G4GoudsmitSaundersonTable - fix gcc-8 warnings regarding.

28 May 18: M. Novak (emstand-V10-04-23)
- G4BetheHeitlerModel, G4PairProductionRelModel, G4BetheHeitler5DModel - new
    versions of G4BetheHeitlerModel, G4PairProductionRelModel with improved
    screening function approximation, improved LPM function apporximation,
    efficiency, documentation and cleanup. Corrected call to selecting target
    atom in final state sampling. Follow up changes in the derived
    G4BetheHeitler5DModel.

23 May 18: V.Ivanchenko (emstand-V10-04-22)
- G4BetheHeitlerModel - use G4ModifiedTsai angular generator

22 May 18: V.Ivanchenko (emstand-V10-04-21)
- G4DipBustGenerator, G4ModifiedTsai - implement new interface for
    directions of e+e- pair
- G4PairProductionRelModel - use G4ModifiedTsai angular generator
- G4BetheHeitlerModel - use G4DipBustGenerator angular generator
- G4UrbanMscModel - use more fast lateral displacement by default

04 May 18: V.Ivanchenko (emstand-V10-04-20)
- G4AtimaEnergyLossModel, G4AtimaFluctuations - new ion ionisation
    model developed by J.L.R. Sanchez
- G4WentzelOKandVIxSection - improved Mott corrections to e+-
- G4LindhardSorensenData - fixed Coverity warning

02 May 18: V.Ivanchenko (emstand-V10-04-17)
- G4ScreeningMottCrossSection - added extra method for more effective
    computation of the Mott correction
- G4WentzelOKandVIxSection - added Mott corrections to e+-
- G4NISTStoppingData - cleanup header

24 April 18: V.Ivanchenko (emstand-V10-04-16)
- G4LindhardSorensenIonModel,G4LindhardSorensenData - new relativistic ion
    ionisation model
- G4BetheBlochModel - minor cleanup

18 April 18: V.Ivanchenko (emstand-V10-04-15)
- G4LindhardSorensenIonModel - new ion ionisation model
- G4UrbanMscModel - use second type of parameterisation in all EM physics
- G4BetheHeitler5DModel - D.Bernard added detailed description of the model

05 April 18: V.Ivanchenko (emstand-V10-04-14)
- G4BetheHeitler5DModel - fixed Coverity warning

01 April 18: V.Ivanchenko (emstand-V10-04-13)
- G4eplusAnnihilation - moved sampling of final state from AtRestDoIt()
    method to the SamplingSecondaries() model of a model
- G4eeToTwoGammaModel - cleanup
- G4eplusTo2GammaOKVIModel, G4eplusTo3GammaOKVIModel - new models

23 March 18: V.Ivanchenko (emstand-V10-04-12)
- G4BetheHeitlerModel, G4BetheHeitler5DModel - Igor Semeniouk cleanup the code

07 March 18: V.Ivanchenko (emstand-V10-04-11)
07 March 18: V.Ivanchenko (emstand-V10-04-09)
- G4BetheBlochModel - fixed non-reproducibility introduced in early tag

05 March 18: V.Ivanchenko (emstand-V10-04-08)
05 March 18: V.Ivanchenko (emstand-V10-04-05)
- G4UrbanMscModel - (L.Urban) new lateral displacement algorithm
- G4BetheHeitlerModel, G4BetheHeitler5DModel - Igor Semeniouk and Denis Bernard
    added new 5D model

09 February 18: V.Ivanchenko (emstand-V10-04-04)
- G4eBremsstrahlungRelModel, G4PairProductionRelModel, G4PAIySection,
  G4PAIxSection, G4ICRU73QOModel - inline method which use static constants
    are moved to source, improved formatting of the code

02 February 18: M.Novak (emstand-V10-04-03)
- G4GoudsmitSaundersonMscModel - implemented interface method for macroscopic
  1st trans. x-section computation CrossSectionPerVolume (used only for testing)
- G4GSMottCorrection, G4GSPWACorrections - fixed initialization of 1st moment
  correction factor

21 December 17: V.Ivanchenko (emstand-V10-04-02)
- G4WentzelOKandVIxSection - fixed formfactor for proton
- G4BetheBlochModel - use formfactor for projectile ion in
  formulation of NIM A 488 (2002) 282; this is needed further
  evalution, so the tag is not proposed

09 December 17: V.Ivanchenko (emstand-V10-04-01)
- G4PairProductionRelModel - fixed misuse of G4Pow (A13(..) should
    be used instead of Z13(..)), add initialisation of an element
    cache before sampling of final state (partly fix problem #2017)

08 November 17: D.Sawkey (emstand-V10-03-51)
- G4CoulombScattering, G4eMultipleScattering, G4hMultipleScattering
    modify ProcessDescription text

06 November 17: M.Novak (emstand-V10-03-50)
- G4GoudsmitSaundersonTable - fix scattering power correction table

03 November 17: V.Ivanchenko (emstand-V10-03-49)
- G4UrbanMscModel - renamed displacementFlag to dispAlg96, if its
    value "true" then the old lateral displacment algorithm is used,
    else a new one is applied. This change was needed to avoid
    missunderstanding of the flag effect

02 November 17: V.Ivanchenko (emstand-V10-03-48)
- G4CoulombScattering - improved printout

31 October 17: D.Sawkey (emstand-V10-03-47)
- all process files: G4ComptonScattering, G4CoulombScattering,
   G4GammaConversion, G4NuclearStopping, G4PhotoElectricEffect,
   G4alphaIonisation, G4eBremsstrahlung, G4eIonisation,
   G4eMultipleScattering, G4eplusAnnihilation, G4hIonisation,
   G4hMultipleScattering, G4ionIonisation: modify ProcessDescription

30 October 17: M.Novak (emstand-V10-03-46)
- G4GSPWACorrections - fix data read problem

30 October 17: M.Novak (emstand-V10-03-45)
- G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable,
  G4GSMottCorrection, G4GSPWACorrections, G4PWATotalXsecTable
    - new form of PWA corrections in the GS MSC model that is
      active now both for e- and e+ (the G4PWATotalXsecTable
      class is replaced with G4GSPWACorrections)
    - improved scattering power correction computation in case
      Mott-correction
    - changed MSC step limit flag conventions in the GS model

25 October 17: V.Ivanchenko (emstand-V10-03-44)
- G4NuclearStopping - use activation limit for energy per nucleon

19 October 17: D.Sawkey (emstand-V10-03-43)
- G4alphaIonisation, G4ComptonScattering, G4CoulombScattering,
  G4eBremsstrahlung, G4eIonisation, G4eMultipleScattering,
  G4ePlusAnnihilation, G4GammaConversion, G4hIonisation,
  G4hMultipleScattering, G4ionIonisation, G4NuclearStopping,
  G4PhotoElectricEffect: add dummy ProcessDescription

16 October 17: V.Ivanchenko (emstand-V10-03-42)
- G4BetheHeitlerModel, G4PairProductionRelModel - use G4Pow in both
    classes instead of G4NistManager for fast math computations

12 October 17: V.Ivanchenko (emstand-V10-03-41)
- G4CoulombScattering, G4eBremsstrahlung, G4eMultipleScattering,
  G4hMultipleScattering, G4eplusAnnihilation, G4ionIonisation
    switched from ProcessDescription to StreamProcessInfo

11 October 17: V.Ivanchenko (emstand-V10-03-40)
- G4NuclearStopping - fixed initialisation
- G4CoulombScattering - improved initialisation printout

10 October 17: V.Ivanchenko (emstand-V10-03-39)
- G4UrbanMscModel - use flag of lateral displacement algorithm,
    cleanup inline methods

09 October 17: V.Ivanchenko (emstand-V10-03-38)
- G4ICRU49NuclearStoppingModel, G4PAIxSection, G4PEEffectFluoModel,
  G4alphaIonisation, G4UrbanMscModel - fabs substituted by std::abs
  G4UrbanMscModel - minor cleanup of the code

27 September 17: L.Urban (emstand-V10-03-36)
- G4UniversalFluctuation - added correction for small cuts

22 September 17: M.Novak (emstand-V10-03-35)
- G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable,
  G4GSMottCorrection - further improvments to GS Mott-correction.

20 September 17: V.Ivanchenko (emstand-V10-03-34)
- G4UniversalFluctuation2017 - removed temporary class
- G4PAIModel. G4PAIPhotModel - MinEnergyCut() is set to 12.5 eV, because
    of results of D. Pfeiffer study of gaseous detector simulations

18 September 17: V.Ivanchenko (emstand-V10-03-33)
- G4UniversalFluctuation - improved sampling for thin layers

16 September 17: V.Ivanchenko (emstand-V10-03-30)
- G4UniversalFluctuation - L.Urban added an extra parameter in the model

28 August 17: G,Cosmo (emstand-V10-03-29)
- Correction to GNUmakefile to add optional include path to internal zlib
  module.

27 August 17: M.Novak (emstand-V10-03-28)
- G4GSMottCorrection - remove forgotten debug printout.

27 August 17: M.Novak (emstand-V10-03-27)
- G4GSMottCorrection - fix element symbol problem in file names.

25 August 17: M.Novak (emstand-V10-03-26)
- G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable - added
    option to apply Mott-correction to the default GS model. The
    new class G4GSMottCorrection handles the Mott-correction to the
    angular distributions as well as correction factors to elastic,
    mfp, first and second moments.

24 August 17: V.Ivanchenko (emstand-V10-03-25)
- G4PAIModel. G4PAIPhotModel - added implementation of virtual
    method MinEnergyCut(..), always return 25 eV, because PAI models
    does not applicable for smaller energy transfers

10 August 17: V.Ivanchenko (emstand-V10-03-24)
- G4hIonisation - fixed energy intervals per EM model for superheavy
    particles

03 August 17: V.Ivanchenko (emstand-V10-03-23)
- G4MottCoefficients, G4ScreeningMottCrossSection,
  G4eSingleCoulombScatteringModel - Mauro Tacconi updated the model
    making as fast as the default single scattering
- G4ComptonScattering, G4CoulombScattering, G4GammaConversion,
  G4PhotoElectricEffect, G4WentzelOKandVIxSection, G4WentzelVIModel,
  G4alphaIonisation, G4eIonisation, G4hIonisation, G4ionIonisation,
  G4eBremsstrahlung, G4eMultipleScattering, G4hMultipleScattering
    make coherent model initialisation

16 June 17: V.Ivanchenko (emstand-V10-03-22)
- G4eCoulombScatteringModel, G4WentzelVIModel,
  G4hCoulombScatteringModel - fixed problem of computation
    of cross section introduced in emstand-V10-03-11

15 June 17: V.Ivanchenko (emstand-V10-03-21)
- G4UniversalFluctuation - restore emstand-V10-03-20

12 June 17: V.Ivanchenko (emstand-V10-03-21)
- G4UniversalFluctuation - copied from G4UniversalFluctuation2017

09 June 17: V.Ivanchenko (emstand-V10-03-20)
- G4UniversalFluctuation2017 - fixed rare division by zero

09 June 17: V.Ivanchenko (emstand-V10-03-19)
- G4WentzelOKandVIxSection - fixed trivial Coverity warning

02 May 17: V.Ivanchenko (emstand-V10-03-18)
- G4BetheHeitlerModel, G4PairProductionRelModel - a small change
    in angular sampling

01 June 17: V.Ivanchenko (emstand-V10-03-17)
- G4WentzelVIRelModel - fixed typo responsible for numerical crash

31 May 17: V.Ivanchenko (emstand-V10-03-16)
- G4BetheHeitlerModel, G4PairProductionRelModel - code cleanup and
    speedup, replaced remain log,exp by G4Log and G4Exp

31 May 17: V.Ivanchenko (emstand-V10-03-15)
- G4eBremsstrahlungRelModel - use new interface to triplet model

29 May 17: V.Ivanchenko (emstand-V10-03-14)
- G4UniversalFluctuation, G4UniversalFluctuation2017 - L.Urban fixed
    numerical problem for very small steps for all particle types

26 May 17: V.Ivanchenko (emstand-V10-03-13)
- G4UniversalFluctuation, G4UniversalFluctuation2017 - fixed numerical
    problem for sampling low-energy anti-protons with very small steps
- G4eBremsstrahlungRelModel - added class members and cross sections
    for sampling of electron recoil

24 May 17: V.Ivanchenko (emstand-V10-03-12)
- G4UniversalFluctuation - revert to 10.3 version
- G4UniversalFluctuation2017 - new class includes recent developments,
    cloned from recent G4UniversalFluctuation (ref-04)

23 May 17: V.Ivanchenko (emstand-V10-03-11)
- G4WentzelOKandVIxSection, G4eCoulombScatteringModel,
  G4WentzelVIModel, G4hCoulombScatteringModel - code and interface cleanup
  G4WentzelVIRelModel - use inheritance from G4WentzelVIModel
  G4WentzelVIRelXSection - use inheritance from G4WentzelOKandVIxSection

18 May 17: L.Urban (emstand-V10-03-10)
 - correction to G4UniversalFluctuation in order to get
   better FWHM values

4 May 17: V.Ivanchenko (emstand-V10-03-09)
- G4SauterGavrilaAngularDistribution - Marilena Bandieramonte
    introduced more efficient algorithm of sampling using
    Penelope-2014 prescription; expected that simulation will be
    faster

3 May 17: V.Ivanchenko (emstand-V10-03-08)
- G4NuclearStopping, G4ICRU49NuclearStoppingModel - fixed nuclear
    stopping power computation addressed issue discussed in
    http://hypernews.slac.stanford.edu/HyperNews/geant4/get/hadronprocess/1595/1.html

2  May 17: M.Novak (emstand-V10-03-07)
- G4GoudsmitSaundersonTable fix FPE

28 April 17: M.Novak (emstand-V10-03-06)
- G4GoudsmitSaundersonTable new representation of the GS angular
    distributions (data size reduced from 16MB down to 5 MB)

22 April 17: L.Urban (emstand-V10-03-05)
- G4UniversalFluctuation correction to get results closer to data

27 March 17: L.Urban (emstand-V10-03-04)
- G4UniversalFluctuation correction in order to get better E_mp and
  FWHM in the case of small steps

24 March 17: V.Ivanchenko (emstand-V10-03-03)
- G4WentzelOKandVIxSection, G4WentzelVIRelXSection - added
    "ScreeningFactor" parameter to study accuracy of scattering models

20 March 17: F.Hariri (emstand-V10-03-02)
- G4PairProductionRelModel - fixed the inconsistency in calculating
     the LPM suppression for the pair production model

07 February 17: V.Ivanchenko (emstand-V10-03-01)
- G4hIonisation - fixed min/max energy for dEdx table for the case,
    when the mass of a hadron is very different from the mass of
    proton

23 January 17: L. Urban (emstand-V10-03-00)
- G4UniversalFluctuation : correction in order to get better
  results for small steps

01 December 16: V.Ivanchenko (emstand-V10-02-33)
- G4UniversalFluctuation - G.Folger switch to std::sqrt from sqrt
- G4MottCoefficients, G4ScreeningMottCrossSection,
  G4eSingleCoulombScatteringModel - use Nuclear Formfactor options
    via G4EmParameters

09 November 16: V.Ivanchenko (emstand-V10-02-32)
- G4eplusAnnihilation - fixed polarisation of final gamma at rest

08 November 16: V.Ivanchenko (emstand-V10-02-31)
- G4eeToTwoGammaModel - fixed polarisation of final gamma

19 October 16: V.Ivanchenko (emstand-V10-02-30)
- G4UniversalFluctuation - restored 10.3beta version
- G4BetheHeitlerModel, G4ICRU49NuclearStoppingModel, G4IonFluctuations,
  G4GoudsmitSaundersonMscModel, G4IonFluctuations - for internal
    variable use name g4calc instead of g4pow

07 October 16: L.Urban (emstand-V10-02-29)
- G4UniversalFluctuation - modified code for small energy losses

22 August 16: V.Ivanchenko (emstand-V10-02-28)
- G4UniversalFluctuation - restore 10.3beta version

03 August 16: V.Ivanchenko (emstand-V10-02-27)
- G4WentzelOKandVIxSection - added various formactor approximations

20 July 16: V.Ivanchenko (emstand-V10-02-26)
- G4eBremsstrahlungRelModel - removed unused variables

19 July 16: V.Ivanchenko (emstand-V10-02-25)
- G4SeltzerBergerModel, G4eBremsstrahlungRelModel, G4eBremParametrizedModel
    added c++11 keywords explicit, override, delete; use nullptr and
    use G4Element::GetZasInt()

18 July 16: L.Urban (emstand-V10-02-24)
- G4UniversalFluctuation.cc correction in order to get better
  step dependence (practically no step dependence)

16 July 16: V.Ivanchenko (emstand-V10-02-23)
- G4ScreeningMottCrossSection - fixed precision lost in relativistic
    kinematics when E > 30 TeV
- G4eBremsstrahlung - improved printout

13 June 16: V.Ivanchenko (emstand-V10-02-22)
- G4SeltzerBergerModel - fixed data handling for Z > 92
    (problem report #1870 - invalid read of data in run time)

09 June 16: V.Ivanchenko (emstand-V10-02-21)
- G4UrbanMscModel - roll back selection of lateral displacement,
    by default use old algorithm, for Opt3,4 - new

07 June 16: V.Ivanchenko (emstand-V10-02-20)
- G4eMultipleScattering, G4hMultipleScattering - roll back previous
    version to avoid necessity to change user code

02 June 16: V.Ivanchenko (emstand-V10-02-19)
- G4eMultipleScattering, G4hMultipleScattering - fixed model
    initialisation (do not create extra unneccesary objects)

31 May 16: M. Novak (emstand-V10-02-18)
- G4eBremsstrahlungRelModel - change LPM constant such that it gives
    suppression variable that consistent to Migdal's one; fix small
    bug in LPM function computation;

23 May 16: V.Ivanchenko (emstand-V10-02-17)
- G4UrbanMscModel - use new displacement in all PhysList

17 May 16: V.Ivanchenko (emstand-V10-02-16)
  Added c++11 keywords: explicit, final, override, delete;
    use nullptr and use G4Element::GetZasInt()

22 April 16: M.Novak (emstand-V10-02-15)
- G4GoudsmitSaundersonMscModel - change some variable names

11 April 16: L.Urban (emstand-V10-02-14)
- G4UrbanMscModel - randomisation of "true path length" is modified

11 March 16: V.Ivanchenko (emstand-V10-02-13)
- G4alphaIonisation, G4hIonisation, G4ionIonisation - do not define
    StepFunction in constructor

02 March 16: V.Ivanchenko (emstand-V10-02-12)
- G4eSingleCoulombScatteringModel, G4ScreeningMottCrossSection
    (Mauro Tacconi) - fixed initialisation of classes allowing
    to use precomputed cross sections (problem 1823)

26 February 16: V.Ivanchenko (emstand-V10-02-11)
- Extra attempt to fix VC14 compillation warnings

25 February 16: V.Ivanchenko (emstand-V10-02-10)
- Attempt to fix clang and VC14 compillation warnings

25 February 16: V.Ivanchenko (emstand-V10-02-09)
- G4UniversalFluctuation - (L.Urban) fixed bug introduced in -06
- G4UniversalFluctuations, G4BohrFulatuations,  G4IonFluctuations
    added c++11 keywords explicit, override, delete, final

24 February 16: V.Ivanchenko (emstand-V10-02-08)
- G4BetheBlochModel - removed unused class members to address clang
    warnings

24 February 16: V.Ivanchenko (emstand-V10-02-07)
- G4BraggModel, G4BraggIonModel, G4BetheBlochModel - use float for
    local static data, introduced C++11 keyword "delete"

23 February 16: V.Ivanchenko (emstand-V10-02-06)
- G4UniversalFluctuation - two private inline method are made and
    some code cleanup done
23 February 16: L.Urban
- G4UniversalFluctuation - fixed bug in Glandz part, Gaussian sampling.
  The sampling is symmetrical around emean now

12 February 16: V.Ivanchenko (emstand-V10-02-05)
- G4eSingleCoulombScatteringModel - fixed sampling of scattering
  angle (problem report #1823)

11 February 16: M.Novak (emstand-V10-02-04)
- G4GoudsmitSaundersonMscModel - handle special case (when gun is on
  the boundary) in the step limitation

10 February 16: V.Ivanchenko (emstand-V10-02-03)
- G4ASTARStopping, G4PSTARStopping, G4NISTStoppingData,
  G4BraggModel - data arrays become float, computation is left double

23 January 16: V.Ivanchenko (emstand-V10-02-02)
- G4ScreeningMottCrossSection - a bit cleanup the code to be
    more fast: keep fixed static array of angles, use G4Pow::powN
    method instead of pow (Mauro Tacconi)

17 December 15: M.Novak (emstand-V10-02-01)
- G4GoudsmitSaundersonMscModel G4GoudsmitSaundersonTable - updated step
    limitations, fixed coverity problems and improved comments.

17 December 15: V.Ivanchenko (emstand-V10-02-00)
- G4ScreeningMottCrossSection - fixed FPE problem (Mauro Tacconi)

09 November 15: V.Ivanchenko (emstand-V10-01-41)
- G4ScreeningMottCrossSection - fixed Coverity report

28 October 15: V.Ivanchenko (emstand-V10-01-40)
- G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable -
    M. Novak revised GS model for new release, requires updated
    data set G4EMLOW6.48

28 October 15: V.Ivanchenko (emstand-V10-01-39)
- G4ScreeningMottCrossSection revision of the class, optimal usage
    of vectors (Mauro Tacconi)
- G4IonCoulombScatteringModel - minor cleanup (Mauro Tacconi)

27 October 15: V.Ivanchenko (emstand-V10-01-38)
- G4UrbanMscModel - facsafety parameter is set to 0.6 (was 0.3)
    providing some CPU improvements for calorimeter simulation
    not affecting calorimeter response (L.Urban)

24 October 15: V.Ivanchenko (emstand-V10-01-37)
- G4UrbanMscModel, G4IonFluctuations, G4MollerBhabhaModel - instead
    of computation take from material class the value of effective Z
    (fixed potantial source of non-reproducibility)
- G4hCoulombScatteringModel, G4eCoulombScatteringModel,
  G4SeltzerBergerModel, G4ICRU73QOModel, G4ICRU49NuclearStoppingModel,
  G4BraggModel, G4BraggIonModel, G4eBremsstrahlungRelModel - use
    G4lrint to convert double Z into integer

19 October 15: V.Ivanchenko (emstand-V10-01-36)
- G4IonCoulombScatteringModel, G4hCoulombScatteringModel - fix on
    recoil kinematics completed (problem report #1778)

16 October 15: V.Ivanchenko (emstand-V10-01-35)
- G4KleinNishinaCompton, G4KleinNishinaModel, G4BraggModel,
  G4BraggIonModel, G4BetheBlochModel, G4SeltzerBergerModel,
  G4MollerBhabhaModel, G4PEEffectFluoModel - use nullptr,
    use  rndmEngine->flatArray(n, rndm) in sampling algorithms
- G4IonCoulombScatteringModel, G4hCoulombScatteringModel - fixed
    recoil kinematics
- G4ScreeningMottCrossSection, G4eSingleCoulombScatteringModel
    (code update was provided by Mauro Tacconi)

15 September 15: L.Urban (emstand-V10-01-34)
- G4UrbanMscModel - modification in new lateral algorithm

03 September 15: V.Ivanchenko (emstand-V10-01-33)
- G4GoudsmitSaundersonMscModel - Mihaly Novak has fixed problem
    in GS model (increased number of no scattering for thin layers)

03 September 15: L.Urban (emstand-V10-01-32)
- G4UrbanMscModel - bugfix for the extreme small step case

02 September 15:  V.Ivanchenko (emstand-V10-01-31)
- G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable,
  G4PWATotalXsecTable - Mihaly Novak provided updated GS model

03 August 15:  V.Ivanchenko (emstand-V10-01-30)
- Technical tag: fixed Coverty warning, substitute tabs by spaces,
    add comments to do/while and while loops

28 July 15:  V.Ivanchenko (emstand-V10-01-29)
- G4IonCoulombScatteringModel, G4eCoulombScatteringModel,
  G4hCoulombScatteringModel - removed low-energy limits from
    scattering models, because it is now implemented inside ionisation
- G4BraggIonModel - fixed non reproducibility problem #1771
- G4ASTARStopping, G4ESTARStopping, G4PSTARStopping - build
    spline at initialisation of a vector

13 July 15:  V.Ivanchenko (emstand-V10-01-28)
- G4UrbanMscModel - (L.Urban) updated new lateral correlation
    algorithm; removed upper limit for computation of e+ correction
- G4hCoulombScatteringModel, G4WentzelVIRelXSection - (K.Maksimov)
    fully implemented scattring in CM rest frame of projectile/target
- G4IonCoulombCrossSection - removed unused class members

09 July 15:  V.Ivanchenko (emstand-V10-01-27)
- G4GoudsmitSaundersonTable - M. Novak fixed problem #1767

08 July 15:  V.Ivanchenko (emstand-V10-01-26)
- G4IonCoulombScatteringModel, G4IonCoulombCrossSection - fixed
    problem #1763 (wrong kinematics for the recoil), removed
    unused class members

23 June 15:  V.Ivanchenko (emstand-V10-01-25)
- G4UrbanMscModel - L.Urban introduce a fix of rare long running event

10 June 15:  V.Ivanchenko (emstand-V10-01-22)
- G4PWATotalXsecTable - attempt to fix compillation warning at Windows

10 June 15:  V.Ivanchenko (emstand-V10-01-21)
- G4UrbanMscModel - L.Urban revert back step limit algorithm, two
    methods are added for sampling of lateral displacement (one old
    from 10.1 and one new disabled by default), flags are added
    to switch between lateral displacement methods and to enable/disable
    special treatment of positrons below 1 MeV
- G4PWATotalXsecTable - M.Novak fix Coverity report

02 June 15:  V.Ivanchenko (emstand-V10-01-20)
- G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable - (M. Novak)
    fixed compillation warnings

01 June 15:  V.Ivanchenko (emstand-V10-01-19)
- G4PWATotalXsecTable - fixed compillation warning

29 May 15:  V.Ivanchenko (emstand-V10-01-18)
- G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable - (M. Novak)
    revised and improved implementation of GS model

28 May 15:  V.Ivanchenko (emstand-V10-01-17)
- G4PWATotalXsecTable - new class for GS model
- G4PAIPhotonModel - removed as obsolete

26 May 15:  R.Hatcher (emstand-V10-01-16)
- G4IonCoulombScatteringModel, G4eSingleCoulombScatteringModel - remove
    unnecessary "using namespace std" from header files that causes
    problems w/ G4AnyMethod & G4GenericPhysicsList

22 May 15:  V.Ivanchenko (emstand-V10-01-15)
- G4UrbanMscModel - small change in initialisation of the new track

18 May 15:  V.Ivanchenko (emstand-V10-01-14)
- G4UrbanMscModel - ( L.Urban) bugfix in ComputeTruePathLengthLimit
    in order not to get many extreme small steps due to msc; use
    "distance" instead of "range" to compare with safety; code
    optimisation (>5% speedup for EM shower simulation in calorimeters)

06 May 15:  V.Ivanchenko (emstand-V10-01-13)
06 May 15: L.Urban
- G4UrbanMscModel - better optimization in ComputeTruePathLengthLimit

01 May 15:  V.Ivanchenko (emstand-V10-01-12)
- G4PAIModel, G4PAIPhotModel - fixed re-initialisation in MT mode

30 April 15:  V.Ivanchenko (emstand-V10-01-11)
- G4WentzelVIModel - repeat check on safety for each new step,
    in SampleScattering optimized use of random engine
- G4UrbanMscModel - repeat check on safety for each new step,
    add extra limit for very small step regime
- G4PAIModel, G4PAIModelData, G4PAIPhotModel, G4PAIPhotModelData -
    (V.Grichine) last part of fixes for the problem report #1731:
    when next run is initialized old data class is deleted and
    a new one is created

28 April 15: V.Ivanchenko (emstand-V10-01-10)
- G4WentzelOKandVIxSection - improved angular sampling

27 April 15: V.Ivanchenko (emstand-V10-01-09)
- G4UrbanMscModel, G4UniversalFluctuation, G4KleinNishinaCompton,
  G4KleinNishinaModel - defined pointer to random engine locally

24 April 15: V.Ivanchenko (emstand-V10-01-08)
- G4PAIModel, G4PAIModelData - fixes of problem report #1731:
    cuts are not used in Initialise method but only in run time methods;
    added copy of vector of G4MaterialCutsCouple from master to worker
    threads
- G4KleinNishinaModel, G4WentzelOKandVIxSection - accurate
    initialisation of G4ThreeVectors and G4LorentzVector in constructors

14 April 15: V.Ivanchenko (emstand-V10-01-07)
- G4UrbanMscModel - removed unused variable

14 April 15: V.Ivanchenko (emstand-V10-01-06)
- G4UrbanMscModel - (L.Urban) new lateral displacement,correlation and
  positron correction; code cleanup - define some const members of the
  class and const static values

04 March 15: V.Ivanchenko (emstand-V10-01-05)
- G4hMultipleScattering - do not redefine step limit type

26 January 15: V.Ivanchenko (emstand-V10-01-04)
- G4BraggModel, G4BraggIonModel, G4BetheBlochModel - more clean
    definition of spin correction to ionisation

16 January 15: V.Ivanchenko (emstand-V10-01-03)
- G4UniversalFluctuation - switch to use
  G4Random::getTheEngine() to have more clean code

15 January 15: V.Ivanchenko (emstand-V10-01-02)
- G4GoudsmitSaundersonMscModel, G4UrbanMscModel,G4WentzelVIModel,
  G4WentzelVIRelModel, G4UniversalFluctuation - redefine random
    engine pointer in StartTracking() method to address problem
    reported by CMS

17 December 14: V.Ivanchenko (emstand-V10-01-01)
- G4GoudsmitSaundersonMscModel - return back version of 10.0 with
    two fixes: trivial Coverity report, added protection aginst precision
    loss for small angle calculation. Keeping 10.0 version the same
    backscattering result is obtained for 10.1 as for 10.0

12 December 14: V.Ivanchenko (emstand-V10-01-00)
- G4KleinNishinaModel - fixed very rare crash (reported by L.Urban)
    happens when de-excitation module is active and de-excitation energy
    is slightly larger than available energy; now secondary
    energy slightly modified to keep energy balance instead
    of deletion of secondary particle
- G4PEEffFluoModel - use the same pattern as G4KleinNishinaModel
    for de-excitation products


21 November 14: V.Ivanchenko (emstand-V10-00-52)
- G4PAIPhotonModel - fixed Coverity report (V.Grichine)

15 November 14: V.Ivanchenko (emstand-V10-00-51)
- G4PEEffectFluoModel - make internal array per material and
    not per materialCutsCouple allowing model be used in unit tests

07 November 14: V.Ivanchenko (emstand-V10-00-50)
- G4GoudsmitSaundersonMscModel - fixed displacement computation

27 October 14: V.Ivanchenko (emstand-V10-00-49)
- G4GoudsmitSaundersonMscModel - fixed rare division by zero

27 October 14: V.Ivanchenko (emstand-V10-00-48)
- G4WentzelVIModel, G4WentzelOKandVIxSection, G4WentzelVIRelXSection
    use G4EmParameters class for initialisation

24 October 14: V.Ivanchenko (emstand-V10-00-47)
- G4DeltaAngle - comment out warning happens frequently for
    low-enegry electrons

24 October 14: V.Ivanchenko (emstand-V10-00-46)
- G4CoulombScattering - use G4EmParameters
- G4WentzelVIModel - refinment of lateral displacement
- G4UrbanMscModel - refinment of lateral displacement
- G4WentzelOKandVIxSection - fixed sampling in single scattering

16 October 14: V.Ivanchenko (emstand-V10-00-45)
- G4eIonisation, G4hIonisation, G4ionIonisation, G4eBremsstrahlung,
  G4GammaConversion, G4ComptonScattering, G4PhotoElectricEffect
    - use G4EmParameterisation at initialisation

14 October 14: V.Ivanchenko (emstand-V10-00-44)
- G4PEEffectFluoModel - fixed threshold cross section
- G4GammaConversion - minor fix of initialisation

07 October 14: L.Urban
- G4UrbanMscModel corrs to speed up (if --> min,max,
  random numbers using rndmEngineMod pointer)

06 October 14: L. Urban (emstand-V10-00-43)
- G4UrbanMscModel - added new step limit type UseSafetyPlus

8 September 14: V.Ivanchenko (emstand-V10-00-42)
- G4PairProductionRelModel, G4eBremsstrahlungRelModel - added
    protection at initialisation for the case when user artifitially
    reducing high energy limit of the model (bug #1670)

5 September 14: V.Ivanchenko (emstand-V10-00-41)
- G4PAIxSection - fixed memory leak reported by Coverity

12 August 14: V.Ivanchenko (emstand-V10-00-40)
- G4WentzelVIModel - fixed bug in single scattering mode (recently
    introduced)

08 August 14: V.Ivanchenko (emstand-V10-00-39)
- G4PAIModel - updated sampling of delta electron energy
- G4PAIModelData - proper deletion of physics vectors end of run,
    use spline interpolation, fixed sampling of delta-electrons
- G4DeltaAngle - added check on length of do/while loop
- G4PAIxSection - added protection to avoid division by zero
- G4PAIxSection, G4PAIPhotData, G4PAIPhotModel - proper deletion
    end of job

21 July 14: V.Ivanchenko (emstand-V10-00-38)
- G4ASTARStopping, G4PSTARStopping, G4BraggModel, G4BraggIonModel
    restore functionality to access NIST stopping data via
    chemical formula and not only by material name

21 July 14: V.Ivanchenko (emstand-V10-00-37)
- G4ASTARStopping, G4ESTARStopping, G4PSTARStopping,
  G4WaterStopping - reduced memory churn by using static data,
    delete physics vectors at destruction
- G4ASTARStopping, G4PSTARStopping changed interface to be
    always const in run time (shared between threads)
- G4BraggModel - use static pointer to G4PSTARStopping class,
    which is initialized once
- G4BraggIonModel - use static pointer to G4ASTARStopping class,
    which is initialized once

17 July 14: V.Ivanchenko (emstand-V10-00-36)
17 July 14: V.Ivanchenko (emstand-V10-00-35)
16 July 14: V.Ivanchenko (emstand-V10-00-34)
- G4WentzelVIModel - define single scattering mode before
    transformation from true to geom step length to avoid
    many smell steps for very low-energy particles
- G4UrbanMscModel - fixed numerical problem for the case when
    range is nearly truePathLength

13 July 14: V.Ivanchenko (emstand-V10-00-33)
- G4WentzelVIModel - fixed bug introduced in tag 31, which is
    responsible for CPU increase in several tests

08 July 14: V.Ivanchenko (emstand-V10-00-32)
- G4KleinNishinaModel - minor cleanup

07 July 14: V.Ivanchenko (emstand-V10-00-31)
- G4ComptonScattering - set startFromNull flag to "true" - for all
    models forced to zero cross section for the low energy in the
    cross section table
- G4KleinNishinaModel, G4KleinNishinaCompton,
  G4HeatedKleinNishinaCompton - do not sample final
    state below low limit of the model (default 100 eV);
    added protection to do/while loop; added check on secondary
    energy of both gamma and electron using internal limit
- G4HeatedKleinNishinaCompton - use inheritence from G4KleinNishinaCompton
- G4WentzelVIModel - added more accurate transition to the single
    scattering mode
- G4WentzelOKandVIxSection - return back method of 10.0 single
    scattering sampling
- G4IonCoulombScatteringModel - fixed non-initialised (Coverity report)

06 June 14: V.Ivanchenko (emstand-V10-00-30)
- G4WentzelVIModel - removed extra printout at initialisation

03 June 14: V.Ivanchenko (emstand-V10-00-29)
- G4WentzelVIModel - SetSingleScattering Factor is moded to source
    with attempt to fix compillation problem for strict compiler
- G4PAIModel, G4PAIModelData - improved cout
- G4G4BraggModel, G4BraggIonModel - added spin correction
- G4eCoulombScatteringModel, G4hCoulombScatteringModel,
  G4IonCoulombScatteringModel - updated initialisation
    of vector of cuts - cut for recoil can be changed via
    /run/setCut command

27 May 14: V.Ivanchenko (emstand-V10-00-28)
- G4IonCoulombCrossSection - tunned computation of the screen
    factor
- G4UrbanMscModel - changed ComputeGeomPathLength() method - instead
    of many return use the one for easier printouts; no change in
    algorithms
- G4UniversalFluctuations - implemented Andrea Dotti suggestion
    to use more vectorized code (use random engine pointer, use
    flatArray method) for CPU performance improvement;
    no change of the algorithm
- G4eCoulombScattering - fixed simple Coverity report
- G4WentzelVIModel - changed single scattering factor from 1.5 to
    1.25

05 May 14: V.Ivanchenko (emstand-V10-00-27)
- G4WentzelVIModel, G4WentzelVIRelModel, G4WentzelOKandVIxSection,
  G4eCoulombScatteringModel - revised and make consistent definition
    of min and max scattering angle for single scattering mode,
    removed unused class members
- G4IonCoulombCrossSection - fixed screen factor for projectile
    and target Z=1

02 May 14: V.Ivanchenko (emstand-V10-00-26)
- G4WentzelVIModel, G4WentzelOKandVIxSection - a small optimisation
    to address some CPU penalty against previous reference tag

28 April 14: V.Ivanchenko (emstand-V10-00-25)
- G4WentzelOKandVIxSection - fixed bug introduced in April tags

04 April 14: V.Ivanchenko (emstand-V10-00-24)
- G4WentzelVIModel - fixed minor bug introduced in the previous tag

03 April 14: V.Ivanchenko (emstand-V10-00-23)
- G4WentzelVIModel - optimized transition between multiple and single
    scattering modes; changed order of displacement and angular
    deflection (second order effect)
- G4WentzelOKandVIxSection - some cleanup for sampling
- G4IonCoulombScatteringModel - fixed for scattering off Hydrogen

01 April 14: V.Ivanchenko (emstand-V10-00-22)
- G4WentzelOKandVIxSection - some cleanup for sampling
- G4IonCoulombScatteringModel - fixed final state generation
- G4GammaConversion - switch default number of bins from 220 to 140
- G4eCoulombScatteringModel - fixed mass of recoil for Hydrogen target

31 March 14: V.Ivanchenko (emstand-V10-00-21)
- G4WentzelVIModel - removed forgotten debug printout

31 March 14: V.Ivanchenko (emstand-V10-00-20)
- G4WentzelVIModel - fixed step limitation
- G4WentzelOKandVIxSection - fixed initialisation for low-energy
    model (this model is not combined with single scattering);
    fixed small inaccuracy for sampling
- G4GammaConversion - switch default number of bins from 77 to 220

28 March 14: V.Ivanchenko (emstand-V10-00-19)
- G4CoulombScattering - use G4IonCoulombScatteringModel for ions
    by default
- G4IonCoulombScatteringModel - fixed warning from G4ParticleTable

19 March 14: V.Ivanchenko (emstand-V10-00-18)
19 March 14: L.Urban
- G4UrbanMscModel - efficiency corrections rewritten, no extra
  SimpleScattering call

14 March 14: V.Ivanchenko (emstand-V10-00-17)
13 March 14: L.Urban
- G4UrbanMscModel - useSimpleScattering boolean flag in order to get
   a more readable code

11 March 14: L.Urban
- G4UrbanMscModel - correction improves efficiency in UseSafety mode

28 February 14: V.Ivanchenko (emstand-V10-00-16)
- G4WentzelVIModel - make part of members of the class and one method
    protected in order to allow inheritence for derived models

28 February 14: L.Urban
- G4UrbanMscModel - modification in order to improve timing by
  1-14 % (depending on the setup and cut)

27 February 14: V.Ivanchenko (emstand-V10-00-15)
- G4DeltaAngle - added implementation of SampleDirectionForShell
    virtual method; improved sampling

27 February 14: V.Ivanchenko (emstand-V10-00-14)
- G4WentzelVIModel - added possibility to compute second momentum

20 February 14: V.Ivanchenko (emstand-V10-00-13)
- G4UrbanMscModel : some code cleanup - no results change
- G4WentzelOKandVIxSection, G4WentzelVIModel - similar cleanup

16 February 14: L.Urban
- G4UrbanMscModel : change in optimization for fUseSafety case by
    usage std::min/std::max instead of "if" constructions

14 February 14: V.Ivanchenko (emstand-V10-00-12)
- G4UrbanMscModel : cosmetic changings

14 February 14: L.Urban (emstand-V10-00-11)
- G4UrbanMscModel : method SampleDisplacement removed, its code has been
   put into SampleScattering

13 February 14: V.Ivanchenko (emstand-V10-00-10)
- G4WentzelOKandVIxSection, G4WentzelVIRelXSection, G4WentzelVIModel,
  G4WentzelVIRelModel, G4eCoulombScatteringModel, G4hCoulombScatteringModel
    added boolean flag showing that in Physics List msc and single scattering
    are combined or not

10 February 14: V.Ivanchenko (emstand-V10-00-09)
- G4UrbanMscModel - (L.Urban) methods ComputeTheta0,SimpleScattering,
  SampleDisplacement,LatCorrelation have been inlined in order
  to improve timing (K. Genser suggesting) in these methods use
  class member "third" to reduce number of divisions
- G4PAIxSection - trivial fix of Coverity report

03 February 14: V.Ivanchenko (emstand-V10-00-08)
- G4SauterGavrilaAngularDistribution - use Penelope 2008 sampling
    algorithm, because it is more effective, distribution itself
    is unchanged

26 January 14: V.Ivanchenko (emstand-V10-00-07)
- G4ionIonisation - improved printout at initialisation

25 January 14: V.Ivanchenko (emstand-V10-00-06)
- G4NuclearStopping - do not change ion charge (fixed problem reported
    by Michel Maire)
- G4ionIonisation - do not instantiate extra model at high enegry
    if G4IonParameterisedModel is used

24 January 14: V.Ivanchenko (emstand-V10-00-05)
- G4PAIxSection - trivial fix of Coverity report
- G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable - fixed
    Coverity reports: substitute reading of external file from fopen
    to ifstream; use G4Log, G4Exp

18 January 14: L.Urban (emstand-V10-00-04)
- G4UniversalFluctuation - bugfix in "ionization" computing -
   effect of the bug was small

17 January 14: V.Ivanchenko for J.Apostolakis (emstand-V10-00-03)
- G4UniversalFluctuation - reduced number of divisions by addition
    extra class members

11 January 14: V.Ivanchenko for L.Urban (emstand-V10-00-02)
- G4UniversalFluctuation - G4Pow::expA() is substituted by G4Exp()

08 January 14: V.Ivanchenko for L.Urban (emstand-V10-00-01)
- G4UrbanMscModel - bug fix (1st normal step in StepLimitType 2 mode
                    was not randomized)
- G4UniversalFluctuation - energy loss for extreme small cuts was too small,
                           it is fixed now

18 December 13: V.Ivanchenko (emstand-V10-00-00)
- G4eCoulombScatteringModel, G4eSingleCoulombScatteringModel - get pointer
    to the vector of cuts from parameter of Initialise(..) method and
    not from G4ProductionCutsTable - this is more convinient for
    unit tests, results unchanged

18 November 13: V.Ivanchenko (emstand-V09-06-79)
- G4PAIPhotonModel, G4PAIxSection - fixed Coverity reports (V.Grichine)

12 November 13: V.Ivanchenko (emstand-V09-06-78)
- G4IonCoulombScatteringModel, G4eCoulombScatteringModel,
  G4eSingleCoulombScatteringModel, G4hCoulombScatteringModel
    if primary particle is below low-energy threshold and is
    killed add its energy to energy deposition and not to recoil
    energy; no effect on ordinary simulation

08 November 13: V.Ivanchenko (emstand-V09-06-77)
- G4PAIPhotonModel - do not delete PhysVectors

07 November 13: V.Ivanchenko (emstand-V09-06-76)
- G4PAIModelData, G4PAIPhotData - do not delete PhysVectors

06 November 13: V.Ivanchenko (emstand-V09-06-75)
- G4ASTARStopping, G4ESTARStopping, G4PSTARStopping, G4PAIModelData,
  G4PAIPhotData - do not delete PhysVectors

05 November 13: V.Ivanchenko (emstand-V09-06-74)
- G4PAIxSection, G4PAIySection - V.Grichine completly understand
    and fix problem of division by zero when PAI modls are initialized

01 November 13: V.Ivanchenko (emstand-V09-06-73)
- G4PAIxSection, G4PAIySection - V.Grichine fixed problem of division
    by zero
- G4eBremsstrahlungRelModel, G4eCoulombScatteringModel - implemented
    MinPrimaryEnergy method needed to set low-energy limit for
    cross section tables

28 October 13: V.Ivanchenko (emstand-V09-06-72)
- G4eBremsstrahlungModel - removed as obsolete
- G4ESTARStopping, G4GoudsmitSaundersonTable,
  G4GoudsmitSaundersonMscModel - fixed Coverity reports

21 October 13: V.Ivanchenko (emstand-V09-06-71)
- G4BraggModel, G4BraggIonModel, G4BetheBlochModel, G4MollerBhabhaModel
    added possibility to use angular generator

20 October 13: V.Ivanchenko (emstand-V09-06-70)
- G4WentzelVIModel - added GetWVICrossSEction - access method
    to cross section class
- V.Grichine G4PAIPhotModel ans G4PAIPhotData classes were in
secondary electron/X-ray mode.

15 October 13: V.Ivanchenko (emstand-V09-06-69)
- In many classes std::pow(x,y) substituted by G4Exp(G4Log(x)*y)

14 October 13: V.Ivanchenko (emstand-V09-06-68)
- G4DeltaAngleFreeScat - is added
- G4ESTARStopping - added reading from G4LEDATA

12 October 13: V.Ivanchenko (emstand-V09-06-67)
- G4WentzelVIModel, G4eCoulombScatteringModel - added fixedCut
    member of the class and Get/Set method, will be used
    in fanoCavity and other tests
- New classes G4PAIPhotModel, G4PAIPhotData (V.Grichine)

04 October 13: V.Ivanchenko (emstand-V09-06-66)
- G4SeltzerBergerModel - added one simple method
- G4ESTARStopping - added implementation of forgotten method, cleanup
- G4PAIModelData - V. Grichine add restricted dE/dx vector

02 October 13: V.Ivanchenko (emstand-V09-06-65)
- G4ESTARStopping - added ESTAR stopping power data
- General cleanup of many classes: use G4Log and G4Exp,
    moved 'static const G4double var = expression' lines our of
    the source to avoid any problem in MT mode, significant speedup
    of initialisation and some speedup in run time

11 September 13: V.Ivanchenko (emstand-V09-06-64)
- G4PairProductionRelModel - add SetupForMaterial(..) call
    into SampleScattering method to fix infinite loop in MT mode

02 September 13: V.Ivanchenko (emstand-V09-06-63)
- G4PAIModelData - fixed very end of the delta-electron spectra

30 August 13: V.Ivanchenko (emstand-V09-06-62)
- G4PAIModelData - fixed numerical problem by defining internal
    low-energy limit for proton 50 keV

30 August 13: V.Ivanchenko (emstand-V09-06-61)
- G4SeltzerBergerModel - if in the method ComputeDXSectionPerAtom
    it turs out that data for given Z are not uploaded call
    InitialiseForElement instead of ReadData in order to set
    AutoLock - this is kind of sanity for MT mode
- G4PAIModel - do not upply hard-coded low-limit on energy, because
    it should done coherently inside G4PAIModelData
- G4PAIModelData - scale internal differential cross section
    table as 1/t^2, where t is energy transfer in oreder to more
    smooth x-section; fixed bug in sampling algorithm - removed
    steps in delta electron energy spectrum

29 August 13: V.Ivanchenko (emstand-V09-06-60)
- G4BetheHeitlerModel, G4KleinNishinaCompton, G4KleinNishinaModel,
  G4PairProductionRelModel, G4eBremParametrizedModel - implemented
    InitialiseLocal method in order to share element selectors between
    threads

28 August 13: V.Ivanchenko (emstand-V09-06-59)
- G4PEEffectFluoModel - minor optimisation
- G4DeltaAngle - angular generator for delta-electrons taking
    into account electron motion
- G4PAIModel - use G4DeltaAngle angular generator

23 August 13: V.Ivanchenko (emstand-V09-06-58)
- G4PAIModelData added interpolation of dedx and cross section
    between energy bins of internal tables

23 August 13: V.Ivanchenko (emstand-V09-06-57)
- G4IonFluctuations, G4UniversalFluctuations - use G4Pow for log, exp,
    pow in run time methods - expected slightly improve CPU performance

21 August 13: V.Ivanchenko (emstand-V09-06-56)
- G4UrbanMscModel93, G4UrbanMscModel95, G4UrbanMscModel96 are removed
    only one version of the model G4UrbanMscModel  is left

19 August 13: V.Ivanchenko (emstand-V09-06-55)
- G4PAIModelData - new class to handle PAI internal data
- G4PAIModel - data handling extracted to G4PAIModelData, is data
    class may be shared between threads; code cleanup

12 August 13: V.Ivanchenko (emstand-V09-06-54)
- G4BetheBlochModel, G4BraggIonModel - returned back method MinEnergyCut
    in order to protect from the bug #1481

03 July 13: V.Ivanchenko (emstand-V09-06-53)
- G4BohrFluctuations, G4IonFluctuations, G4PAIModel, G4PAIPhotonModel,
  G4UniversalFluctuation - changed interface to G4VEmFluctuationModel
    in SampleFluctuations G4Material pointer is substituted
    by G4MaterialCutsCouple pointer, this is needed for PAI model

01 July 13: V.Ivanchenko (emstand-V09-06-52)
- G4PAIModel - correct usage of indexes

19 June 13: V.Ivanchenko (emstand-V09-06-51)
- correct branch tag

18 June 13: V.Ivanchenko (emstand-V09-06-50)
- G4WaterStopping - enable spline after vector with data is filled -
    needed after G4PhysicsVector modification

15 June 13: V.Ivanchenko (emstand-V09-06-49)
- Return PAI modifications to the vesrsion of emstand-V09-06-45
- G4eCoulombScatteringModel - do not use ElementSelectors for ions
- G4ScreeningMottCrossSection - fixed Coverity report; fixed numerical
    problem for very small scattering angles

13 June 13: V.Ivanchenko (emstand-V09-06-48)
 G4PAIxSection - fixed compillation warning

13 June 13: V.Ivanchenko (emstand-V09-06-47)
 G4PAIxSection - V.Grichine fix compillation warning

13 June 13: V.Ivanchenko (emstand-V09-06-46)
12 June 13 -  V.Grichine, G4PAIPhotonModel, G4PAIxSection - modified
    initialisation call G4SandiaTable over memory crash free method;
    G4PAIxSection was modified: arrays->G4DataVectors

10 May 13: V.Ivanchenko (emstand-V09-06-45)
- G4hIonisation - removed debug printout

07 May 13: V.Ivanchenko (emstand-V09-06-44)
- G4hIonisation - add special treatment for ions

06 May 13: V.Ivanchenko (emstand-V09-06-43)
- G4PEEffectFluoModel - revert back previous tag -41, because
    tag -42 does not help to resolve non-reproducibility at Windows

06 May 13: V.Ivanchenko (emstand-V09-06-42)
- G4PEEffectFluoModel - revert back previous tag -40 in order
    to fix non-reproducibility

06 May 13: V.Ivanchenko (emstand-V09-06-41)
- G4PEEffectFluoModel - more safe computation of secondary
    electron energy and energy concervation

05 May 13: V.Ivanchenko (emstand-V09-06-40)
- G4PAIPhotonModel - (V.Grichine) added extra methods
- G4SeltzerBergerModel, G4eBremsstrahlungRelModel - use IsMaster()
    method at initialisation
03 June 13: L. Urban
- G4PEEffectFluoModel - correction to ensure energy conservation
  when fluo is on`
- G4KleinNishinaModel - correction to ensure energy conservation
  when fluo is on`

30 May 13: V.Ivanchenko (emstand-V09-06-39)
- G4SeltzerBergerModel, G4eBremsstrahlungRelModel - implemented
    copy of element selectors from master to worker threads

29 May 13: V.Ivanchenko (emstand-V09-06-38)
- G4SeltzerBergerModel - increased elowlimit in the method
    SamplingSecondaries() from 10 to 20 keV in order to removed

29 May 13: V.Ivanchenko (emstand-V09-06-37)
- G4eCoulombScatteringModel, G4hCoulombScatteringModel,
  G4eSingleCoulombScatteringModel - use G4IonTable::GetIon instead
    of G4ParticleTable interface to create a recoil ion
- G4KleinNishinaModel - added protection and warning against
    possible energy non-conservation due to inconsistency in
    shell energies
- G4PEEffectFluoModel - use binding energy from G4LEDATA and not
    from G4AtomicShell class in the case when fluoresence is enabled
    in order to provide energy balance
- G4SeltzerBergerModel - increased elowlimit in the method
    SamplingSecondaries() from 10 to 20 keV in order to removed
    problem of majoranta exceeded in heavy media (annoing warnings
    messages should not appear anymore)

23 May 13: V.Ivanchenko (emstand-V09-06-36)
- G4PAIModel - G4SandiaTable is added as a class member
- G4PAIModel, G4PAIySection - V.Grichine modified initialisation
    call G4SandiaTable over memory crash free method; G4PAIySection
    was modified: arrays->G4DataVectors

16 May 13: V.Ivanchenko (emstand-V09-06-35)
- G4SeltzerBergerModel - changed interface to G4Physics2DVector

10 May 13: M.Asai (emstand-V09-06-34)
- Added Mutex lock to G4SeltzerBergerModel::ReadData().

08 May 13: V.Ivanchenko (emstand-V09-06-33)
- removed debug printpout at initialisation from previous tag
- G4SeltzerBergerModel - reduce limit on number of warning printouts
    to reduce log files for MT developments

07 May 13: V.Ivanchenko (emstand-V09-06-32)
- G4WentzelOKandVIxSection - fixed old problem - difference in
    scattering for electrons and heavy particle by introduction
    of separate arrays for screening radiuses

30 April 13: V.Ivanchenko (emstand-V09-06-31)
- G4HeatedKleinNishinaCompton, G4IonFluctuations, G4PAIModel,
   G4PAIPhotonModel, G4UniversalFluctuation - CLHEP::Rand
     substituted by G4Rand (needed for MT)
- G4PAIySection restore original algorith of cheking of
    maxenergy transfer

25 April 13: V.Ivanchenko (emstand-V09-06-30)
- G4UrbanMscModel95, G4UrbanMscModel96 - added usage of G4Pow and
- G4PAIySection, G4PAIModel, G4PAIPhotonModel - return back working
  versions from the tag emstand-V09-06-28

22 April 13: V.Ivanchenko (emstand-V09-06-29)
- G4PAIySection, G4PAIModel, G4PAIPhotonModel - restore tag -06-23
    to allow acceptance of msc models for the reference tag

20 April 13: V.Ivanchenko (emstand-V09-06-28)
- G4PAIySection - fixed usage array length
- G4WentzelVIModel - minor optimisation of the code (no effect on
    physics results)

19 April 13: V.Ivanchenko (emstand-V09-06-27)
- G4WentzelOKandVIxSection - fixed initialisation - really different
    screening parameter for e+- and heavy particles

18 April 13: V.Ivanchenko (emstand-V09-06-26)
- G4PAIModel - fixed valgrind reported problem in unit test

18 April 13: V.Ivanchenko (emstand-V09-06-25)
- G4PAIModel - fixed destructor
- G4WentzelOKandVIxSection - added different screening parameter formula
    for e+- and heavy particles in order to return back width of electron
    scattering

14 April 13: V.Grichine
- G4PAIModel, G4PAIPhotonModel, G4PAIySection - modifications to make both PAI and
  PAIPhoton to be edentical in terms of SANDIA data used.

10 April 13: V.Ivanchenko (emstand-V09-06-24)
- G4PAIModel, G4PAIPhotonModel - change Initilise method allowing to
    work with these models in unit test where geometry is not
    constructed

04 April 13: V.Ivanchenko (emstand-V09-06-23)
- G4UrbanMscModel - use G4Pow in compute transport cross section

09 April 13: L.Urban
- G4UrbanMscModel - random first step/ random first step in volume
   instead of sampling z (the geam. step length). After this modification
   there in no zero step length for eIoni,eBrem and annihilation in flight

04 April 13: V.Ivanchenko (emstand-V09-06-22)
- G4eplusAnnihilation - use G4VParticleChange interface to add
    secondary track for more clean weight update; cleanup headers

22 March 13: V.Ivanchenko (emstand-V09-06-21)
- G4MottCoefficients, G4BetheHeitlerModel, G4ASTARStopping, G4BraggIonModel,
  G4BraggModel, G4InitXscPAI, G4IonFluctuations, G4ModifiedTsai,
  G4MottCoefficients, G4PAIySection, G4PSTARStopping,
  G4PairProductionRelModel, G4SauterGavrilaAngularDistribution,
  G4ScreeningMottCrossSection, G4SeltzerBergerModel, G4UrbanMscModel,
  G4WentzelVIModel, G4WentzelVIRelModel, G4eBremsstrahlungModel
    for const parameters use "static const G4double"

18 March 13: V.Ivanchenko (emstand-V09-06-20)
- G4UrbanMscModel - L.Urban have added a new geometrical limit
    0.01 nm to allow scattering in very small steps;
- G4UrbanMscModel, G4UrbanMscModel93, G4UrbanMscModel95 -
    warning printout about large angle scattering is commented out

07 March 13: V.Ivanchenko (emstand-V09-06-19)
- G4UrbanMscModel, G4UrbanMscModel93, G4UrbanMscModel95,
    G4UrbanMscModel96 - comment out extra printout
  G4UrbanMscModel96 - added warning that it is an obsolete class

28 February 13: V.Ivanchenko (emstand-V09-06-18)
- G4PEEffectFluoModel - changed interface to SandiaTable allowing
    materials to be shared between threads

23 February 13: V.Ivanchenko (emstand-V09-06-17)
- G4PEEffectFluoModel - attempt to fix compillation problems

21 February 13: V.Ivanchenko (emstand-V09-06-16)
- G4PEEffectFluoModel - use const pointers to access Sandia table array;
    changed access to G4SandiaTable in ComputeCrossSectionPerAtom method
    by using pointer os G4MaterialCutsCouple (before sttic method was used)

19 February 13: V.Ivanchenko (emstand-V09-06-15)
- G4UrbanMscModel, G4UrbanMscModel96 - L.Urban make modification
    in SampleCosineTheta to provide higher stability versus step size
- G4UrbanMscModel - modified format of warning about big scatterings

19 February 13: V.Ivanchenko (emstand-V09-06-14)
- G4SeltzerBergerModel, G4PAIxSection, G4PAIySection,
  G4GoudsmitSaundersonTable, G4GoudsmitSaundersonMscModel
    - removed G4endl from G4ExceptionDescription
  G4UrbanMscModel - copied from G4UrbanMscModel96 and become
    default for G4eMultipleScattering, G4hMultipleScattering

18 February 13: V.Ivanchenko (emstand-V09-06-13)
- G4eBremsstrahlungModel, G4WentzelVIRelXSection,
  G4WentzelOKandVIxSection, G4SeltzerBergerModel, G4PAIxSection,
  G4PAIySection, G4IonFluctuations, G4ICRU49NuclearStoppingModel,
  G4ICRU49NuclearStoppingModel, G4GoudsmitSaundersonTable,
  G4BraggModel, G4BraggIonModel - removed G4ThreadLocal declarations

01 February 13: V.Ivanchenko (emstand-V09-06-12)
- G4UrbanMscModel93, G4UrbanMscModel95, G4UrbanMscModel96:
    added warning printout for particles with E>20 MeV and value
    of c < 1.6
- G4UrbanMscModel96 - extra tuning of probability of no scattering
    in thin layers to be more similar to the single scattering model
    (L.Urban)

29 January 13: V.Ivanchenko (emstand-V09-06-11)
- G4UrbanMscModel93, G4UrbanMscModel95, G4UrbanMscModel96:
    added limit c>1.9 for the main parameter responsible for
    sumpling of tail of scattering (fix for ATLAS large scattering
    angle problem)
- G4WentzelVIModel - more clean logic of sampling for single
    scattering mode

25 January 13: V.Ivanchenko (emstand-V09-06-10)
- G4UrbanMscModel93, G4UrbanMscModel95, G4UrbanMscModel96 - extended
    initialisation at StartTracking method: class members
    'tlimitmin' and 'stepmin' are reset to default values to avoid rare
    cases of non-reproducibility (L.Urban).

23 January 13: V.Ivanchenko (emstand-V09-06-09)
11 January 13: V.Ivanchenko (emstand-V09-06-08)
11 January 13: V.Ivanchenko (emstand-V09-06-07)
- Removed obsolete models: G4UrbanMscModel90, G4UrbanMscModel92,
    G4PEEffectModel

09 January 13: V.Ivanchenko (emstand-V09-06-06)
- G4UrbanMscModel96 - new tuning by L.Urban

29 December 12: V.Ivanchenko (emstand-V09-06-05)
- G4UrbanMscModel95 - use more safe expressions in SampleCosineTheta
    to avoid numerical problem seenith G4UrbanMscmOdel93
- G4UrbanMscModel93 - added extra double members of the class

23 December 12: V.Ivanchenko (emstand-V09-06-03)
- All msc models - minor cleanup

23 December 12: V.Ivanchenko (emstand-V09-06-02)
- All msc models - changed signature of SampleScattering - fixed
    major bug of 9.6

20 December 12: V.Ivanchenko (emstand-V09-06-01)
- G4UrbanMscModel93 - use more safe expressions in SampleCosineTheta
    to avoid numerical problems (ATLAS large scattering angle problem)

07 December 12: V.Ivanchenko (emstand-V09-06-00)
- G4ModifiedTsai, G4PairProductionRelModel, G4WentzelOKandVIxSection,
  G4WentzelVIRelXSection - removed obsolete methods and headers

12 November 12: V.Ivanchenko (emstand-V09-05-65)
- G4WentzelOKandVIxSection - make special case for Hydrogen

10 November 12: V.Ivanchenko (emstand-V09-05-64)
- G4WentzelOKandVIxSection - revert to 9.5 version

09 November 12: V.Ivanchenko (emstand-V09-05-63)
- G4WentzelVIModel - fixed minor problem in single scattering mode

08 November 12: V.Ivanchenko (emstand-V09-05-62)
- G4UrbanMscModel90, G4UrbanMscModel93, G4UrbanMscModel95 - do not sample
    scattering if energy is below 1 eV
- G4WentzelVIModel - added "no scattering" check inside SampleScattering
    method
- G4WentzelOKandVIxSection - return back screening parameter parameterisation
    of Geant4 9.5 (better fit MuScat data)

03 November 12: V.Ivanchenko (emstand-V09-05-61)
- G4XrayRayleighModel - fixed minor Coverity warning

26 October 12: V. Grichine - bug fixed in G4XrayRayleighModel for calculating
of the atomic form factor in the SampleSecondaries method.

26 October 12: V.Ivanchenko (emstand-V09-05-60)
- G4UrbanMscModel90 - improved warning for large angle scattering
- G4SeltzerBergerModel - added  SetBicubicInterpolationFlag method
    activating more accurate parameterisation of 2D data for
    energy spectrum; improved comments

25 October 12: V.Ivanchenko (emstand-V09-05-59)
- G4UrbanMscModel95 - comment out unwanted warning at initialisation

25 October 12: V.Ivanchenko (emstand-V09-05-58)
-  G4hMultipleScattering - use G4UrbanMscModel95 as a default

21 October 12: V.Ivanchenko (emstand-V09-05-57)
- G4eBremsstrahlung, G4eIonisation,  G4hIonisation, G4ionIonisation -
    secondary particle type defined in constructors and not in Initialise()
    method, this is needed for correct initialisation at G4_PreInit

20 October 12: V.Ivanchenko (emstand-V09-05-56)
- G4CoulombScattering, G4NuclearStopping, G4eMultipleScattering,
  G4hMultipleScattering, G4ComptonScattering - substitute methods
    Model(), SetModel() by EmModel(), SetEmModel()
- G4NuclearStopping - added check on ion energy at the process level
    to speedup computations
- G4CoulombScattering - close possibility to change polar angle limit
    after first initialisation
- added warning to obsolete methods and classes

18 October 12: V.Ivanchenko (emstand-V09-05-55)
-  G4BetheBlochModel, G4BraggIonModel, G4BraggModel - define flag isIon
     for all nucleus except deuteron, triton and special DNA ions

14 October 12: V.Ivanchenko (emstand-V09-05-54)
- G4XrayRayleighModel - V. Grichine, update of xsc and angular distribution
- G4eBremParametrizedModel - use G4DipBustGenerator for angular distribution
- G4ModifiedTsai - removed old obsolete interface

08 October 12: V.Ivanchenko (emstand-V09-05-53)
- G4KleinNishinaModel - fixed computation of electron energy

05 October 12: V.Ivanchenko (emstand-V09-05-52)
- G4UrbanMscModel95 - added protection into GetTrueStepLength method (true
    legth cannot exceed physics path length
- G4UrbanMscModel96 - new version of the model

01 October 12: V.Ivanchenko (emstand-V09-05-51)
- G4KleinNishinaModel - fixed infinite loop

01 October 12: G.Cosmo (emstand-V09-05-50)
- Explicitly use inclusion of header for system of units in G4GammaConversion.

28 September 12: V.Ivanchenko (emstand-V09-05-49)
- G4WentzelVIModel, G4WentzelVIRelModel - fixed non-reproducibility
    recently introduced
- G4eBremssrahlungRelModel - return back G4ModifiedTsai as a default

28 September 12: V.Ivanchenko (emstand-V09-05-48)
- G4UrbanMscModel90, G4UrbanMscModel92, G4UrbanMscModel93,
  G4UrbanMscModel95, G4GoudsmitSaundersonMscModel - fixed computations
    of effective electron energy at a step
- G4ModifiedTsai - fixed angular distribution in backward hemisphere
- G4GammaConversion - explicit inclusion of header for units.
- G4KleinNishinaModel - minor cleanup

21 September 12: V.Ivanchenko (emstand-V09-05-47)
- G4DipBustGenerator, G4SauterGavrilaAngularDistribution - added
    protection to angular sampling theta < pi, and optimise
    computation for ultrarelativistic particles

20 September 12: V.Ivanchenko (emstand-V09-05-46)
- G4GammaConversion - changed low energy limit of the high energy
    model from 100 to 80 GeV
- G4eBremsstrahlungRelModel - use G4DipBustGenerator for sampling of
    bremsstrahlung angle instead of G4ModifiedTsai
- G4SeltzerBergerModel - for the cut on gamma energy below 5% added
    extra factor 1.2 to max value of the cross section when sample
    gamma energy (reduced number of cases when differencial cross
    section exceed estimated maximum of the cross section.

18 September 12: V.Ivanchenko (emstand-V09-05-45)
- G4UrbanMscModel90, G4UrbanMscModel92, G4UrbanMscModel93,
    G4UrbanMscModel95, G4WentzelVIModel,
    G4GoudsmitSaundersonMscModel - added protection: step limit
    from msc cannot be smaller than tlimitminfix (to address bug#1345)
- G4IonFluctuations - added simplified fluctuations for very small steps
    (to address bug#1345)

28 August 12: V.Ivanchenko (emstand-V09-05-44)
- G4CoulombScattering - fixed initialisation for the case when polar angle
    limit is below pi

24 August 12: V.Ivanchenko (emstand-V09-05-43)
- G4CoulombScatteringModel, G4eCoulombScatteringModel, G4UrbanMscModel90
  G4UrbanMscModel92, G4UrbanMscModel93, G4UrbanMscModel95,
  G4WentzelVIModel, G4GoudsmitSaundersonMscModel - sampling of scattering
    moved from PostStep to AlongStep
- G4KleinNishinaModel - added simplified PDF function

27 July 12: V.Ivanchenko (emstand-V09-05-42)
- G4NuclearStopping - added check of upper energy limit (for CPU
    performance reasons)
- G4ICRU49NuclearStoppingModel - reduced upper limit for protons from
    100 MeV to 1 MeV (for CPU performance reasons)

26 July 12: V.Ivanchenko (emstand-V09-05-41)
- fixed source.cmake

26 July 12: V.Ivanchenko (emstand-V09-05-40)
- updated source.cmake

26 July 12: V.Ivanchenko (emstand-V09-05-39)
- G4PEEffectFluoModel, G4PEEffectModel - use G4VEmAngularDistribution
    interface
- G4SauterGavrilaAngularDistribution extracted from G4PEEffectModel,
    limit gamma fator is changed from 5 to 30 (no angular sampling
    above ~15 MeV instead of 2.5 MeV)

20 July 12: V.Ivanchenko (emstand-V09-05-38)
- G4ModifiedTsai - improved sampling of bremsstarhlung in backward
    hemisphere

20 July 12: V.Ivanchenko (emstand-V09-05-37)
- WentzelVIModel - return back old step limitation
- G4DipBustGenerator, G4ModifiedTsai, G4SeltzerBergerModel,
  G4eBremParametrizedModel, G4eBremsstrahlungModel,
  G4eBremsstrahlungRelModel - use SampleDirection interface of the
  G4VEmAngularDistribution interface

17 July 12: V.Ivanchenko (emstand-V09-05-36)
- G4UniversalFluctuation, G4IonFluctuations - fixed bug in sampling
    in the case of Gamma-distribution (thick target at low energy)

17 July 12: V.Ivanchenko (emstand-V09-05-35)
- G4SeltzerBergerModel - optimisation of sampling for e+
- WentzelVIModel - optimisation of sampling of scattering for
    large value of mean scattering angle
- G4UniversalFluctuation, G4IonFluctuations - improved sampling for
    "thick" absorber

13 July 12: V.Ivanchenko (emstand-V09-05-34)
- G4GammaConversion - use relativistic model above 100 GeV - more
    accurate cross sections + LPM effect at very high energy
- G4ComptonScattering, G4CoulombScattering, G4PhotoElectricEffect,
    G4eplusAnnihilation use EmModel and SetEmModel methods of the base
    class at initialisation

13 July 12: V.Ivanchenko (emstand-V09-05-33)
- StartTracking method is implemented in all msc models

10 July 12: G.Cosmo (emstand-V09-05-32)
- Explicitly use inclusion of headers for system of units and physical
  constants, in plan to remove implicit inclusion from globals.hh.

05 July 12: V.Ivanchenko (emstand-V09-05-31)
- G4ICRU49NuclearStoppingModel, G4IonCoulombCrossSection,
  G4IonCoulombScatteringModel, G4ScreeningMottCrossSection,
  G4UrbanMscModel93, G4UrbanMscModel95 - fixed shadowing

04 July 12: V.Ivanchenko (emstand-V09-05-30)
- G4GammaConversion, G4KleinNishinaModel, G4KleinNishinaCompton,
  G4PEEffectFluoModel - minor cleanup of initialisation
- G4PhotoElectricEffect - build cross section table above 200 keV
- G4ComptonScattering - build 2 cross section tables - below and above
    1 MeV using different technique for interpolation
- G4CoulombScattering - improved list of options/flags in the
    constructor to reduce size of cross section tables

22 June 12: V.Ivanchenko (emstand-V09-05-29)
- Fixed non-reproducibility in msc models for the case if more than
    several models defined for different energy interval

15 June 12: V.Ivanchenko (emstand-V09-05-28)
- G4GoudsmitSaundersonMscModel - fixed precision lost providing FPE

14 June 12: V.Ivanchenko (emstand-V09-05-27)
- G4ScreeningMottCrossSection - added extra protections against FPE

11 June 12: V.Ivanchenko (emstand-V09-05-26)
- G4SeltzerBergerModel - more accurate majoranta definition for
    low-energy e-
- G4ScreeningMottCrossSection - added protection against FPE
    due to low-energy value of internal table

10 June 12: V.Ivanchenko (emstand-V09-05-25)
- G4SeltzerBergerModel - more effective sampling of energy

09 June 12: V.Ivanchenko (emstand-V09-05-24)
- G4SeltzerBergerModel - more accurate simulation of tail for e+

08 June 12: V.Ivanchenko (emstand-V09-05-23)
- Fixed shadowing

07 June 12: V.Ivanchenko (emstand-V09-05-22)
- G4ScreeningMottCrossSection, G4eSingleCoulombScatteringModel -
    C. Consolandi and P.G. Rancoita provided updated version of
    electron scattering code based on analytical approximation of
    the Mott cross section by means Hose coefficients
- G4MottCoefficients - new class by above scattring model

07 June 12: V.Ivanchenko (emstand-V09-05-21)
- G4WentzelVIModel - fixed sampling of single scattering
- G4eMultipleScattering, G4hMultipleScattering - minor optimisation
    of initialisation

01 June 12: V.Ivanchenko (emstand-V09-05-20)
- G4SeltzerBergerModel - fixed warning at Windows

01 June 12: V.Ivanchenko (emstand-V09-05-19)
- G4SeltzerBergerModel - fixed problem introduced in previous tag

31 May 12: V.Ivanchenko (emstand-V09-05-18)
- G4SeltzerBergerModel - fixed minor problem of sampling for positrons;
                       - make internal data structure static to be used
                         by both e+ and e- models - some memory reduction
                       - used simplified computation of majoranta valid
                         for data with more detailed grid;
                       - make internal data vectors static to reduce
                         size of data in run time
- G4DipBustGenerator - fixed model description
- G4eBremsstrahlungRelModel (A.Schaelicke switch full screening off)
- G4eplusAnnihilation (D. Sawkey) fixed propagate weight to secondaries

09 May 12: V.Ivanchenko (emstand-V09-05-17)
- G4CoulombScattering - minor modification of initialisation allowing
    to have add custom model with specific paraaameters but reuse
    low andhigh energy limits defined for the process

24 April 12: V.Ivanchenko (emstand-V09-05-16)
- G4CoulombScattering - added method MinPrimaryEnergy allowing to
    define low edge of physics table when Coulomb scattering is combined with
    multiple or single scattering
- G4WentzelVIModel - fixed a bug introduced in previous tag
- G4eCoulombScatteringModel - removed usage of local table for cross section
    introduced in previous tag

20 April 12: V.Ivanchenko (emstand-V09-05-15)
- G4CoulombScatteringModel, G4eCoulombScatteringModel, G4UrbanMscModel90
  G4UrbanMscModel92, G4UrbanMscModel93, G4UrbanMscModel95,
  G4WentzelVIModel, G4GoudsmitSaundersonMscModel - moved
    cross section table from process to model, removed method GetLambda
- G4GoudsmitSaundersonMscModel - improved method of definition of
    screening parameter

16 April 12: A.Schaelicke & F.Garay
- G4eBremsstrahlungRelModel fixed use of screening function

13 April 12: L.Urban
- G4UrbanMscModel95 - fixed tail using single scattering model

28 March 12: V.Ivanchenko (emstand-V09-05-14)
- source.cmake fixed - G4UrbanMscModel92 was forgotten

15 March 12: V.Ivanchenko (emstand-V09-05-13)
- G4GoudsmitSaundersonMscModel - fixed FPE bug - lateral displacemnt
    should not be sampled for plural scattering

12 March 12: V.Ivanchenko (emstand-V09-05-12)
- G4UrbanMscModel92, G4UrbanMscModel93, G4UrbanMscModel95 - a protection
    against big scattering angles for e+- (E > 20 MeV) is added; the
    protection cut tail of scattering angles to avoid artifitial scattering
    of high energy e+-; in the case of E > 1 GeV and cosTheta<0 a
    Warning will be printed out
- G4WentzelVIModel - fixed bug in lateral displacement sampling

07 March 12: V.Ivanchenko (emstand-V09-05-11)
- G4IonCoulombScatteringModel - fixed numerical problem for small
    scattering angles

21 February 12: V.Ivanchenko (emstand-V09-05-10)
- G4UrbanMscModel93, G4UrbanMscModel95 - fixed G4Exception printout

14 February 12: V.Ivanchenko (emstand-V09-05-09)
- previous tags were rejected by mistake

12 February 12: V.Ivanchenko (emstand-V09-05-08)
- G4WentzelOKandVIxSection, G4WentzelVIModel - cleanup of previous modifications

10 February 12: V.Ivanchenko (emstand-V09-05-07)
- G4WentzelVIModel - improved algorithm of sampling of scattering angle and
    displacement: chice between 1 or 2 sub-steps

09 February 12: V.Ivanchenko (emstand-V09-05-06)
- G4WentzelOKandVIxSection - fixed typo

09 February 12: V.Ivanchenko (emstand-V09-05-05)
- G4UniversalFluctuation L.Urban improved parameterisation for
    thin gas layers
- G4WentzelOKandVIxSection - different screening functions for
    e+- and heavy particles

31 January 12: V.Ivanchenko (emstand-V09-05-04)
31 January 12: V.Ivanchenko (emstand-V09-05-03)
- G4WentzeVIModel - fixed bug in computation of lateral displacement
    (Leif Raedel report# 1114 in HyperNews forum)

27 January 12: V.Ivanchenko (emstand-V09-05-02)
- G4WentzeVIModel - added G4Exception to identify misuse of transport
    cross section computation

26 January 12: V.Ivanchenko (emstand-V09-05-01)
- G4WentzelOKandVIxSection - fixed incorrect selection of limit
    on minimal angle (affect large angle scattering of muons)

12 January 12: V.Ivanchenko (emstand-V09-05-00)
- G4UniversalFluctuation - (L.Urban) fixed sampling at small steps
    (below 10 um) in heavy media reported at 8th Space User Workshop
    (Tsukuba, December, 2012) about shift in range of 3 MeV muons
- G4GoudsmitSaundersonTable, G4GoudsmitSaundersonMscModel - fixed
    compillation problem at Ubuntu; the problem was in non-accurate
    usage of fscanf function reading data file

25 November 11: V.Ivanchenko (emstand-V09-04-55)
- G4UrbanMscModel90, G4UrbanMscModel93, G4UrbanMscModel95 - added
  protection against numerical problems of sampling scattering with
  small step at high energy to avoid reflection back;
  added G4Exception to control reflection back - it issues a warning

18 November 11: V.Ivanchenko (emstand-V09-04-54)
- G4UrbanMscModel95 - optimized "samplez" sampling - applied it
    only for for medium step size, not apply to small steps and
    on steps equal to electron range

17 November 11: V.Ivanchenko (emstand-V09-04-53)
- G4SeltzerBergerModel - suppress warning printed for low-energy
    electrons (E < 1 keV)

14 November 11: V.Ivanchenko (emstand-V09-04-52)
- G4SeltzerBergerModel - fixed cross section for positrons

12 November 11: V.Ivanchenko (emstand-V09-04-51)
- G4SeltzerBergerModel - added correction for cross section for positrons

11 November 11: V.Ivanchenko (emstand-V09-04-50)
- G4eeToTwoGammaModel, G4eSingleCoulombScatteringModel, G4eCoulombScatteringModel,
  G4eBremsstrahlungRelModel, G4eBremsstrahlungModel, G4eBremsstrahlung,
  G4XrayRayleighModel, G4WentzelVIModel, G4UrbanMscModel95, G4UrbanMscModel93,
  G4UrbanMscModel90, G4SeltzerBergerModel, G4ScreeningMottCrossSection,
  G4PEEffectModel, G4PEEffectFluoModel, G4PAIPhotonModel, G4PAIModel,
  G4MollerBhabhaModel, G4KleinNishinaModel, G4KleinNishinaCompton, G4ICRU73QOModel,
  G4BraggModel, G4BetheBlochModel, G4PAIxSection, G4InitXscPAI - fixed trivial
    problems (mainly pedantic initialisation) reported by the Coverity tool
- G4alphaIonisation - warning is added saying that the process should not be used

2 November 11: G.Cosmo (emstand-V09-04-49)
- Correction in sources.cmake script.

1 November 11: V.Ivanchenko (emstand-V09-04-48)
- G4eCoulombScatteringModel - fixed compilation problem introduced
    in the previous tag

31 October 11: V.Ivanchenko (emstand-V09-04-47)
- G4eCoulombScatteringModel - rename local member and set method
    SetLowEnergyThreshold to avoid hidden of the method of the
    base class (addressed bug# 1256)

28 October 11: V.Ivanchenko (emstand-V09-04-46)
- G4PAIxSection, G4PAIySection,
- G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable - migration to
    the new G4Exception signature
- G4ScreeningMottCrossSection, G4eSingleCoulombScatteringModel - new classes
- G4eBremsstrahlungRelModel - only members used in a derived class are
                              protected, other moved to be private
- G4UrbanMscModel95 - return back default FacSafety = 0.3
- G4SeltzerBergerModel - G4LEDATA is used as a path to the data structure
- G4eCoulombScatteringModel - low-limit is increased from 10 eV to 1 keV
    for the reason of HEP production, may be changed by low-energy user

10 October 11: V.Ivanchenko (emstand-V09-04-45)
- G4UrbanMscModel95 - speadup a bit in the case UseSafety (FacSafety = 0.5)
- G4eeToTwoGammaModel - added polarization
- G4eBremsstrahlungRelModel - make few methods and class members protected
    to be used in G4SeltzerBergerModel
- G4SeltzerBergerModel - new model for bremsstrahlung

16 September 11: V.Ivanchenko (emstand-V09-04-44)
- G4BetheBlochModel - added protection for high correction to
    energy loss (important if a step length is nearly the range)

14 September 11: V.Ivanchenko (emstand-V09-04-43)
- G4eCoulombScatteringModel - low-limit is increased from 1 eV to
    10 eV; particles below this limit are killed - a protection
    against low-energy particles doing many steps

4 September 11: V.Ivanchenko (emstand-V09-04-42)
- G4UrbanMscModel95 - L.Urban return back optimisation of step
    limitation using FactorSafety parameter for the UseSafety
    option of step limitation (important for CPU performance
    of default Physics List)

20 August 11: V.Ivanchenko (emstand-V09-04-41)
- G4UrbanMscModel95 - minor change of arithmetic computation

18 August 11: V.Ivanchenko (emstand-V09-04-40)
- G4MollerBhabhaModel - removed limitations on cut value to be
                        able to combined with LIvermore and
                        Penelope models

18 August 11: V.Ivanchenko (emstand-V09-04-39)
- G4eMultipleScattering - G4UrbanMscModel95 become default

08 August 11: V.Ivanchenko (emstand-V09-04-38)
- G4UrbanMscModel95 L.Urban provided new of tail parameter "c" and
                    removed CPU optimisation near boundary dependent
                    on facsafety, which not allowed to have precise
                    simulation in vicinity of geometrical boundary;
                    V.Ivanchenko added minor optimisation into
                    inline method UpdateCache()

28 July 11: V.Ivanchenko (emstand-V09-04-37)
- G4PAIxSection, G4InitXscPAI - fixed typo in tag 035

28 July 11: V.Ivanchenko (emstand-V09-04-36)
-  G4KleinNishinaModel, G4PEEffectFluoModel - initialise deexcitation
   flag;
-  G4GoudsmitSaundersonMscModel - fixed Coverity warnings

25 July 11: V.Ivanchenko (emstand-V09-04-35)
- G4PAIxSection, G4InitXscPAI - fixed Coverity tool warnings
- G4KleinNishinaCompton, G4KleinNishinaModel - added extra protection
  to avoid precision loss in sampling of scattering angle

06 June 11: V.Ivanchenko (emstand-V09-04-34)
- G4UrbanMscModel95 - L.Urban fixed typo in sampling of theta
                    - V.Ivanchenko optimized UpdateCache computation
                      reducing number of calls to std functions

29 May 11: V.Ivanchenko (emstand-V09-04-33)
- G4UrbanMscModel95 - fixed FPE problem at low-energy (about 10 eV)

14 May 11: V.Ivanchenko (emstand-V09-04-32)
- G4WentzelOKandVIxSection - tuned screening function
- G4GoudsmitSaundersonMscModel - added protection against infinite loop
  for solving equation for the screening parameter (bug#1221)

08 May 11: V.Ivanchenko (emstand-V09-04-31)
- G4UrbanMscModel95 - enable sampling along the step for displacement
- G4PEEffectFluoModel - added protection
- G4KleinNishinaModel - limitFactor is set to 4 (was 10)

27 May 11: V.Ivanchenko (emstand-V09-04-30)
- G4MollerBhabhaModel - more coherent usage of cut at low-energy
                        for dedx and x-section computation,
                        important for cuts below 1 keV
- G4eeToTwoGammaModel - added numerical protection in cross section
    computation for very small energy

26 May 11: V.Ivanchenko (emstand-V09-04-29)
- Fixed source.cmake

26 May 11: V.Ivanchenko (emstand-V09-04-28)
- Fixed problems in new classes

26 May 11: V.Ivanchenko (emstand-V09-04-27)
- V.Grichine have added two new classes :
             G4XrayRayleighModel - simplified Rayleigh scattering
             G4DipBustGenerator - bremsstrahlung angular generator

24 May 11: V.Ivanchenko (emstand-V09-04-26)
- G4BraggModel, G4BraggIonModel - fixed bug introduced in the previous tag

24 May 11: V.Ivanchenko (emstand-V09-04-25)
- G4BraggModel, G4BraggIonModel - use ASTAR and PSTAR parameterisations
  for moleculas from list of ICRU'49

24 May 11: V.Ivanchenko (emstand-V09-04-24)
- G4KleinNishinaModel - added extra protection against infinite loop
  during sampling of final state (very low-energy gamma)
- G4UrbanMscModel95 - disable sampleZ option
- G4BraggModel, G4BraggIonModel - minor cleanup of the code

16 May 11: V.Ivanchenko (emstand-V09-04-23)
- G4InitXscPAI,G4IonCoulombCrossSection,G4PAIModel,G4PAIPhotonModel,
  G4PAIxSection, G4PAIySection  - fixed gcc-4.6.0 warnings

04 May 2011: V.Ivant (emstand-V09-04-22)
- Removed obsolete unused classes: G4ionGasIonisation,
  G4CoulombScatteringModel, G4UniversalFluctuation93,
  G4UrbanMscModel92
- Fixed Coverity warnings
- G4NuclearStopping - use new sub-type fNuclearStopping

01 May 2011: V.Ivant (emstand-V09-04-21)
- G4PhotoElectricEffect, G4ComptonScattering, G4CoulombScattering
  make constructors in the same style
- G4eplusAnnihilation - disable creation of PhysicsTable - compute
  cross section in run time (no visible CPU penalty, reduced memory)

01 May 2011: V.Ivant (emstand-V09-04-20)
- G4KleinNishinaModel - removed parasitice printout
- G4CoulombScattering - removed obsolete unused methods

29 April 2011: V.Ivant (emstand-V09-04-19)
- G4KleinNishinaModel - fixed compillation warning at SLC4

29 April 2011: V.Ivant (emstand-V09-04-18)
- G4KleinNishinaModel - fixed infinite loop in new model for 1 keV gamma

27 April 2011: V.Ivant (emstand-V09-04-17)
- G4UrbanMscModel95 - L.Urban fixed FPE problems in the new model,
  now by default samplez=true (complite sampling of the displacement)
- G4ModifiedTsai - V. Grichine clean-up of PolarAngle(Tkin,...) method

18 April 2011: V.Ivant (emstand-V09-04-16)
- Fixed problems of the previous tag

08 April 2011: V.Ivant (emstand-V09-04-15)
- G4eBremParametrizedModel (A.Schaelicke) - new model

07 April 2011: V.Ivant (emstand-V09-04-14)
- G4IonFluctuation, G4UniversalFluctuations - replaced Gauss
    sampling by Gamma function sampling
- G4MollerBhabhaModel - modified parameterisation of dedx at
    very low energy providing more smooth shape

30 March 2011: V.Ivant (emstand-V09-04-13)
- G4WentzelOKandVIxSection, G4eCoulombScatteringModel - fixed problem
    introduced in previous tags for compounds

29 March 2011: V.Ivant (emstand-V09-04-12)
- G4WentzelOKandVIxSection - return back to the version of 9.4

29 March 2011: V.Ivant (emstand-V09-04-11)
- G4UrbanMscModel95 - set samplez=false to avoid numerical problem

28 March 2011: V.Ivant (emstand-V09-04-10)
- G4UrbanMscModel90, G4UrbanMscModel92, G4UrbanMscModel93,
  G4UrbanMscModel95, G4GoudsmitSaundersonMscModel,
  G4WentzelVIModel - updated G4VMscModel methods signature

25 March 2011: V.Ivant (emstand-V09-04-09)
- G4UrbanMscModel90, G4UrbanMscModel92, G4UrbanMscModel93,
  G4UrbanMscModel95, G4GoudsmitSaundersonMscModel,
  G4WentzelVIModel - use G4VMscModel methods to compute range
                     and inverse range
- G4WentzelOKandVIxSection - remove special trietment of e-
- G4ComptonScattering - use by default old G4KleinNishinaCompton

24 March 2011: V.Ivant (emstand-V09-04-08)
- G4UrbanMscModel95 - (L.Urban) new version of msc model which
   includes improved sampling of the tail of angular distribution,
   sampling of lateral displacement and true step length
- G4WentzelOKandVIxSection - fixed sampling of single scattering

22 March 2011: V.Ivant (emstand-V09-04-07)
- General cleanup - removed MinEnergyCut methods, improved comments

21 March 2011: V.Ivant (emstand-V09-04-06)
- G4PAIySection - added method ComputeLowEnergyCof and usage of
   this method allowing extend low energy limit of the model down
   to 10 eV (V.Grichine)
- G4MollerBhabhaModel - cleanup
- G4ComptonScattering - use G4KleinNishinaModel as a default
- G4PhotoElectricEffect - use G4PEEffectFluoModel as a default
- G4KleinNishinaModel - use dynamic selection between high energy
   sampling and sampling with Doppler broading
- G4GoudsmitSaundersonMscModel - restore version of 9.3ref05

25 February 2011: V.Ivant (emstand-V09-04-05)
- G4UrbanMscModel90, G4UrbanMscModel92, G4UrbanMscModel93 use
   simpified computation of geom path length if true path length
   is equal to the range (minor CPU improvement and more stable
   computation)

17 February 2011: V.Ivant (emstand-V09-04-04)
- G4PEEffectFluoModel - comment out parasitic cout

11 February 2011: V.Ivant (emstand-V09-04-03)
- G4PEEffectFluoModel - fixed K-shell selection (was off by mistake)

01 February 2011: V.Ivant (emstand-V09-04-02)
- G4MollerBhabhaModel - fixed expression for computation of positron dedx
                        according to PDG formula and original paper
                        (thanks to Nicola Mori)

04 January 2011: V.Ivant (emstand-V09-04-01)
- G4GoudsmitSaundersonMscModel, G4UrbanMscModel90, G4UrbanMscModel92,
  G4UrbanMscModel93 use recommended method Value(e) to access transport
  cross section instead of obsolete GetValue
- G4KleinNishinaModel - improved computation of kinematics

23 December 2010: V.Ivant (emstand-V09-04-00)
- G4IonCoulombScatteringModel, G4GoudsmitSaundersonMscModel,
  G4GoudsmitSaundersonTable - fixed Coverity warnings making more
  pedantic initialisation

29 November 2010: V.Ivant (emstand-V09-03-31)
- G4IonCoulombScatteringModel, G4IonCoulombCrossSection - C.Consolandi
  added extra screening factor for low-energy heavy ions.

23 November 2010: V.Ivant (emstand-V09-03-30)
- G4PAIModel, G4PAIySection - V.Grichine fix of a bug in G4_Ar

21 November 2010: V.Ivant (emstand-V09-03-29)
- G4PEEffectFluoModel, G4KleinNishinaModel - fixed energy balance

17 November 2010: V.Ivant (emstand-V09-03-28)
- G4ICRU73QOModel (A.Bagulya) - fine tuning for 9.4, low limit is
  reduced from 10 keV to 5 keV

13 November 2010: V.Ivant (emstand-V09-03-27)
- G4UrbanMscModel90, G4UrbanMscModel92, G4UrbanMscModel93 - added
  warning messages;
- G4WentzelOKandVIxSection - fixed computation of nuclear form-factor
- G4eCoulombScatteringModel - fixed computation of nuclear recoil

12 November 2010: V.Ivant (emstand-V09-03-26)
- G4IonCoulombCrossSection and G4IonCoulombScatteringModel -
  new model of single scattering of ions (C.Consolandi)
- G4BetheBlochModel - Shell corrections factor according to ICRU'49
                      (returned back to version of 9.3)
- G4WentzelVIModel - added usage of geometry factor and the option
  UseDistanceToBoundary;

04 November 2010: V.Ivant (emstand-V09-03-25)
- Fixed warnings of the Coverity tool (pedantic initialisation);

26 October 2010: V.Ivant (emstand-V09-03-24)
- Fixed problem reported by the Coverity tool (mainly pedantic
  initialisation);
- G4BetheHeitlerModel, G4PairProductionRelModel - removed unused
  internal table of cross section
- G4WaterStopping - fixed bug in index of data for Fe ion

14 October 2010: V.Ivant (emstand-V09-03-23)
- G4ModifiedTsai - added (moved from lowenergy)
- G4PairProductionRelModel, G4eBremsstrahlungRelModel - return back
     the version of 9.4beta (disable tag 21); use general interface
     to sample polar angular distribution (G4ModifiedTsai - default)

28 September 2010: V.Ivant (emstand-V09-03-22)
- G4ionIonisation, G4alphaIonisation - removed obsolete nuclear stopping
      flag and Get/Set methods (nuclear stopping is simulated by the
      dedicated G4NuclearStopping process)

12 September 2010: V.Ivant (emstand-V09-03-21)
- G4BetheBlochModel - fixed shell corrections
- G4PairProductionRelModel, G4eBremsstrahlungRelModel - fixed
     SetCurrentElement method, fix is important for unit tests

12 August 2010: V.Ivant (emstand-V09-03-20)
- G4UniversalFluctuation - L.Urban revision of width correction
  providing better results for thin targets and a good tail

14 June 2010:  V.Ivant (emstand-V09-03-19)
- G4UniversalFluctuation93 new class keeping version of the release 9.3
  for the G4UniversalFluctuation
- G4UniversalFluctuation - improved comments

11 June 2010:  V.Ivant (emstand-V09-03-18)
- G4UniversalFluctuation - L.Urban fixed anomaly at the tail of
                           distribution for thin targets

4 June 2010:  V.Ivant (emstand-V09-03-17)
- G4ICRU73QOModel - fixed problems and add factor for transition to
                    Bethe-Bloch at 2 MeV
- G4hIonisation - use G4ICRU73QOModel for negatively charged particles
                  below 2 MeV
- G4BraggModel - above 2 MeV use ICRU'49 parameterisation for all atoms

June 3, 2010, V. Grichine
- G4PAIModel.cc, G4PAIPhotonModel.cc cout for the model initialisation

1 June 2010:  V.Ivant (emstand-V09-03-16)
- G4WentzelOKandVIxSection - optimized computation of the transport
                             cross section
- G4WentzelVIModel - optimized method of step limitation

27 May 2010:  V.Ivant (emstand-V09-03-15)
- G4BraggIonGasModel, G4BetheBlochIonGasModel - new ionisation models
                      for low density media
- G4ICRU73QOModel (A.Bagulya) new model for anti-particles
- G4hIonisation - use G4ICRU73QOModel for anti-particles
- G4WentzelOKandVIxSection - new class to compute cross sections and
                             sample scattering angle
- G4WentzelVIModel, G4eCoulombScatteringModel, G4CoulombScatteringModel
                    use new class G4WentzelOKandVIxSection

20 May 2010:  V.Ivant (emstand-V09-03-14)
- G4UrbanMscModel93 - L.Urban removed randomisation of step limit for the
                      first step in any volume in the case of UseSafety
- Removed obsolete models: G4UrbanMscModel, G4UrbanMscModel2, G4UrbanMscModel71,
  G4MultipleScattering, G4ComptonScattering52, G4PolarizedComptonScattering

17 May 2010:  V.Ivant (emstand-V09-03-13)
- G4WentzelVIModel, G4eCoulombScatteringModel - added momentum dependent
       limit of scattering angle between single and multiple scattering
       which allowing to use  G4WentzelVIModel with optical model
       of hadron scattering

17 May 2010:  V.Ivant (emstand-V09-03-12)
- G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable (O.Kadri) -
       optimized code to improve speed by addition extra class members

30 April 2010:  V.Ivant (emstand-V09-03-11)
- G4UrbanMscModel93 - L.Urban add randomisation of step limit for the
                      first step in any volume

28 April 2010:  V.Ivant (emstand-V09-03-10)
G4eBremsstrahlungModel - fixed SelectRandomAtom method (bug report #1115)

26 April 2010:  V.Ivant (emstand-V09-03-09)
- G4ASTARStopping, G4PSTARTStopping - C-arrays sustituted by G4PhysicsVector
            with spline; reviewed names of materials (G4_He, G4_PHOTO_EMULSION,
            G4_NYLON-6-6)
- G4ASTARStopping - fixed G4_O data
- G4PSTARStopping - fixed G4_Pt and G4_PROPANE data
- G4WaterStopping - cleanup GetElectronicDEDX method

16 April 2010:  V.Ivant (emstand-V09-03-08)
- G4GoudsmitSaundersonMscModel (O.Kadri) - improved numerical stability
            of computations for small angles by  direct xsection calculation
            not inverse of the inverse angular sampling without large angle
            rejection method longitudinal displacement is computed exactly
            from <z>
- G4GoudsmitSaundersonTable (O.Kadri)    - improved numerical stability by
            minimum of used arrays in computation within the dichotomy
            finding method
- G4eMultipleScattering, G4hMultipleScattering - improved printout at
                                                 initialisation

15 April 2010:  V.Ivant (emstand-V09-03-07)
- G4hMultipleScattering - removed old unused header of G4UrbanMscModel
- G4ASTARStopping.cc - disabled corrupted data for Oxygen

06 April 2010:  V.Ivant (emstand-V09-03-06)
- G4eBremsstrahlungRelModel, G4MollerBhabhaModel - set minimum cut
                      value to 0.1 keV

30 March 2010:  V.Ivant (emstand-V09-03-05)
- G4PolarizedComptonScattering - add message that this process is obsolete

22 March 2010:  V.Ivant (emstand-V09-03-04)
- G4eBremsstrahlungModel - reduced minThreshold to 0.1 keV
- G4MollerBhabhaModel - reduced minimum cut value to mean ionisation
                      potential

01 March 2010:  V.Ivant (emstand-V09-03-03)
- G4WentzelVIModel - added protections, added DefineMaterial() call
                     before computing cross section

31 March 2010:  V.Ivant (emstand-V09-03-02a)
- G4PolarizedComptonScattering - add message that this process is obsolete
- G4eCoulombScatteringModel - returned method default value 100 eV of 9.3 for
                              internal low limit

24 February 2010:  V.Ivant (emstand-V09-03-02)
- make a tag co-working with emutils-V09-03-02

19 February 2010:  V.Ivant (emstand-V09-03-01)
- G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable (O.Kadri)
      - fixed problems of small angle theta distributions

17 February 2010:  V.Ivant (emstand-V09-03-00)
- G4CoulombScatteringModel - Added comments to relativistic formula
- G4eCoulombScatteringModel - Added method SetLowEnergyLimit, default
                              value is set to 1 eV (before was 100 eV)
- G4CoulombScattering - Removed inclined method SetBuildTableFlag because
                        the method exist in the base class

03 December 09:  V.Ivant (emstand-V09-02-36)
- G4BetheBlochModel - (A.Lechner) return back commented out CorrectionAlongStep
                      method, returning back to normal ion ranges

03 December 09:  V.Ivant (emstand-V09-02-35)
- G4CoulombScatteringModel - (C.Consaldi) fixed relativistic formula

27 November 09:  V.Ivant (emstand-V09-02-34)
- G4ionIonisation - set linLossLimit 0.02

25 November 09:  V.Ivant (emstand-V09-02-33)
- G4LindhardPartition - moved back to TestEm7

10 November 09:  V.Ivant (emstand-V09-02-32)
- G4BetheBlochModel - minor speedup inside CorrectionsAlongStep method

10 November 09:  V.Ivant (emstand-V09-02-31)
- G4BetheBlochModel, G4BraggModel, G4BraggIonModel - remove computations
                       of nuclear stopping power, some CPU speadup
- G4NuclearStopping - updated process for computation of nuclear stopping
- G4ICRU49NuclearStoppingModel - model providing computation of nuclear
                      stopping

10 November 09:  V.Ivant (emstand-V09-02-30)
- Added G4alphaIonisation process

09 November 09:  V.Ivant (emstand-V09-02-29)
- G4BetheBlochModel, G4MollerBhabhaModel - compute density effect correction
                                           using method of G4IonisParamMat class
                                           applying revised parameterisation

09 November 09:  V.Ivant (emstand-V09-02-28)
- G4GoudsmitSaundersonMscModel (O.Kadri) - tuning small angle theta distributions
                       assuming the case of lambdan<1 as single scattering regime;
                       tuning theta sampling for theta below the screening angle
- G4LindhardPartition - moved from TestEm7 to the source

31 October 09:  V.Ivant (emstand-V09-02-27)
- Added G4UrbanMscModel92, G4UrbanMscModel93 - 9.2 and 9.3 versions
                       version of the Urban model
- Set default model G4UrbanMscModel92 for G4eMultipleScattering
- Added warting to obsolete msc classes G4MultipleScattering, G4UrbanMscModel,
                       G4UrbanMscMode2, G4MscModel71

28 October 09:  V.Ivant (emstand-V09-02-26)
- G4WentzelVIModel, G4eCoulombScatteringModel, G4CoulombScatteringModel - added
                       protection for very low energies

10 October 09:  V.Ivant (emstand-V09-02-25)
- G4WentzelVIModel and G4eCoulombScatteringModel - changed screening parameters

06 October 09:  V.Ivant (emstand-V09-02-24)
- G4GoudsmitSaundersonMscModel (O.Kadri) tuning small angle theta distributions
                       assuming the case of lambdan<1 as single scattering regime,
                       tuning theta sampling for theta below the screening angle

02 October 09:  V.Ivant (emstand-V09-02-23)
- G4eMultipleScattering - use as a default G4UrbanMscModel (the same as in 9.2)
- G4CoulombScattering - fixed compillation problem

30 September 09:  V.Ivant (emstand-V09-02-22)
- G4CoulombScattering - added cut per recoil
- G4BohrFluctuations - change internal parameter minNumberInteractionsBohr
                       from 10 to 2 to provide more smooth transition
                       to Landau regime in the case of small cuts
- G4eCoulombScatteringModel - added effective mass factor

28 August 09:  V.Ivant (emstand-V09-02-21)
- G4PAIModel - fixed problem conneted with modifications for
               G4PhysicsVector (removel of hidden bin)
- G4GoudsmitSaundersonMscModel, G4GoudsmitSaundersonTable - O.Kadri
               speadup computations, in particular, by reducing of
               number of calls to log

12 August 09:  V.Ivant (emstand-V09-02-20)
- G4PAIModel - fixed problem for high energy connected with bin number
- G4WentzelVIModel and G4eCoulombScatteringModel - extended low-energy
               cross section to 0.1 keV

27 July 09:  V.Ivant (emstand-V09-02-19)
- G4WentzelVIModel and G4eCoulombScatteringModel - fixed typo

26 July 09:  V.Ivant (emstand-V09-02-18)
- G4WentzelVIModel and G4eCoulombScatteringModel - fixed numerical
   problem at very high energy
- G4PAIModel - fixed problem for the case of several materials
- G4PAIySection - added protections for numerical exceptions

22 July 09:  V.Ivant (emstand-V09-02-17)
- G4NuclearStopping and G4ICRU49NuclearStoppingModel are added

20 July 09:  V.Ivant (emstand-V09-02-16)
- G4GoudsmitSaundersonMscModel - fixed computation of the displacement
- G4MultipleScattering, G4eMultipleScattering, G4hMultipleScattering
      - moved initialisation of models to the base class

9 July 09:  V.Ivant (emstand-V09-02-15)
- G4GoudsmitSaundersonMscModel - (O.Kadri) removed extra correcting factor
                                 for sampling in high-Z media
- G4hMultipleScattering - removed obsolete methods

19 June 09:  V.Ivant (emstand-V09-02-14)
- G4WaterStopping - (A.Ivantchenko) added Fe ion data
- G4GoudsmitSaundersonTable - reduce the size of the object file and
                              all standard library
- G4GoudsmitSaundersonMscModel - (O.Kadri) fixed unphysical peak at
                              very small angles; extend model to 100 TeV
- G4eCoulombScatteringModel, G4CoulombScatteringModel, G4WentzelVIModel,
                               - (C.Consolandi) fixed kinematic for ion/ion
                                 scattering

19 May 09: V.Ivant (emstand-V09-02-13)
- G4UrbanMscModel2  - (L.Urban) change in tail parameter

18 May 09:  V.Ivant (emstand-V09-02-12)
- G4UrbanMscModel2  - (L.Urban) correction in tail tuning using MuScat data

15 May 09:  V.Ivant (emstand-V09-02-11)
- G4WaterStopping  - fixed Ar data
- G4PairProductionRelModel - (A.Schaelicke) new relativistic model for
                              gamma conversion
- G4UrbanMscModel2  - (L.Urban) new version of theta0 and tail tuning

10 May 09: V.Ivant (emstand-V09-02-10)
- G4WentzelVIModel, G4eCoulombScattering, G4CoulombScattering - added relativistic
                      factor to Reserford cross section; set default limit on
                      kinetic energy of the recoil 100 keV

28 April 09: V.Ivant (emstand-V09-02-09)
- G4UrbanMscModel2  - (L.Urban) new tuning for the central part and for the
                      tail of the angular distribution using the old e-
                      scattering data only (Phys. Rev. 84 (1951) 634;
                      Phys. Rev. 61 (1942) 254)
                    - corrected logic in ComputeTruePathLengthLimit method
                      for type=fUseDistanceToBoundary
- G4UrbanMscModel   - frozen version of G4UrbanMscModel2 of g4 9.2
- G4WentzelVIModel, G4eCoulombScattering  - reduce low-limit from 1 keV to 0.1 keV
                      to provide smooth transport cross section table

23 April 09: V.Ivant (emstand-V09-02-08)
- G4BetheBlochModel - do not use pointer to GenericIon introduced in the
                      previous tag due to problem of simple PhysLists without ions

20 April 09: V.Ivant (emstand-V09-02-07)
- G4BetheBlochModel - fixed and simplified initialisation for ions needed for
                      the new G4IonParametrisedLossModel of low-energy package
- G4GoudsmitSaundersonMscModel - (O.Kadri) cleanup: discarded no scattering and
                      single scattering theta sampling from SampleCosineTheta()
                      which means the splitting step into two sub-steps occur
                      only for msc regime

12 April 09: V.Ivant (emstand-V09-02-06)
- Simplified initialisation of all models
- G4UrbanMscModel, G4UrbanMscModel2, G4UrbanMscModel90 - use methods
   of G4VMscModel for interface to geometry

07 April 09: V.Ivant (emstand-V09-02-05)
- G4IonFluctuations - T.Toshito removed extra phenomenological factor
                      in fluctuation width
- G4HeatedKleinNishinaCompton - V.Grichine added a prototype model for
                                plasma

21 March 09: V.Ivant (emstand-V09-02-04)
- G4UniversalFluctuation - L.Urban introduce modification in width
    correction, the dependence of the correction on energy deposition
    at previous steps is removed (addresses T2K report)

20 March 09: V.Ivant (emstand-V09-02-03)
- G4GoudsmitSaundersonMscModel fixed compillation problem

12 March 09: V.Ivant (emstand-V09-02-02)
- G4GoudsmitSaundersonMscModel fixed compillation problem
- G4UniversalFluctuation - add temporary fix for T2K report

05 March 09: V.Ivant (emstand-V09-02-01)
- New G4GoudsmitSaundersonMscModel is added
- G4WentzelVIModel, G4eCoulombScattringModel:
    o substitute scaling of low-energy limit by setting 1 keV for
      all particles;
    o use EGSnrc form of screening parameter (second order correction)

20 February 09: V.Ivant (emstand-V09-02-00)
- Move all virtual methods from inline to source
G4PEEffectModel - substitute ComputeMeanFreePath by CrossSectionPerVolume
                  (minor CPU speadup for compound materials)
G4PAIModel, G4PAIPhotonModel - remove usage of random numbers at
                   initialisation (potential non-reproducibility)
G4WentzelVIModel - use generic methods of G4VMscModel to access safety
                   and other geometry information

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 initialisation 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..
