$Id: History,v 1.108 2010/03/09 02:49:44 kurasige Exp $
-------------------------------------------------------------------

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

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

     ----------------------------------------------------------
     * Reverse chronological order (last date on top), please *
     ----------------------------------------------------------
Mar. 9, 2010 Hisaya Kurashige (track-V09-03-00)
- Change G4String to a pointer of G4String 
  for prooperty to indicate type of UserTrackInformation 
- Change G4VUserTrackInformation::Print() to a simple virtual method
  form pure-virtual 

Oct. 19, 2009 Hisaya Kurashige (track-V09-02-04)
-added a string prooperty to indicate type of UserTrackInformation


June 18, 2009 Hisaya Kurashige (track-V09-02-03)
-added SetLowEnergyLimit method (Vladimir)


May.  27, 2009 Hisaya Kurashige (track-V09-02-02)
- Add lowEnergyLimit = 1 eV in lowEnergyLimit = 1 eV (Vladimir)

Apr.  2, 2009 Hisaya Kurashige (track-V09-02-01)
- Add protection for the case mass==0 and T==0 in GetVelocity

Apr.  2, 2009 Hisaya Kurashige (track-V09-02-00)
- Modify GetVelocity to improve performance 

Oct. 24, 2008 Hisaya Kurashige (track-V09-01-02)
- change fpCreatorProcess and fpLCAtVertex in G4Track to  'const' pointer   
- change fpProcessDefinedStep in G4StepPoint to  'const' pointer   

 
Feb. 5, 2008 Hisaya Kurashige (track-V09-01-01)
- reset non-ionizing energy loss in G4Step::ResetTotalEnergyDeposit
  in order to initialize NIEL in each step

Jan. 12, 2008 Hisaya Kurashige (track-V09-01-00)
- add non-ionizing energy loss to EM physics (V.Ivanchenko)

Oct. 02, 2007 Hisaya Kurashige (track-V09-00-02)
- Add protection in G4Track::GetVolume to avoid core dump

Aug. 07, 2007 Hisaya Kurashige (track-V09-00-01)
- Add  get method for non-ionizing energy deposit in G4Step


Mar 30, 07 Hisaya Kurashige (track-V08-02-02)
- Fix weight treatment in G4ParticleChange

Mar 26, 07 Hisaya Kurashige (track-V08-02-01)
- Added Non-Ionizing Energy Deposit in G4Step and G4VParticleChange

Mar 11, 07 Hisaya Kurashige (track-V08-02-00)
- Added magnetic moment in G4DynamicParticle (co-work with particles-V08-02-00)
- Fixed treatment of parent's weight in G4ParticleChange 

Nov  3, 06 J.Apostolakis (track-V08-01-04)
- New methods first/lastStepInVolume flag in G4Step, G4VParticleChange  by Hisaya
- Revised UpdateStepForPostStep by John Apostolakis

Oct 31, 06 G.Cosmo (track-V08-01-03)
- Made operator=() inline.

Aug 29, 06 H.Kurashige (track-V08-01-02)
- Add methods for setting polarization and modifying weight
    for G4ParticleChangeFoeGamma and  G4ParticleChangeForLoss 
          (V.Ivanchenko)

July 17, 06 M.Asai (track-V08-01-01)
- Re-tagged for G4Step and G4TrackVector only.

June 09, 06 M.Asai (track-V08-01-00)
- tagged for G4FieldTrackUpdator, G4Step and G4TrackVector.

June 09, 06 T.Sasaki
- G4Step now has secondary vector
- G4TrackVector was moved from tracking category 

June 09, 06 M.Asai
- Introducing G4FieldTrackUpdator class.
- GNUmakefile now includes geometry/magneticfield

June 07, 06 V.Ivanchenko (track-V08-00-03)
-  G4ParticleChangeForLoss - remove momentum change AlongStep

Mar. 29, 06 H.Kurashige (track-V08-00-02)
-  Improve G4Track::GetVelocity for optical photon 

Feb. 08, 06 H.Kurashige (track-V08-00-01)
-  add ProposeMomentumDirection AlongStep and ProposeWeight PostStep in 
    G4ParticleChangeForLoss (V.Ivantchenko)

Dec. 20, 05 .Kurashige (track-V08-00-00)
-  G4ParticleChangeForRadDecay is now derived from G4ParticleChangeForDecay

Dec 05, 05 mma (track-V07-01-02)
- G4ParticleChangeForGamma : apply UpdateStepForPostStep in any case
  
Nov 26, 05 H.Kurashige (track-V07-01-01)
- Fix GetVelocity : use the material pointer in PreStepPoint

May 30, 05 V.Ivantchenko (track-V07-00-02)
- Fix in G4ParticleChangeForGamma : add UpdateStepForAtRest method

May 12, 05 P.Gumplinger (track-V07-00-01)
- Fix GetVelocity (bug report #741) courtesy of  Horton-Smith

Apr. 15, 05 V.Ivantchenko (track-V07-00-00)
- Add a new class of G4ParticleChangeForGamma
- Modify 4ParticleChangeForLoss
 
Dec. 02, 04 H.Kurashige (track-V06-02-04)
- migration to cmath 

Nov. 25, 04 M.Asai (track-V06-02-03)
- Fix destructor of G4VUserTrackInformation.

Oct. 19, 04 H.Kurashige (track-V06-02-02) 
- Remove obsolete methods from G4ParticleChange

Sep. 17, 04 P.Gumplinger (track-V06-02-01)
- Modified G4ParticleChangeForDecay (add thePolarizationChange and methods)

Aug. 27, 04 M.Asai (track-V06-02-00)
- A pointer to sensitive detector is added in G4StepPoint and
  G4ParticleChangeForTransport.
- G4Step is taking care of setting the above pointer.

Jun. 15, 04 V.Ivanchenko (track-V06-01-05)
- G4ParticleChangeForLoss: fix initialization of ParentWeight

Jun. 11, 04 G.Cosmo (track-V06-01-04)
- Use global flag G4TRACK_ALLOC_EXPORT to export extern symbols for DLLs.
  Modified GNUmakefile and rearranged usage of extern symbols in G4Track.

Jun. 09, 04 G.Cosmo (track-V06-01-03)
- Adopt G4DLLIMPORT/G4DLLEXPORT technique to handle extern simbols for
  allowing support of DLLs on Windows.
- Coworks with "global-V06-01-02b".

Jun. 07, 04 G.Cosmo (track-V06-01-02)
- Export extern symbols for allowing support of DLLs on Windows.
  Modified G4Track.icc.
- GNUmakefile: added definition of GLOBLIBS for DLLs support on Windows.
- Coworks with "global-V06-01-02a".

May. 11, 04 V.Ivanchenko (track-V06-01-01)
- G4ParticleChangeForLoss: rename variables according to 00 tag;
  fix of minor energy non-conservation in case of more than 1
  processes changing the energy

May. 08, 04 H.Kurashige (track-V06-01-00)
- Add new methods of ProposeXXX (and corresponding GetXXX methods) 
  as replacements of old methods of SetXXXChange and GetXXXChange

Jan. 20, 04 V.Ivanchenko (track-V06-00-01)
- Update G4ParticleChangeForLoss for utilisation in G4VEnergyLossProcess
- Minor update G4ParticleChangeForMSC for utilisation in model design of msc
- Change of volume in G4ParticleChangeForTransportation only if kinEnergy>0

Dec. 12, 03 G.Cosmo (track-V06-00-00)
- G4VParticleChange[.hh.cc]: removed unnecessary 'const' qualifier to
  return value in GetAccuracyForWarning() and GetAccuracyForException()
  causing noisy warnings on Intel-icc compiler.

Nov. 26, 03 H.Kurashige (track-V05-02-03)
- Fixed problem of setting  momentum direction for stoppped particle in G4ParticleChange (Vladimir) 

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

Jun. 11, 03 H.Kurashige (track-V05-02-01)
- Add ExceptionSeverity 
- Add G4VParticleChange::CheckSecondary
- Remove inclusion of G4MaterialCutsCouple

Jun. 03, 03  G.Cosmo (track-V05-01-03)
- Fixed warning in G4ParticleChangeForRadDecay.hh.

Mar. 20, 03  M.Asai (track-V05-01-02)
- Fix copy operator of G4Track not to copy the pointer to user information

Mar. 20, 03  H.Kurashige  (track-V05-01-01)
- Correct comments 
- Fixed unused parameter in G4VParticleChange.cc

Mar. 5, 02  H.Kurashige  (track-V05-00-02)
- Fix in G4Step::InitializeStep().
  Added initialization of fCharge in StepPoint.

Jan. 24, 02  G.Cosmo  (track-V05-00-01)
- Fix in G4ParticleChangeForTransport::UpdateStepForPostStep().
  Added call for setting the material-cuts-couple for pPostStepPoint
  (V.Ivantchenko).

Dec. 16, 02  G.Cosmo  (track-V05-00-00)
- Merged branch "geant4-04-01-ref-02-cuts-branch" to HEAD.
  Included development for 'cuts-by-region':
  o Updated G4Track, G4Step, G4StepPoint and G4ParticleChangeForTransport
    to properly handle new G4MaterialCutsCouple.

Dec. 04, 02  T.Sasaki (track-V04-01-03)
- Initial value for fCharge is given in the constuctor 
  of G4StepPoint.
Nov. 20, 02   G.Cosmo (track-V04-01-02)
- Patched access to public static data in G4VParticleChange.
  Added accessors to be used in the kernel to allow porting on
  Windows DLLs.

Nov. 1, 02    J.Generowicz (track-V04-01-01)
- Added accessors to auxiliary point vector, in both
  G4Step and G4ParticleChangeForTransport

Oct. 31, 02    T.Sasaki (track-V04-01-00)  
- Added StronglyForced flag to G4ForceCondition
- set fUndefined for the StepStatus in PostStepPoint after CopyPostToPre

Feb. 09 ,02    H.Kurashige (track-V04-00-02)
- Modify G4Track::GetVelocity to get better performance for massless particles

Dec. 24 ,01   H.Kurashige (track-V04-00-01)
- Remove event biasing mechanism from track category
  ( it is moved to hadronic/models )
- Add G4Track::CopyTrackInfo 
- Modified G4ParticleChange::AddSecondary to use touchable handle 
- Fixed a bug of changing parent weight in G4ParticleChange::UpdateStepForAlongStep

Dec. 12, 01  H.Kurashige (track-V04-00-00)
- Added initialization of fStepLength in constructors.
- Fixed a bug that fStepLength is not copied in assginment operator 
 
Dec. 10, 01  H.Kurashige (track-V03-02-08)
- Modified assignment operator so that fCurrentStepNumber is set to 0

Nov.27, 01  J. Apostolakis (track-V03-02-07)  for H. Kurashige
- Modified G4ParticleChange::AddSecondary to use touchable handle - by Hisaya
   (only one of the AddSecondary methods has been modified - to date)

Nov.10, 01 (track-V03-02-06)
- Fixed bugs in assignment operators in G4Track
- Added SetParentWeightByProcess
- Added SetSecondaryWeightByProcess

Nov. 08, 01  G.Cosmo (track-V03-02-05)
- Merge changes included in "track-V03-02-02a".

Oct. 22, 01  H.Kurashige (track-V03-02-04)
- Modify to intorduce TouchableHandle (Radovan)

Oct. 20, 01  H.Kurashige (track-V03-02-03)
- Remove "static inline methods"
- Disable EventBiasingMechanism 

Oct. 26, 01  G.Cosmo (track-V03-02-02a)
- Added implementation to assignment operator in G4ParticleChangeForRadDecay.hh
  (H.Kurasige)

Sep. 20, 01  H.Kurashige (track-V03-02-02)
- Update to  G4Mars5GeVMechanism for STL migration of materials

Sep. 20, 01  H.Kurashige (track-V03-02-01)
- Modify  G4Mars5GeVMechanism for STL migration of materials

Aug. 16, 01  H.Kurashige (track-V03-02-00)
- Clean up codes
 
Mar 7, 01  H.Kurashige (track-V03-00-04) 
- Add protection for the zero-momentum case 
  for UpdateStepForAlongStep in ParticleChange  (J.A)

Feb 17, 01  H.Kurashige (track-V03-00-03)
- Add Velocity and Setmethod in G4StepPoint
- Add SetVelocity in G4Step.::InitializeStep
- Modify G4StepPoint::GetVelocity to return correct velocity for optical photon

Feb 17, 01  H.Kurashige (track-V03-00-02)
- Fix G4Track::GetVelocity for Gamma

Feb 12, 01 H.Kurashige (track-V03-00-01)
- Remove thePolarizationChange from G4ParticleChangeForTransport.hh


Feb 07, 01 H.Kurashige (track-V03-00-00)
- Add copy constructor to G4Track 

Oct 19, 00 H.kurashige (track-V02-00-01)
- Bug fixes in copy constructor of G4ParticleChange

Oct 18, 00 H.Kurashige (track-V02-00-00)
- Add "const" to G4DynamicParticle pointer  of returned value of G4Track::GetDynamicParticle 

June 2, 2000 M.Asai  (track-V01-01-02)
- Add G4VUserTrackInformation class and its pointer data member in G4Track
- Add "const" to pointer to G4Step in G4Track (Hisaya) 

June 1 2000 H.Kurashige (track-V01-01-01a)
-  Removed "const" from the return value type of G4StepPoint::GetPhysicalVolume()

May 16 2000 H.Kurashige (track-V01-01-01)
-  Added thePolarizationChange in G4ParticleChangeForTransportation

May 12 2000 H.Kurashige (track-V01-01-00)
-  SetTouchable methods has been changed to get "const" pointer

Feb. 16, 2000 H.Kurashige
-  Added cashing mechanism of pointer to material in G4StepPoint
-  Added theMaterialChange in G4ParticleChangeForTransportation
-  GetTouchable methods has been changed to give "const" pointer 

Feb 13, 2000 H.Kurashige (track-V01-00-01)
-  Added G4ParticleChangeForRadDecay
-  Changed G4VParticleChange::AddSecondary to set secondary track weight equal to the primary's one
-  Removed printing pointers of ParticleChange object in CheckIt methods 

Jan 18, 2000 H.Kurashige (track-V01-00-00)
-  Fixed bugs in treatment of secondary track weight 

Nov 7, 1999 H.Kurashige (track-V00-01-01)
-  Added comments for "Software Reference Manual" 

Oct 5, 1999 H,Kurashige (track-V00-01-00)
-  Added mass/charge change in G4ParticleChange
-  Modified G4ParticleChange::CheckIt
-  Separate implementation of inline functions to G4Track.icc and G4Step.icc

July 14 1999 H.Kurashige (track-01-00-07)
-  Fixed bugs in G4Mars5GeVMechanism::CreatePion()

May 6, 1999 H.Kurashige (track-01-00-06)
-  Modified CheckIt methods of G4VParticleChange and derived classes 

Apr 28, 1999 H.Kurashige (track-01-00-05b)
-  Protect proton mass against glanular libraly for G4Mars5Gev...(Makoto)
-  Fixed error messages in G4ParticleChange::CheckIt (Hisaya)
-  Remove "include/G4VProcess.hh" from G4Step.cc (Hisaya)

Apr 13, 1999 H.Kurashige (track-01-00-04)
- Code polishing according to the messages by CodeWizard 
- Added new virtual method of G4bool CheckIt(const G4Track&) in G4VParticleChange

Feb 17, 1999 H.Kurashige (track-01-00-03)
-  Removed G4Step::ShowStep() (Takashi)
-  Fixed bugs in G4ParticleChange.icc (Hisaya)

Feb 9, 1999 H.Kurashige (track-01-00-02)
-  Modified G4TrackFastVector (Hisaya)
-  Modified G4ParticleChange::CheckIt (Hisaya)

Feb 6, 1999 H.Kurashige (track-01-00-01)
-  Added Get/SetMomentumDirectionChange in G4ParticleChange (Hisaya)
-  Removed using G4ParticleMomentum (Hisaya)

December 15,  1998 H.Kurashige (track-00-04-05)
- G4ParticleChange::CheckIt is activated in VERBOSE mode (Hisaya) 

December 12, 1998 H.Kurashige (track-00-04-04)
- Fixed bugs in G4Mars5GeVMechanism (Hisaya) 
- Added SwOnAllEB/SwOffAllEB in G4ParticleChange (Hisaya)
- Added GetEBMechanis and IsEBActive in G4VParticleChange (Hisaya)

December 11, 1998 H.Kurashige (track-00-04-03)
- Fixed bugs in G4Mars5GeVMechanism (Hisaya)

December 9, 1998 L.Urban (track-00-04-02)
- Added G4ParticleChangeForLoss and G4ParticleChangeForMSC.

November 18, 98 H.Kurashige (track-00-04-01)A
- Added new member of weight in G4Track and removed G4BiasingTag
- Added Event Biasing based on MARS
- Modified argument type in G4Track  
  ( this tag requires particles-00-04-01 tag)

November 9, 98  H.Kurashige (track-00-03-05)
- Added Event Biasing Mechanism in G4VParticleChange

November 8, 98 H.Kurashige (track-00-03-04)
- Added G4BiasingTag as a member of G4Track
- Modified G4Step, and G4StepPoint for managing  G4BiasingTag 

Octorber 17, 98 H.Kurashige (track-00-03-03)
- Fixed bugs in G4VParticleChange and G4ParticleChange

October 14 19 H.Kurashige (track-00-03-01)
- Modified G4ParticleChangeForTransportation for new relocation algorism.
  (J.Apost.)

August 31, 98 G.Cosmo (track-00-02-01)
- Added "global" phony target to GNUmakefile.
- Added comment to G4StepPoint.hh (J.Apostolakis).

July 20,98 H.Kurashige (track-00-01-05)
- Modified G4ParticleChangeForDecay 

July 10, 98 P.Urban (track-00-01-02)
- Optimised G4ParticleChangeForTransport. Much less data
  is copied -> increased performance.

July 1, 98 H.Kurashige (track-00-07-02)
- Moved UpdateStepForAlongStep into G4ParticleChangeForTransport.cc file 
  
June 30, 98 P. Urban (track-00-07-01)
- Some more tracking optimisation results.

June 22, 98 P. Urban (track-00-06-04)
- Preliminary results of tracking optimisation merged into HEAD.

June 11, 98 G.Cosmo (track-00-06-03)
- Tagged track-00-06-03.

June 11, 98  J.Allison
- Added a missing inline keyword to G4Track.hh:341.

June 8, 98  H.Kurashige
- Add GoodForTracking and BelowThreshold flags in G4Track
  for new COHERENT scheme for the Cuts

May 12, 98 H.Kurashige
- Fix bugs in G4Step, G4ParticleChange
  Add new class of G4ParticleChangeForTransport

April 12, 98 H.Kuraashige
  Implement new scheme of 'Particle Change'. Please see 
  particle_change.asc in geant4alpha/documents/particles+matter/.
  Following files are modified (or added)
    G4ParticleChange.hh, .icc, .cc
    G4VParticleChange.hh, .icc, .cc
    G4ParticleChangeForDecay.hh, .cc
    G4Step.hh,  G4TrackFastVector.hh

April 9, 98 G.Cosmo
- Porting on DEC-cxx 6.0.
  Removed meaningless usage of "const" qualifier from functions
  return type for basic types by value. Modified files:
  G4ParticleChange.hh, .icc,
  G4Step.hh, G4StepPoint.hh, G4Track.hh

March 18, 1998 K. Amako
  Add following information to G4Track:
     1.Momentum direction at the start point (vertex position) of the track
     2.Kinetic energy at the start point (vertex position) of the track
     3.Pointer to the process which created the current track
  Due to this, the following files have modififed and committed.
     1.NewDesignDoc.txt
     2.G4Track.hh, G4Track.cc
     3.G4SteppingManager.cc


January  29, 97 K. Amako
  Following changes have been done and committed/tagged to cvs.
  Tag# is track-00-03-01. 
    - G4Step.cc: Output format has been changed in showStep().
  
December 19, 97 G. Cosmo - (alpha03)

- Created.
