Index: trunk/source/processes/electromagnetic/standard/History
===================================================================
--- trunk/source/processes/electromagnetic/standard/History	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/History	(revision 991)
@@ -1,3 +1,3 @@
-$Id: History,v 1.432 2009/02/20 12:11:37 vnivanch Exp $
+$Id: History,v 1.430 2008/11/24 18:28:09 vnivanch Exp $
 -------------------------------------------------------------------
 
@@ -17,13 +17,4 @@
      * Reverse chronological order (last date on top), please *
      ----------------------------------------------------------
-
-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)
Index: trunk/source/processes/electromagnetic/standard/include/G4ASTARStopping.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4ASTARStopping.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4ASTARStopping.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4ASTARStopping.hh,v 1.6 2008/11/13 12:04:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 
 #ifndef G4ASTARStopping_h
Index: trunk/source/processes/electromagnetic/standard/include/G4BetheBlochModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4BetheBlochModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4BetheBlochModel.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4BetheBlochModel.hh,v 1.17 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4BetheBlochModel.hh,v 1.16 2008/10/22 16:00:57 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -82,6 +82,6 @@
   virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
 
-  virtual G4double MinEnergyCut(const G4ParticleDefinition*,
-				const G4MaterialCutsCouple*);
+  G4double MinEnergyCut(const G4ParticleDefinition*,
+			const G4MaterialCutsCouple*);
 			
   virtual G4double ComputeCrossSectionPerElectron(
@@ -131,6 +131,6 @@
 protected:
 
-  virtual G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
-				      G4double kinEnergy);
+  G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
+			      G4double kinEnergy);
 
 private:
@@ -166,3 +166,16 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
+inline G4double G4BetheBlochModel::MaxSecondaryEnergy(
+          const G4ParticleDefinition* pd,
+                G4double kinEnergy) 
+{
+  if(isIon) SetParticle(pd);
+  G4double tau  = kinEnergy/mass;
+  G4double tmax = 2.0*electron_mass_c2*tau*(tau + 2.) /
+                  (1. + 2.0*(tau + 1.)*ratio + ratio*ratio);
+  return std::min(tmax,tlimit);
+}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
 #endif
Index: trunk/source/processes/electromagnetic/standard/include/G4BetheHeitlerModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4BetheHeitlerModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4BetheHeitlerModel.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4BetheHeitlerModel.hh,v 1.6 2007/05/22 17:34:36 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4BohrFluctuations.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4BohrFluctuations.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4BohrFluctuations.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4BohrFluctuations.hh,v 1.4 2009/02/19 19:17:50 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4BohrFluctuations.hh,v 1.3 2007/09/27 13:53:11 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -79,4 +79,6 @@
   void InitialiseMe(const G4ParticleDefinition*);
 
+protected:
+
 private:
 
@@ -101,4 +103,25 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
+
+inline G4double G4BohrFluctuations::Dispersion(
+                          const G4Material* material,
+                          const G4DynamicParticle* dp,
+ 				G4double& tmax,
+			        G4double& length)
+{
+  if(!particle) InitialiseMe(dp->GetDefinition());
+
+  G4double electronDensity = material->GetElectronDensity();
+  kineticEnergy = dp->GetKineticEnergy();
+  G4double etot = kineticEnergy + particleMass;
+  beta2 = kineticEnergy*(kineticEnergy + 2.0*particleMass)/(etot*etot);
+  G4double siga  = (1.0/beta2 - 0.5) * twopi_mc2_rcl2 * tmax * length
+                 * electronDensity * chargeSquare;
+
+  return siga;
+}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
 #endif
 
Index: trunk/source/processes/electromagnetic/standard/include/G4BraggIonModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4BraggIonModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4BraggIonModel.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4BraggIonModel.hh,v 1.12 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4BraggIonModel.hh,v 1.11 2008/10/22 16:00:57 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -77,6 +77,6 @@
   virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
 
-  virtual G4double MinEnergyCut(const G4ParticleDefinition*,
-				const G4MaterialCutsCouple*);
+  G4double MinEnergyCut(const G4ParticleDefinition*,
+			const G4MaterialCutsCouple*);
 			
   virtual G4double ComputeCrossSectionPerElectron(
@@ -128,6 +128,6 @@
 protected:
 
-  virtual G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
-				      G4double kinEnergy);
+  G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
+			      G4double kinEnergy);
 
 private:
@@ -180,4 +180,17 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
 
+inline G4double G4BraggIonModel::MaxSecondaryEnergy(
+          const G4ParticleDefinition* pd,
+                G4double kinEnergy)
+{
+  if(pd != particle) SetParticle(pd);
+  G4double tau  = kinEnergy/mass;
+  G4double tmax = 2.0*electron_mass_c2*tau*(tau + 2.) /
+                  (1. + 2.0*(tau + 1.)*ratio + ratio*ratio);
+  return tmax;
+}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
+
 inline void G4BraggIonModel::SetParticle(const G4ParticleDefinition* p)
 {
Index: trunk/source/processes/electromagnetic/standard/include/G4BraggModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4BraggModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4BraggModel.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4BraggModel.hh,v 1.13 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4BraggModel.hh,v 1.12 2008/09/14 17:11:48 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -80,6 +80,6 @@
   virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
 
-  virtual G4double MinEnergyCut(const G4ParticleDefinition*,
-				const G4MaterialCutsCouple*);
+  G4double MinEnergyCut(const G4ParticleDefinition*,
+			const G4MaterialCutsCouple*);
 			
   virtual G4double ComputeCrossSectionPerElectron(
@@ -131,10 +131,10 @@
 protected:
 
-  virtual G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
-				      G4double kinEnergy);
+  G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
+			      G4double kinEnergy);
 
 private:
 
-  inline void SetParticle(const G4ParticleDefinition* p);
+  void SetParticle(const G4ParticleDefinition* p);
 
   G4bool HasMaterial(const G4Material* material);
@@ -182,4 +182,17 @@
   G4bool   isInitialised;
 };
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
+
+inline G4double G4BraggModel::MaxSecondaryEnergy(
+                                            const G4ParticleDefinition* pd,
+                                                  G4double kinEnergy)
+{
+  if(pd != particle) SetParticle(pd);
+  G4double tau  = kinEnergy/mass;
+  G4double tmax = 2.0*electron_mass_c2*tau*(tau + 2.) /
+                  (1. + 2.0*(tau + 1.)*ratio + ratio*ratio);
+  return tmax;
+}
 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/source/processes/electromagnetic/standard/include/G4ComptonScattering.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4ComptonScattering.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4ComptonScattering.hh	(revision 991)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: G4ComptonScattering.hh,v 1.21 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4ComptonScattering.hh,v 1.20 2007/05/23 08:47:34 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 //------------------ G4ComptonScattering physics process -----------------------
@@ -82,8 +82,9 @@
 
   // true for Gamma only.  
-  virtual G4bool IsApplicable(const G4ParticleDefinition&);
+  G4bool IsApplicable(const G4ParticleDefinition&);
   
   // Print few lines of informations about the process: validity range,
   virtual void PrintInfo();
+
 
 protected:
@@ -96,4 +97,13 @@
 };
 
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
+inline 
+G4bool G4ComptonScattering::IsApplicable(const G4ParticleDefinition& p)
+{
+  return (&p == G4Gamma::Gamma());
+}
+
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
   
Index: trunk/source/processes/electromagnetic/standard/include/G4ComptonScattering52.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4ComptonScattering52.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4ComptonScattering52.hh	(revision 991)
@@ -26,5 +26,5 @@
 //
 // $Id: G4ComptonScattering52.hh,v 1.4 2007/05/16 14:00:56 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 //------------------ G4ComptonScattering52 physics process -----------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4CoulombScattering.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4CoulombScattering.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4CoulombScattering.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4CoulombScattering.hh,v 1.12 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4CoulombScattering.hh,v 1.11 2008/06/13 08:19:43 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -104,4 +104,11 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
+inline G4bool G4CoulombScattering::IsApplicable(const G4ParticleDefinition& p)
+{
+  return (p.GetPDGCharge() != 0.0 && !p.IsShortLived());
+}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
 inline void G4CoulombScattering::SetThetaMin(G4double val)
 {
Index: trunk/source/processes/electromagnetic/standard/include/G4CoulombScatteringModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4CoulombScatteringModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4CoulombScatteringModel.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4CoulombScatteringModel.hh,v 1.15 2008/07/31 13:11:34 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4GammaConversion.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4GammaConversion.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4GammaConversion.hh	(revision 991)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: G4GammaConversion.hh,v 1.23 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4GammaConversion.hh,v 1.22 2007/05/23 08:47:34 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 //
@@ -85,5 +85,5 @@
 
   // true for Gamma only.
-  virtual G4bool IsApplicable(const G4ParticleDefinition&);
+  G4bool IsApplicable(const G4ParticleDefinition&);
 
   // Print few lines of informations about the process: validity range,
@@ -99,4 +99,12 @@
 };
 
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
+inline G4bool G4GammaConversion::IsApplicable(const G4ParticleDefinition& p)
+{
+  return (&p == G4Gamma::Gamma());
+}
+
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
   
Index: trunk/source/processes/electromagnetic/standard/include/G4InitXscPAI.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4InitXscPAI.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4InitXscPAI.hh	(revision 991)
@@ -26,5 +26,5 @@
 //
 // $Id: G4InitXscPAI.hh,v 1.8 2006/06/29 19:50:22 gunter Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // 
Index: trunk/source/processes/electromagnetic/standard/include/G4IonFluctuations.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4IonFluctuations.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4IonFluctuations.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4IonFluctuations.hh,v 1.9 2009/02/19 19:17:50 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4IonFluctuations.hh,v 1.8 2008/10/22 16:04:33 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -84,5 +84,5 @@
 
   // Initialisation prestep
-  void SetParticleAndCharge(const G4ParticleDefinition*, G4double q2);
+  inline void SetParticleAndCharge(const G4ParticleDefinition*, G4double q2);
 
 private:
@@ -117,4 +117,20 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
+inline
+void G4IonFluctuations::SetParticleAndCharge(const G4ParticleDefinition* part,
+					     G4double q2)
+{
+  if(part != particle) {
+    particle       = part;
+    particleMass   = part->GetPDGMass();
+    charge         = part->GetPDGCharge()/eplus;
+    chargeSquare   = charge*charge;
+  }
+  effChargeSquare  = q2;
+  uniFluct.SetParticleAndCharge(part, q2);
+}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
 #endif
 
Index: trunk/source/processes/electromagnetic/standard/include/G4KleinNishinaCompton.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4KleinNishinaCompton.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4KleinNishinaCompton.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4KleinNishinaCompton.hh,v 1.9 2007/05/22 17:34:36 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4MollerBhabhaModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4MollerBhabhaModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4MollerBhabhaModel.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4MollerBhabhaModel.hh,v 1.20 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4MollerBhabhaModel.hh,v 1.19 2007/05/22 17:34:36 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -74,6 +74,6 @@
   virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
 
-  virtual G4double MinEnergyCut(const G4ParticleDefinition*,
-				const G4MaterialCutsCouple*);
+  G4double MinEnergyCut(const G4ParticleDefinition*,
+			const G4MaterialCutsCouple*);
 				
   virtual G4double ComputeCrossSectionPerElectron(
@@ -109,8 +109,8 @@
 protected:
 
-  virtual G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
-				      G4double kinEnergy);
+  G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
+			      G4double kinEnergy);
 			      
-  inline void SetParticle(const G4ParticleDefinition* p);			      
+  void SetParticle(const G4ParticleDefinition* p);			      
 
   const G4ParticleDefinition* particle;
@@ -127,15 +127,15 @@
   G4MollerBhabhaModel & operator=(const  G4MollerBhabhaModel &right);
   G4MollerBhabhaModel(const  G4MollerBhabhaModel&);
-
-  G4bool   isInitialised;
-
 };
 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
 
-inline void G4MollerBhabhaModel::SetParticle(const G4ParticleDefinition* p)
+inline G4double G4MollerBhabhaModel::MaxSecondaryEnergy(
+                                                   const G4ParticleDefinition*,
+                                                         G4double kinEnergy) 
 {
-  particle = p;
-  if(p != theElectron) isElectron = false;
+  G4double tmax = kinEnergy;
+  if(isElectron) tmax *= 0.5;
+  return tmax;
 }
 
Index: trunk/source/processes/electromagnetic/standard/include/G4MscModel71.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4MscModel71.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4MscModel71.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4MscModel71.hh,v 1.5 2007/05/22 17:34:36 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4MultipleScattering.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4MultipleScattering.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4MultipleScattering.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4MultipleScattering.hh,v 1.36 2008/03/10 10:39:21 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -----------------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4MultipleScattering71.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4MultipleScattering71.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4MultipleScattering71.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4MultipleScattering71.hh,v 1.6 2008/07/16 11:27:41 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 //
@@ -59,5 +59,5 @@
 //
 // $Id: G4MultipleScattering71.hh,v 1.6 2008/07/16 11:27:41 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 
 // class description
Index: trunk/source/processes/electromagnetic/standard/include/G4PAIModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4PAIModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4PAIModel.hh	(revision 991)
@@ -24,6 +24,4 @@
 // ********************************************************************
 //
-// $Id: G4PAIModel.hh,v 1.22 2009/02/19 19:17:50 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
 //
 // -------------------------------------------------------------------
@@ -77,12 +75,12 @@
   virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
 
-  virtual void InitialiseMe(const G4ParticleDefinition*);
-
-  virtual G4double ComputeDEDXPerVolume(const G4Material*,
+  virtual void InitialiseMe(const G4ParticleDefinition*) {};
+
+  virtual G4double ComputeDEDX(const G4MaterialCutsCouple*,
 			       const G4ParticleDefinition*,
 			       G4double kineticEnergy,
 			       G4double cutEnergy);
 
-  virtual G4double CrossSectionPerVolume(const G4Material*,
+  virtual G4double CrossSection(const G4MaterialCutsCouple*,
 				const G4ParticleDefinition*,
 				G4double kineticEnergy,
@@ -120,4 +118,6 @@
 
   void SetVerboseLevel(G4int verbose){fVerbose=verbose;};
+
+
 
 protected:
@@ -192,4 +192,28 @@
 };
 
+/////////////////////////////////////////////////////////////////////
+
+inline G4double G4PAIModel::MaxSecondaryEnergy( const G4ParticleDefinition* p,
+                                                      G4double kinEnergy) 
+{
+  G4double tmax = kinEnergy;
+  if(p == fElectron) tmax *= 0.5;
+  else if(p != fPositron) { 
+    G4double mass = p->GetPDGMass();
+    G4double ratio= electron_mass_c2/mass;
+    G4double gamma= kinEnergy/mass + 1.0;
+    tmax = 2.0*electron_mass_c2*(gamma*gamma - 1.) /
+                  (1. + 2.0*gamma*ratio + ratio*ratio);
+  }
+  return tmax;
+}
+
+///////////////////////////////////////////////////////////////
+
+inline  void G4PAIModel::DefineForRegion(const G4Region* r) 
+{
+  fPAIRegionVector.push_back(r);
+}
+
 #endif
 
Index: trunk/source/processes/electromagnetic/standard/include/G4PAIPhotonModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4PAIPhotonModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4PAIPhotonModel.hh	(revision 991)
@@ -24,6 +24,4 @@
 // ********************************************************************
 //
-// $Id: G4PAIPhotonModel.hh,v 1.12 2009/02/19 19:17:50 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
 //
 // -------------------------------------------------------------------
@@ -76,16 +74,16 @@
   virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
   
-  virtual void InitialiseMe(const G4ParticleDefinition*);
-
-  virtual G4double ComputeDEDXPerVolume(const G4Material*,
-					const G4ParticleDefinition*,
-					G4double kineticEnergy,
-					G4double cutEnergy);
-
-  virtual G4double CrossSectionPerVolume(const G4Material*,
-					 const G4ParticleDefinition*,
-					 G4double kineticEnergy,
-					 G4double cutEnergy,
-					 G4double maxEnergy);
+  virtual void InitialiseMe(const G4ParticleDefinition*) {};
+
+  virtual G4double ComputeDEDX(const G4MaterialCutsCouple*,
+			       const G4ParticleDefinition*,
+			       G4double kineticEnergy,
+			       G4double cutEnergy);
+
+  virtual G4double CrossSection(const G4MaterialCutsCouple*,
+				const G4ParticleDefinition*,
+				G4double kineticEnergy,
+				G4double cutEnergy,
+				G4double maxEnergy);
 
   virtual void SampleSecondaries(std::vector<G4DynamicParticle*>*,
@@ -124,8 +122,10 @@
                              G4double position, G4int iTransfer );
 
+
+
 protected:
 
   G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
-			      G4double kinEnergy);
+                                    G4double kinEnergy);
 
 private:
@@ -145,4 +145,6 @@
   G4int                fVerbose; 
   G4PhysicsLogVector*  fProtonEnergyVector ;
+
+
 
   // vectors
@@ -202,4 +204,28 @@
 };
 
+/////////////////////////////////////////////////////////////////////
+
+inline G4double G4PAIPhotonModel::MaxSecondaryEnergy( const G4ParticleDefinition* p,
+                                                      G4double kinEnergy) 
+{
+  G4double tmax = kinEnergy;
+  if(p == fElectron) tmax *= 0.5;
+  else if(p != fPositron) { 
+    G4double mass = p->GetPDGMass();
+    G4double ratio= electron_mass_c2/mass;
+    G4double gamma= kinEnergy/mass + 1.0;
+    tmax = 2.0*electron_mass_c2*(gamma*gamma - 1.) /
+                  (1. + 2.0*gamma*ratio + ratio*ratio);
+  }
+  return tmax;
+}
+
+///////////////////////////////////////////////////////////////
+
+inline  void G4PAIPhotonModel::DefineForRegion(const G4Region* r) 
+{
+  fPAIRegionVector.push_back(r);
+}
+
 #endif
 
Index: trunk/source/processes/electromagnetic/standard/include/G4PAIxSection.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4PAIxSection.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4PAIxSection.hh	(revision 991)
@@ -26,5 +26,5 @@
 //
 // $Id: G4PAIxSection.hh,v 1.15 2008/05/30 16:04:40 grichine Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // 
Index: trunk/source/processes/electromagnetic/standard/include/G4PAIySection.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4PAIySection.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4PAIySection.hh	(revision 991)
@@ -26,5 +26,5 @@
 //
 // $Id: G4PAIySection.hh,v 1.1 2007/10/01 17:45:14 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // 
Index: trunk/source/processes/electromagnetic/standard/include/G4PEEffectModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4PEEffectModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4PEEffectModel.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4PEEffectModel.hh,v 1.7 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4PEEffectModel.hh,v 1.6 2007/05/22 17:34:36 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -41,6 +41,4 @@
 //
 // 06.02.2006 : added ComputeMeanFreePath()  (mma)
-// 20.02.2009 : move virtual inline to .cc, substitute
-//              ComputeMeanFreePath() by CrossSectionPerVolume (VI)
 //
 // Class Description:
@@ -72,15 +70,14 @@
   virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
 
-  virtual G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition*,
-					      G4double kinEnergy,
-					      G4double Z,
-					      G4double A,
-					      G4double, G4double);
+  G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition*,
+                                      G4double kinEnergy,
+                                      G4double Z,
+                                      G4double A,
+                                      G4double, G4double);
 				      
-  virtual G4double CrossSectionPerVolume(const G4Material*,
-					 const G4ParticleDefinition*,
-					 G4double kineticEnergy,
-					 G4double cutEnergy,
-					 G4double maxEnergy);
+  G4double ComputeMeanFreePath( const G4ParticleDefinition*,
+                                      G4double kinEnergy,
+				const G4Material* material,      
+                                      G4double, G4double);
 
   virtual void SampleSecondaries(std::vector<G4DynamicParticle*>*,
@@ -103,4 +100,43 @@
 };
 
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
+
+inline G4double G4PEEffectModel::ComputeCrossSectionPerAtom(
+                                       const G4ParticleDefinition*,
+                                             G4double energy,
+                                             G4double Z, G4double,
+                                             G4double, G4double)
+{
+ G4double* SandiaCof = G4SandiaTable::GetSandiaCofPerAtom((G4int)Z, energy);
+
+ G4double energy2 = energy*energy, energy3 = energy*energy2,
+          energy4 = energy2*energy2;
+
+ return SandiaCof[0]/energy  + SandiaCof[1]/energy2 +
+        SandiaCof[2]/energy3 + SandiaCof[3]/energy4;
+}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
+inline G4double G4PEEffectModel::ComputeMeanFreePath(
+                                       const G4ParticleDefinition*,
+                                             G4double energy,
+				       const G4Material* material,
+                                             G4double, G4double)
+{
+ G4double* SandiaCof = material->GetSandiaTable()
+                                ->GetSandiaCofForMaterial(energy);
+				
+ G4double energy2 = energy*energy, energy3 = energy*energy2,
+          energy4 = energy2*energy2;
+	  
+ G4double cross = SandiaCof[0]/energy  + SandiaCof[1]/energy2 +
+                  SandiaCof[2]/energy3 + SandiaCof[3]/energy4; 
+ 
+ G4double mfp = DBL_MAX;
+ if (cross > 0.) mfp = 1./cross;
+ return mfp;
+}
+
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
Index: trunk/source/processes/electromagnetic/standard/include/G4PSTARStopping.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4PSTARStopping.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4PSTARStopping.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4PSTARStopping.hh,v 1.5 2008/11/13 12:04:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 
 #ifndef G4PSTARStopping_h
Index: trunk/source/processes/electromagnetic/standard/include/G4PhotoElectricEffect.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4PhotoElectricEffect.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4PhotoElectricEffect.hh	(revision 991)
@@ -25,6 +25,6 @@
 //
 //
-// $Id: G4PhotoElectricEffect.hh,v 1.25 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4PhotoElectricEffect.hh,v 1.24 2007/05/23 08:47:34 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 //
@@ -91,12 +91,12 @@
 
   // true for Gamma only.
-  virtual G4bool IsApplicable(const G4ParticleDefinition&);
+  G4bool IsApplicable(const G4ParticleDefinition&);
 
   // Print few lines of informations about the process: validity range,
-  virtual void PrintInfo();
+  void PrintInfo();
 
 protected:
 
-  virtual void InitialiseProcess(const G4ParticleDefinition*);
+  void InitialiseProcess(const G4ParticleDefinition*);
 
 private:
@@ -105,4 +105,13 @@
 };
 
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
+inline 
+G4bool G4PhotoElectricEffect::IsApplicable(const G4ParticleDefinition& p)
+{
+  return (&p == G4Gamma::Gamma());
+}
+
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
 
Index: trunk/source/processes/electromagnetic/standard/include/G4PolarizedComptonScattering.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4PolarizedComptonScattering.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4PolarizedComptonScattering.hh	(revision 991)
@@ -26,5 +26,5 @@
 //
 // $Id: G4PolarizedComptonScattering.hh,v 1.9 2006/06/29 19:51:14 gunter Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // --------- G4PolarizedComptonScattering physics process ----------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4UniversalFluctuation.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4UniversalFluctuation.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4UniversalFluctuation.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4UniversalFluctuation.hh,v 1.8 2009/02/19 19:17:50 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4UniversalFluctuation.hh,v 1.6 2008/10/22 16:04:33 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -70,20 +70,21 @@
   virtual ~G4UniversalFluctuation();
 
-  virtual G4double SampleFluctuations(const G4Material*,
-				      const G4DynamicParticle*,
-				      G4double&,
-				      G4double&,
-				      G4double&);
+  G4double SampleFluctuations(const G4Material*,
+                          const G4DynamicParticle*,
+ 				G4double&,
+                                G4double&,
+                                G4double&);
 
-  virtual G4double Dispersion(    const G4Material*,
-				  const G4DynamicParticle*,
-				  G4double&,
-				  G4double&);
+  G4double Dispersion(    const G4Material*,
+                          const G4DynamicParticle*,
+ 				G4double&,
+                                G4double&);
 
-  // Initialisation before the run
-  virtual void InitialiseMe(const G4ParticleDefinition*);
+  void InitialiseMe(const G4ParticleDefinition*);
 
   // Initialisation prestep
-  virtual void SetParticleAndCharge(const G4ParticleDefinition*, G4double q2);
+  inline void SetParticleAndCharge(const G4ParticleDefinition*, G4double q2);
+
+protected:
 
 private:
@@ -125,4 +126,17 @@
 };
 
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
+inline void 
+G4UniversalFluctuation::SetParticleAndCharge(const G4ParticleDefinition* part,
+					     G4double q2)
+{
+  if(part != particle) {
+    particle       = part;
+    particleMass   = part->GetPDGMass();
+  }
+  chargeSquare = q2;
+}
+
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
 
Index: trunk/source/processes/electromagnetic/standard/include/G4UrbanMscModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4UrbanMscModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4UrbanMscModel.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4UrbanMscModel.hh,v 1.33 2008/03/10 10:39:21 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4UrbanMscModel2.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4UrbanMscModel2.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4UrbanMscModel2.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4UrbanMscModel2.hh,v 1.11 2008/12/18 13:01:34 gunter Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4UrbanMscModel90.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4UrbanMscModel90.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4UrbanMscModel90.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4UrbanMscModel90.hh,v 1.4 2008/10/29 14:15:30 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4WaterStopping.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4WaterStopping.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4WaterStopping.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4WaterStopping.hh,v 1.6 2008/09/09 09:30:58 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 
 #ifndef G4WaterStopping_h
Index: trunk/source/processes/electromagnetic/standard/include/G4WentzelVIModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4WentzelVIModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4WentzelVIModel.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4WentzelVIModel.hh,v 1.8 2009/02/19 19:17:15 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4WentzelVIModel.hh,v 1.7 2008/08/04 08:49:09 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -66,5 +66,5 @@
 class G4LossTableManager;
 class G4ParticleChangeForMSC;
-//class G4SafetyHelper;
+class G4SafetyHelper;
 class G4ParticleDefinition;
 
@@ -133,5 +133,5 @@
   G4ParticleChangeForMSC*   fParticleChange;
 
-  //  G4SafetyHelper*           safetyHelper;
+  G4SafetyHelper*           safetyHelper;
   G4PhysicsTable*           theLambdaTable;
   G4PhysicsTable*           theLambda2Table;
Index: trunk/source/processes/electromagnetic/standard/include/G4eBremsstrahlung.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4eBremsstrahlung.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4eBremsstrahlung.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4eBremsstrahlung.hh,v 1.37 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4eBremsstrahlung.hh,v 1.36 2007/05/23 08:47:34 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -89,5 +89,5 @@
   virtual ~G4eBremsstrahlung();
 
-  virtual G4bool IsApplicable(const G4ParticleDefinition& p);
+  G4bool IsApplicable(const G4ParticleDefinition& p);
 
   // Print out of the class parameters
@@ -111,4 +111,12 @@
 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
+inline G4bool G4eBremsstrahlung::IsApplicable(const G4ParticleDefinition& p)
+{
+  return (&p == G4Electron::Electron() || &p == G4Positron::Positron());
+}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
 #endif
Index: trunk/source/processes/electromagnetic/standard/include/G4eBremsstrahlungModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4eBremsstrahlungModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4eBremsstrahlungModel.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4eBremsstrahlungModel.hh,v 1.26 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4eBremsstrahlungModel.hh,v 1.25 2008/11/13 19:28:58 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -75,6 +75,6 @@
   virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
 
-  virtual G4double MinEnergyCut(const G4ParticleDefinition*, 
-				const G4MaterialCutsCouple*);
+  G4double MinEnergyCut(const G4ParticleDefinition*, 
+			const G4MaterialCutsCouple*);
 
   virtual G4double ComputeDEDXPerVolume(const G4Material*,
@@ -103,4 +103,7 @@
 protected:
 
+  inline G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
+				     G4double kineticEnergy);
+
   const G4Element* SelectRandomAtom(const G4MaterialCutsCouple* couple);
 
@@ -188,3 +191,13 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
+inline 
+G4double G4eBremsstrahlungModel::MaxSecondaryEnergy(
+                                 const G4ParticleDefinition*,
+    				       G4double kineticEnergy)
+{
+  return kineticEnergy;
+}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
 #endif
Index: trunk/source/processes/electromagnetic/standard/include/G4eBremsstrahlungRelModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4eBremsstrahlungRelModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4eBremsstrahlungRelModel.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4eBremsstrahlungRelModel.hh,v 1.11 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4eBremsstrahlungRelModel.hh,v 1.10 2008/11/14 09:25:19 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -71,6 +71,6 @@
   virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
 
-  virtual G4double MinEnergyCut(const G4ParticleDefinition*, 
-				const G4MaterialCutsCouple*);
+  G4double MinEnergyCut(const G4ParticleDefinition*, 
+			const G4MaterialCutsCouple*);
 
   virtual G4double ComputeDEDXPerVolume(const G4Material*,
@@ -97,4 +97,9 @@
   inline G4double LPMconstant() const;
 
+protected:
+
+  inline G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
+				     G4double kineticEnergy);
+
 private:
 
@@ -202,4 +207,13 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
+inline G4double 
+G4eBremsstrahlungRelModel::MaxSecondaryEnergy(const G4ParticleDefinition*,
+					      G4double kineticEnergy)
+{
+  return kineticEnergy;
+}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
 
 inline G4double G4eBremsstrahlungRelModel::Phi1(G4double gg, G4double)
Index: trunk/source/processes/electromagnetic/standard/include/G4eCoulombScatteringModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4eCoulombScatteringModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4eCoulombScatteringModel.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4eCoulombScatteringModel.hh,v 1.36 2008/08/04 08:49:09 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4eIonisation.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4eIonisation.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4eIonisation.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4eIonisation.hh,v 1.36 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4eIonisation.hh,v 1.35 2007/05/23 08:47:34 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -88,5 +88,5 @@
   virtual ~G4eIonisation();
 
-  virtual G4bool IsApplicable(const G4ParticleDefinition& p);
+  G4bool IsApplicable(const G4ParticleDefinition& p);
 
   // Print out of the class parameters
@@ -98,6 +98,6 @@
 					   const G4ParticleDefinition*);
 
-  virtual G4double MinPrimaryEnergy(const G4ParticleDefinition*,
-				    const G4Material*, G4double cut);
+  G4double MinPrimaryEnergy(const G4ParticleDefinition*,
+			    const G4Material*, G4double cut);
 
 private:
@@ -114,4 +114,23 @@
 };
 
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
+inline G4double G4eIonisation::MinPrimaryEnergy(const G4ParticleDefinition*,
+						const G4Material*,
+						G4double cut)
+{
+  G4double x = cut;
+  if(isElectron) x += cut;
+  return x;
+}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
+inline G4bool G4eIonisation::IsApplicable(const G4ParticleDefinition& p)
+{
+  return (&p == G4Electron::Electron() || &p == G4Positron::Positron());
+}
+
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
 
Index: trunk/source/processes/electromagnetic/standard/include/G4eMultipleScattering.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4eMultipleScattering.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4eMultipleScattering.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4eMultipleScattering.hh,v 1.2 2008/03/11 12:03:43 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -----------------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4eeToTwoGammaModel.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4eeToTwoGammaModel.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4eeToTwoGammaModel.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4eeToTwoGammaModel.hh,v 1.14 2007/05/23 08:47:34 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4eplusAnnihilation.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4eplusAnnihilation.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4eplusAnnihilation.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4eplusAnnihilation.hh,v 1.24 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4eplusAnnihilation.hh,v 1.23 2007/05/23 08:47:34 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -73,5 +73,5 @@
   virtual ~G4eplusAnnihilation();
 
-  virtual G4bool IsApplicable(const G4ParticleDefinition& p);
+  G4bool IsApplicable(const G4ParticleDefinition& p);
 
   virtual G4VParticleChange* AtRestDoIt(
@@ -79,5 +79,5 @@
                              const G4Step& stepData);
 
-  virtual G4double AtRestGetPhysicalInteractionLength(
+  G4double AtRestGetPhysicalInteractionLength(
                              const G4Track& track,
                              G4ForceCondition* condition
@@ -96,4 +96,22 @@
 };
 
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
+inline G4bool G4eplusAnnihilation::IsApplicable(const G4ParticleDefinition& p)
+{
+  return (&p == G4Positron::Positron());
+}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
+inline 
+G4double G4eplusAnnihilation::AtRestGetPhysicalInteractionLength(
+                              const G4Track&, G4ForceCondition* condition)
+{
+  *condition = NotForced;
+  return 0.0;
+}
+
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
 
Index: trunk/source/processes/electromagnetic/standard/include/G4hIonisation.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4hIonisation.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4hIonisation.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4hIonisation.hh,v 1.42 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4hIonisation.hh,v 1.41 2008/09/14 17:11:48 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -93,8 +93,8 @@
   virtual ~G4hIonisation();
 
-  virtual G4bool IsApplicable(const G4ParticleDefinition& p);
+  G4bool IsApplicable(const G4ParticleDefinition& p);
 
-  virtual G4double MinPrimaryEnergy(const G4ParticleDefinition* p,
-				    const G4Material*, G4double cut);
+  G4double MinPrimaryEnergy(const G4ParticleDefinition* p,
+			    const G4Material*, G4double cut);
 
   // Print out of the class parameters
@@ -123,4 +123,24 @@
 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
+inline G4bool G4hIonisation::IsApplicable(const G4ParticleDefinition& p)
+{
+  return (p.GetPDGCharge() != 0.0 && p.GetPDGMass() > 10.0*MeV &&
+	 !p.IsShortLived());
+}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
+inline G4double G4hIonisation::MinPrimaryEnergy(const G4ParticleDefinition*,
+						const G4Material*,
+						G4double cut)
+{
+  G4double x = 0.5*cut/electron_mass_c2;
+  G4double g = x*ratio + std::sqrt((1. + x)*(1. + x*ratio*ratio));
+  return mass*(g - 1.0);
+}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
 inline void G4hIonisation::ActivateNuclearStopping(G4bool val)
Index: trunk/source/processes/electromagnetic/standard/include/G4hMultipleScattering.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4hMultipleScattering.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4hMultipleScattering.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4hMultipleScattering.hh,v 1.6 2008/05/09 08:23:44 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -----------------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4ionGasIonisation.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4ionGasIonisation.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4ionGasIonisation.hh	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4ionGasIonisation.hh,v 1.4 2008/09/12 16:26:34 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/include/G4ionIonisation.hh
===================================================================
--- trunk/source/processes/electromagnetic/standard/include/G4ionIonisation.hh	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/include/G4ionIonisation.hh	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4ionIonisation.hh,v 1.57 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4ionIonisation.hh,v 1.56 2008/09/14 17:11:48 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -85,5 +85,5 @@
   virtual ~G4ionIonisation();
 
-  virtual G4bool IsApplicable(const G4ParticleDefinition& p);
+  inline G4bool IsApplicable(const G4ParticleDefinition& p);
 
   // Print out of the class parameters
@@ -102,5 +102,5 @@
 					   const G4ParticleDefinition*);
 
-  virtual G4double MinPrimaryEnergy(const G4ParticleDefinition* p,
+  inline G4double MinPrimaryEnergy(const G4ParticleDefinition* p,
 				   const G4Material*, G4double cut);
 
@@ -127,4 +127,21 @@
 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
+inline G4bool G4ionIonisation::IsApplicable(const G4ParticleDefinition& p)
+{
+  return (p.GetPDGCharge() != 0.0 && !p.IsShortLived() &&
+          p.GetParticleType() == "nucleus");
+}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
+
+inline G4double G4ionIonisation::MinPrimaryEnergy(
+          const G4ParticleDefinition* p, const G4Material*, G4double cut)
+{
+  return 
+    p->GetPDGMass()*(std::sqrt(1. + 0.5*cut/CLHEP::electron_mass_c2) - 1.0);
+}
+
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
Index: trunk/source/processes/electromagnetic/standard/src/G4ASTARStopping.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4ASTARStopping.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4ASTARStopping.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4ASTARStopping.cc,v 1.8 2008/11/24 18:28:09 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 
 //---------------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4BetheBlochModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4BetheBlochModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4BetheBlochModel.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4BetheBlochModel.cc,v 1.25 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4BetheBlochModel.cc,v 1.24 2008/10/22 16:00:57 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -111,6 +111,4 @@
 
   corrFactor = chargeSquare;
-  // always false before the run
-  SetDeexcitationFlag(false);
 
   if(!isInitialised) {
@@ -455,15 +453,3 @@
 }
 
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
-G4double G4BetheBlochModel::MaxSecondaryEnergy(const G4ParticleDefinition* pd,
-					       G4double kinEnergy) 
-{
-  if(isIon) SetParticle(pd);
-  G4double tau  = kinEnergy/mass;
-  G4double tmax = 2.0*electron_mass_c2*tau*(tau + 2.) /
-                  (1. + 2.0*(tau + 1.)*ratio + ratio*ratio);
-  return std::min(tmax,tlimit);
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/source/processes/electromagnetic/standard/src/G4BetheHeitlerModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4BetheHeitlerModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4BetheHeitlerModel.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4BetheHeitlerModel.cc,v 1.12 2008/10/15 15:54:57 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4BohrFluctuations.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4BohrFluctuations.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4BohrFluctuations.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4BohrFluctuations.cc,v 1.7 2009/02/19 19:17:50 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4BohrFluctuations.cc,v 1.6 2007/09/27 14:02:41 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -137,22 +137,3 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
-G4double G4BohrFluctuations::Dispersion(const G4Material* material,
-					const G4DynamicParticle* dp,
-					G4double& tmax,
-					G4double& length)
-{
-  if(!particle) InitialiseMe(dp->GetDefinition());
 
-  G4double electronDensity = material->GetElectronDensity();
-  kineticEnergy = dp->GetKineticEnergy();
-  G4double etot = kineticEnergy + particleMass;
-  beta2 = kineticEnergy*(kineticEnergy + 2.0*particleMass)/(etot*etot);
-  G4double siga  = (1.0/beta2 - 0.5) * twopi_mc2_rcl2 * tmax * length
-                 * electronDensity * chargeSquare;
-
-  return siga;
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
-
Index: trunk/source/processes/electromagnetic/standard/src/G4BraggIonModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4BraggIonModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4BraggIonModel.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4BraggIonModel.cc,v 1.23 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4BraggIonModel.cc,v 1.22 2008/10/22 16:00:57 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -113,7 +113,4 @@
 
   corrFactor = chargeSquare;
-
-  // always false before the run
-  SetDeexcitationFlag(false);
 
   if(!isInitialised) {
@@ -355,16 +352,4 @@
   fParticleChange->SetProposedKineticEnergy(kineticEnergy);
   fParticleChange->SetProposedMomentumDirection(finalP);
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
-
-G4double G4BraggIonModel::MaxSecondaryEnergy(const G4ParticleDefinition* pd,
-					     G4double kinEnergy)
-{
-  if(pd != particle) SetParticle(pd);
-  G4double tau  = kinEnergy/mass;
-  G4double tmax = 2.0*electron_mass_c2*tau*(tau + 2.) /
-                  (1. + 2.0*(tau + 1.)*ratio + ratio*ratio);
-  return tmax;
 }
 
Index: trunk/source/processes/electromagnetic/standard/src/G4BraggModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4BraggModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4BraggModel.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4BraggModel.cc,v 1.21 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4BraggModel.cc,v 1.20 2008/10/22 16:01:46 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -111,7 +111,4 @@
 {
   if(p != particle) SetParticle(p);
-
-  // always false before the run
-  SetDeexcitationFlag(false);
 
   if(!isInitialised) {
@@ -340,16 +337,4 @@
 
   vdp->push_back(delta);
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
-
-G4double G4BraggModel::MaxSecondaryEnergy(const G4ParticleDefinition* pd,
-					  G4double kinEnergy)
-{
-  if(pd != particle) SetParticle(pd);
-  G4double tau  = kinEnergy/mass;
-  G4double tmax = 2.0*electron_mass_c2*tau*(tau + 2.) /
-                  (1. + 2.0*(tau + 1.)*ratio + ratio*ratio);
-  return tmax;
 }
 
Index: trunk/source/processes/electromagnetic/standard/src/G4ComptonScattering.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4ComptonScattering.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4ComptonScattering.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4ComptonScattering.cc,v 1.31 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4ComptonScattering.cc,v 1.30 2008/10/15 17:53:44 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // 
@@ -84,11 +84,4 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
-G4bool G4ComptonScattering::IsApplicable(const G4ParticleDefinition& p)
-{
-  return (&p == G4Gamma::Gamma());
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
 void G4ComptonScattering::InitialiseProcess(const G4ParticleDefinition*)
 {
Index: trunk/source/processes/electromagnetic/standard/src/G4ComptonScattering52.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4ComptonScattering52.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4ComptonScattering52.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4ComptonScattering52.cc,v 1.7 2008/10/15 17:53:44 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // 
Index: trunk/source/processes/electromagnetic/standard/src/G4CoulombScattering.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4CoulombScattering.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4CoulombScattering.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4CoulombScattering.cc,v 1.20 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4CoulombScattering.cc,v 1.19 2008/10/15 17:53:44 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -79,11 +79,4 @@
 G4CoulombScattering::~G4CoulombScattering()
 {}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
-G4bool G4CoulombScattering::IsApplicable(const G4ParticleDefinition& p)
-{
-  return (p.GetPDGCharge() != 0.0 && !p.IsShortLived());
-}
 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
Index: trunk/source/processes/electromagnetic/standard/src/G4CoulombScatteringModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4CoulombScatteringModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4CoulombScatteringModel.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4CoulombScatteringModel.cc,v 1.37 2008/07/31 13:11:34 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4GammaConversion.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4GammaConversion.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4GammaConversion.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4GammaConversion.cc,v 1.31 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4GammaConversion.cc,v 1.30 2008/10/15 17:53:44 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // 
@@ -90,11 +90,4 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
-G4bool G4GammaConversion::IsApplicable(const G4ParticleDefinition& p)
-{
-  return (&p == G4Gamma::Gamma());
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
 void G4GammaConversion::InitialiseProcess(const G4ParticleDefinition*)
 {
Index: trunk/source/processes/electromagnetic/standard/src/G4InitXscPAI.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4InitXscPAI.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4InitXscPAI.cc	(revision 991)
@@ -26,5 +26,5 @@
 //
 // $Id: G4InitXscPAI.cc,v 1.9 2006/06/29 19:53:00 gunter Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // 
Index: trunk/source/processes/electromagnetic/standard/src/G4IonFluctuations.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4IonFluctuations.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4IonFluctuations.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4IonFluctuations.cc,v 1.25 2009/02/19 19:17:50 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4IonFluctuations.cc,v 1.24 2008/10/22 16:25:21 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -420,17 +420,2 @@
 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
-void G4IonFluctuations::SetParticleAndCharge(const G4ParticleDefinition* part,
-					     G4double q2)
-{
-  if(part != particle) {
-    particle       = part;
-    particleMass   = part->GetPDGMass();
-    charge         = part->GetPDGCharge()/eplus;
-    chargeSquare   = charge*charge;
-  }
-  effChargeSquare  = q2;
-  uniFluct.SetParticleAndCharge(part, q2);
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
Index: trunk/source/processes/electromagnetic/standard/src/G4KleinNishinaCompton.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4KleinNishinaCompton.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4KleinNishinaCompton.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4KleinNishinaCompton.cc,v 1.9 2007/05/22 17:34:36 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4MollerBhabhaModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4MollerBhabhaModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4MollerBhabhaModel.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4MollerBhabhaModel.cc,v 1.31 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4MollerBhabhaModel.cc,v 1.30 2007/05/22 17:34:36 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -74,9 +74,8 @@
                                          const G4String& nam)
   : G4VEmModel(nam),
-    particle(0),
-    isElectron(true),
-    twoln10(2.0*log(10.0)),
-    lowLimit(0.2*keV),
-    isInitialised(false)
+  particle(0),
+  isElectron(true),
+  twoln10(2.0*log(10.0)),
+  lowLimit(0.2*keV)
 {
   theElectron = G4Electron::Electron();
@@ -88,4 +87,12 @@
 G4MollerBhabhaModel::~G4MollerBhabhaModel()
 {}
+
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
+
+void G4MollerBhabhaModel::SetParticle(const G4ParticleDefinition* p)
+{
+  particle = p;
+  if(p != theElectron) isElectron = false;
+}
 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -101,29 +108,13 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
 
-G4double G4MollerBhabhaModel::MaxSecondaryEnergy(const G4ParticleDefinition*,
-						 G4double kinEnergy) 
-{
-  G4double tmax = kinEnergy;
-  if(isElectron) tmax *= 0.5;
-  return tmax;
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
-
 void G4MollerBhabhaModel::Initialise(const G4ParticleDefinition* p,
                                      const G4DataVector&)
 {
   if(!particle) SetParticle(p);
-  SetDeexcitationFlag(false);
-
-  if(isInitialised) return;
-
-  isInitialised = true;
-  if(pParticleChange) {
+  if(pParticleChange)
     fParticleChange = reinterpret_cast<G4ParticleChangeForLoss*>
                                                      (pParticleChange);
-  } else {
+  else
     fParticleChange = new G4ParticleChangeForLoss();
-  }
 }
 
Index: trunk/source/processes/electromagnetic/standard/src/G4MscModel71.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4MscModel71.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4MscModel71.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4MscModel71.cc,v 1.6 2008/03/13 17:20:07 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4MultipleScattering.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4MultipleScattering.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4MultipleScattering.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4MultipleScattering.cc,v 1.75 2008/10/15 17:53:44 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -----------------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4MultipleScattering71.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4MultipleScattering71.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4MultipleScattering71.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4MultipleScattering71.cc,v 1.5 2008/07/16 11:27:41 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -----------------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4PAIModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4PAIModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4PAIModel.cc	(revision 991)
@@ -24,10 +24,4 @@
 // ********************************************************************
 //
-// $Id: G4PAIModel.cc,v 1.46 2009/02/19 19:17:50 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
-//
-// -------------------------------------------------------------------
-//
-// GEANT4 Class
 // File name:     G4PAIModel.cc
 //
@@ -183,7 +177,4 @@
       fCutCouple = theCoupleTable->GetMaterialCutsCouple( fMaterial, 
 					  curReg->GetProductionCuts() );
-      //G4cout << "Reg <" <<curReg->GetName() << ">  mat <" 
-      //	     << fMaterial->GetName() << ">  fCouple= " 
-      //	     << fCutCouple<<G4endl;
       if( fCutCouple ) {
 	fMaterialCutsCoupleVector.push_back(fCutCouple);
@@ -206,9 +197,4 @@
   }
 }
-
-//////////////////////////////////////////////////////////////////
-
-void G4PAIModel::InitialiseMe(const G4ParticleDefinition*) 
-{}
 
 //////////////////////////////////////////////////////////////////
@@ -407,6 +393,5 @@
   {
     //  if ( x1 == x2  ) dNdxCut = y1 + (y2 - y1)*G4UniformRand() ;
-    //    if ( std::abs(x1-x2) <= eV  ) dNdxCut = y1 + (y2 - y1)*G4UniformRand() ;
-    if ( std::abs(x1-x2) <= eV  ) dNdxCut = y1 + (y2 - y1)*0.5 ;
+    if ( std::abs(x1-x2) <= eV  ) dNdxCut = y1 + (y2 - y1)*G4UniformRand() ;
     else             dNdxCut = y1 + (transferCut - x1)*(y2 - y1)/(x2 - x1) ;      
   }
@@ -450,6 +435,5 @@
   {
     //  if ( x1 == x2  ) dEdxCut = y1 + (y2 - y1)*G4UniformRand() ;
-    //    if ( std::abs(x1-x2) <= eV  ) dEdxCut = y1 + (y2 - y1)*G4UniformRand() ;
-    if ( std::abs(x1-x2) <= eV  ) dEdxCut = y1 + (y2 - y1)*0.5 ;
+    if ( std::abs(x1-x2) <= eV  ) dEdxCut = y1 + (y2 - y1)*G4UniformRand() ;
     else             dEdxCut = y1 + (transferCut - x1)*(y2 - y1)/(x2 - x1) ;      
   }
@@ -460,20 +444,15 @@
 //////////////////////////////////////////////////////////////////////////////
 
-G4double G4PAIModel::ComputeDEDXPerVolume(const G4Material*,
-					  const G4ParticleDefinition* p,
-					  G4double kineticEnergy,
-					  G4double cutEnergy)
+G4double G4PAIModel::ComputeDEDX(const G4MaterialCutsCouple* matCC,
+                                 const G4ParticleDefinition* p,
+                                       G4double kineticEnergy,
+                                       G4double cutEnergy)
 {
   G4int iTkin,iPlace;
   size_t jMat;
-  
-  //G4double cut = std::min(MaxSecondaryEnergy(p, kineticEnergy), cutEnergy);
-  G4double cut = cutEnergy;
-
   G4double massRatio  = fMass/p->GetPDGMass();
   G4double scaledTkin = kineticEnergy*massRatio;
   G4double charge     = p->GetPDGCharge();
-  G4double charge2    = charge*charge;
-  const G4MaterialCutsCouple* matCC = CurrentCouple();
+  G4double charge2    = charge*charge, dEdx;
 
   for( jMat = 0 ;jMat < fMaterialCutsCoupleVector.size() ; ++jMat )
@@ -491,5 +470,6 @@
   iPlace = iTkin - 1;
   if(iPlace < 0) iPlace = 0;
-  G4double dEdx = charge2*( (*fdEdxVector)(iPlace) - GetdEdxCut(iPlace,cut) );
+  dEdx = charge2*( (*fdEdxVector)(iPlace) - GetdEdxCut(iPlace,cutEnergy) ) ;  
+
   if( dEdx < 0.) dEdx = 0.;
   return dEdx;
@@ -498,19 +478,17 @@
 /////////////////////////////////////////////////////////////////////////
 
-G4double G4PAIModel::CrossSectionPerVolume( const G4Material*,
-					    const G4ParticleDefinition* p,
-					    G4double kineticEnergy,
-					    G4double cutEnergy,
-					    G4double maxEnergy  ) 
+G4double G4PAIModel::CrossSection( const G4MaterialCutsCouple* matCC,
+                                   const G4ParticleDefinition* p,
+                                         G4double kineticEnergy,
+                                         G4double cutEnergy,
+                                         G4double maxEnergy  ) 
 {
   G4int iTkin,iPlace;
   size_t jMat;
-  G4double tmax = std::min(MaxSecondaryEnergy(p, kineticEnergy), maxEnergy);
-  if(tmax <= cutEnergy) return 0.0;
+  G4double tmax = min(MaxSecondaryEnergy(p, kineticEnergy), maxEnergy);
   G4double massRatio  = fMass/p->GetPDGMass();
   G4double scaledTkin = kineticEnergy*massRatio;
   G4double charge     = p->GetPDGCharge();
   G4double charge2    = charge*charge, cross, cross1, cross2;
-  const G4MaterialCutsCouple* matCC = CurrentCouple();
 
   for( jMat = 0 ;jMat < fMaterialCutsCoupleVector.size() ; ++jMat )
@@ -957,27 +935,4 @@
 }
 
-/////////////////////////////////////////////////////////////////////
-
-G4double G4PAIModel::MaxSecondaryEnergy( const G4ParticleDefinition* p,
-					 G4double kinEnergy) 
-{
-  G4double tmax = kinEnergy;
-  if(p == fElectron) tmax *= 0.5;
-  else if(p != fPositron) { 
-    G4double mass = p->GetPDGMass();
-    G4double ratio= electron_mass_c2/mass;
-    G4double gamma= kinEnergy/mass + 1.0;
-    tmax = 2.0*electron_mass_c2*(gamma*gamma - 1.) /
-                  (1. + 2.0*gamma*ratio + ratio*ratio);
-  }
-  return tmax;
-}
-
-///////////////////////////////////////////////////////////////
-
-void G4PAIModel::DefineForRegion(const G4Region* r) 
-{
-  fPAIRegionVector.push_back(r);
-}
 
 //
Index: trunk/source/processes/electromagnetic/standard/src/G4PAIPhotonModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4PAIPhotonModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4PAIPhotonModel.cc	(revision 991)
@@ -24,10 +24,4 @@
 // ********************************************************************
 //
-// $Id: G4PAIPhotonModel.cc,v 1.21 2009/02/19 19:17:50 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
-//
-// -------------------------------------------------------------------
-//
-// GEANT4 Class 
 // File name:     G4PAIPhotonModel.cc
 //
@@ -223,9 +217,4 @@
 //////////////////////////////////////////////////////////////////
 
-void G4PAIPhotonModel::InitialiseMe(const G4ParticleDefinition*)
-{}
-
-//////////////////////////////////////////////////////////////////
-
 void G4PAIPhotonModel::ComputeSandiaPhotoAbsCof()
 {
@@ -498,6 +487,5 @@
   {
     //  if ( x1 == x2  ) dNdxCut = y1 + (y2 - y1)*G4UniformRand() ;
-    //    if ( std::abs(x1-x2) <= eV  ) dNdxCut = y1 + (y2 - y1)*G4UniformRand() ;
-    if ( std::abs(x1-x2) <= eV  ) dNdxCut = y1 + (y2 - y1)*0.5 ;
+    if ( std::abs(x1-x2) <= eV  ) dNdxCut = y1 + (y2 - y1)*G4UniformRand() ;
     else             dNdxCut = y1 + (transferCut - x1)*(y2 - y1)/(x2 - x1) ;      
   }
@@ -542,6 +530,5 @@
   {
     //  if ( x1 == x2  ) dNdxCut = y1 + (y2 - y1)*G4UniformRand() ;
-    //    if ( std::abs(x1-x2) <= eV  ) dNdxCut = y1 + (y2 - y1)*G4UniformRand() ;
-    if ( std::abs(x1-x2) <= eV  ) dNdxCut = y1 + (y2 - y1)*0.5 ;
+    if ( std::abs(x1-x2) <= eV  ) dNdxCut = y1 + (y2 - y1)*G4UniformRand() ;
     else             dNdxCut = y1 + (transferCut - x1)*(y2 - y1)/(x2 - x1) ;      
   }
@@ -587,6 +574,5 @@
   {
     //  if ( x1 == x2  ) dNdxCut = y1 + (y2 - y1)*G4UniformRand() ;
-    //    if ( std::abs(x1-x2) <= eV  ) dNdxCut = y1 + (y2 - y1)*G4UniformRand() ;
-    if ( std::abs(x1-x2) <= eV  ) dNdxCut = y1 + (y2 - y1)*0.5 ;
+    if ( std::abs(x1-x2) <= eV  ) dNdxCut = y1 + (y2 - y1)*G4UniformRand() ;
     else             dNdxCut = y1 + (transferCut - x1)*(y2 - y1)/(x2 - x1) ;      
   }
@@ -631,6 +617,5 @@
   {
     //  if ( x1 == x2  ) dEdxCut = y1 + (y2 - y1)*G4UniformRand() ;
-    //    if ( std::abs(x1-x2) <= eV  ) dEdxCut = y1 + (y2 - y1)*G4UniformRand() ;
-    if ( std::abs(x1-x2) <= eV  ) dEdxCut = y1 + (y2 - y1)*0.5 ;
+    if ( std::abs(x1-x2) <= eV  ) dEdxCut = y1 + (y2 - y1)*G4UniformRand() ;
     else             dEdxCut = y1 + (transferCut - x1)*(y2 - y1)/(x2 - x1) ;      
   }
@@ -641,15 +626,11 @@
 //////////////////////////////////////////////////////////////////////////////
 
-G4double G4PAIPhotonModel::ComputeDEDXPerVolume(const G4Material*,
-						const G4ParticleDefinition* p,
-						G4double kineticEnergy,
-						G4double cutEnergy)
+G4double G4PAIPhotonModel::ComputeDEDX(const G4MaterialCutsCouple* matCC,
+                                 const G4ParticleDefinition* p,
+                                       G4double kineticEnergy,
+                                       G4double cutEnergy)
 {
   G4int iTkin,iPlace;
   size_t jMat;
-
-  //G4double cut = std::min(MaxSecondaryEnergy(p, kineticEnergy), cutEnergy);
-  G4double cut = cutEnergy;
-
   G4double particleMass = p->GetPDGMass();
   G4double scaledTkin   = kineticEnergy*proton_mass_c2/particleMass;
@@ -657,5 +638,4 @@
   G4double charge2      = charge*charge;
   G4double dEdx         = 0.;
-  const G4MaterialCutsCouple* matCC = CurrentCouple();
 
   for( jMat = 0 ;jMat < fMaterialCutsCoupleVector.size() ; ++jMat )
@@ -673,5 +653,5 @@
   iPlace = iTkin - 1;
   if(iPlace < 0) iPlace = 0;
-  dEdx = charge2*( (*fdEdxVector)(iPlace) - GetdEdxCut(iPlace,cut) ) ;  
+  dEdx = charge2*( (*fdEdxVector)(iPlace) - GetdEdxCut(iPlace,cutEnergy) ) ;  
 
   if( dEdx < 0.) dEdx = 0.;
@@ -681,14 +661,13 @@
 /////////////////////////////////////////////////////////////////////////
 
-G4double G4PAIPhotonModel::CrossSectionPerVolume( const G4Material*,
-						  const G4ParticleDefinition* p,
-						  G4double kineticEnergy,
-						  G4double cutEnergy,
-						  G4double maxEnergy  ) 
+G4double G4PAIPhotonModel::CrossSection( const G4MaterialCutsCouple* matCC,
+                                   const G4ParticleDefinition* p,
+                                         G4double kineticEnergy,
+                                         G4double cutEnergy,
+                                         G4double maxEnergy  ) 
 {
   G4int iTkin,iPlace;
   size_t jMat, jMatCC;
-  G4double tmax = std::min(MaxSecondaryEnergy(p, kineticEnergy), maxEnergy);
-  if(cutEnergy >= tmax) return 0.0;
+  G4double tmax = min(MaxSecondaryEnergy(p, kineticEnergy), maxEnergy);
   G4double particleMass = p->GetPDGMass();
   G4double scaledTkin   = kineticEnergy*proton_mass_c2/particleMass;
@@ -696,6 +675,4 @@
   G4double charge2      = charge*charge, cross, cross1, cross2;
   G4double photon1, photon2, plasmon1, plasmon2;
-
-  const G4MaterialCutsCouple* matCC = CurrentCouple();
 
   const G4ProductionCutsTable* theCoupleTable=
@@ -1248,28 +1225,4 @@
 }
 
-/////////////////////////////////////////////////////////////////////
-
-G4double G4PAIPhotonModel::MaxSecondaryEnergy( const G4ParticleDefinition* p,
-                                                      G4double kinEnergy) 
-{
-  G4double tmax = kinEnergy;
-  if(p == fElectron) tmax *= 0.5;
-  else if(p != fPositron) { 
-    G4double mass = p->GetPDGMass();
-    G4double ratio= electron_mass_c2/mass;
-    G4double gamma= kinEnergy/mass + 1.0;
-    tmax = 2.0*electron_mass_c2*(gamma*gamma - 1.) /
-                  (1. + 2.0*gamma*ratio + ratio*ratio);
-  }
-  return tmax;
-}
-
-///////////////////////////////////////////////////////////////
-
-void G4PAIPhotonModel::DefineForRegion(const G4Region* r) 
-{
-  fPAIRegionVector.push_back(r);
-}
-
 
 //
Index: trunk/source/processes/electromagnetic/standard/src/G4PAIxSection.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4PAIxSection.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4PAIxSection.cc	(revision 991)
@@ -26,5 +26,5 @@
 //
 // $Id: G4PAIxSection.cc,v 1.24 2008/05/30 16:04:40 grichine Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // 
Index: trunk/source/processes/electromagnetic/standard/src/G4PAIySection.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4PAIySection.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4PAIySection.cc	(revision 991)
@@ -26,5 +26,5 @@
 //
 // $Id: G4PAIySection.cc,v 1.3 2007/10/01 18:38:10 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // 
Index: trunk/source/processes/electromagnetic/standard/src/G4PEEffectModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4PEEffectModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4PEEffectModel.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4PEEffectModel.cc,v 1.7 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4PEEffectModel.cc,v 1.6 2007/05/22 17:34:36 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -41,6 +41,4 @@
 //
 // 04.12.05 : SetProposedKineticEnergy(0.) for the killed photon (mma)
-// 20.02.09 : Added initialisation of deexcitation flag and method
-//            CrossSectionPerVolume instead of mfp (V.Ivanchenko)
 //
 // Class Description:
@@ -68,5 +66,4 @@
   theGamma    = G4Gamma::Gamma();
   theElectron = G4Electron::Electron();
-  fminimalEnergy = 1.0*eV;
 }
 
@@ -74,5 +71,6 @@
 
 G4PEEffectModel::~G4PEEffectModel()
-{}
+{
+}
 
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
@@ -81,49 +79,12 @@
 				 const G4DataVector&)
 {
-  // always false before the run
-  SetDeexcitationFlag(false);
+ if (isInitialized) return;
+ if (pParticleChange)
+   fParticleChange =
+                  reinterpret_cast<G4ParticleChangeForGamma*>(pParticleChange);
+  else
+   fParticleChange = new G4ParticleChangeForGamma();
 
-  if (isInitialized) return;
-  if (pParticleChange) {
-    fParticleChange = reinterpret_cast<G4ParticleChangeForGamma*>(pParticleChange);
-  } else {
-    fParticleChange = new G4ParticleChangeForGamma();
-  }
-  isInitialized = true;
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
-
-G4double G4PEEffectModel::ComputeCrossSectionPerAtom(const G4ParticleDefinition*,
-						     G4double energy,
-						     G4double Z, G4double,
-						     G4double, G4double)
-{
-  G4double* SandiaCof = G4SandiaTable::GetSandiaCofPerAtom((G4int)Z, energy);
-
-  G4double energy2 = energy*energy;
-  G4double energy3 = energy*energy2;
-  G4double energy4 = energy2*energy2;
-
-  return SandiaCof[0]/energy  + SandiaCof[1]/energy2 +
-    SandiaCof[2]/energy3 + SandiaCof[3]/energy4;
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
-G4double G4PEEffectModel::CrossSectionPerVolume(const G4Material* material,
-						const G4ParticleDefinition*,
-						G4double energy,
-						G4double, G4double)
-{
-  G4double* SandiaCof = 
-    material->GetSandiaTable()->GetSandiaCofForMaterial(energy);
-				
-  G4double energy2 = energy*energy;
-  G4double energy3 = energy*energy2;
-  G4double energy4 = energy2*energy2;
-	  
-  return SandiaCof[0]/energy  + SandiaCof[1]/energy2 +
-    SandiaCof[2]/energy3 + SandiaCof[3]/energy4; 
+ fminimalEnergy = 1.0*eV;
 }
 
Index: trunk/source/processes/electromagnetic/standard/src/G4PSTARStopping.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4PSTARStopping.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4PSTARStopping.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4PSTARStopping.cc,v 1.8 2008/11/24 18:28:09 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 
 //---------------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4PhotoElectricEffect.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4PhotoElectricEffect.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4PhotoElectricEffect.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4PhotoElectricEffect.cc,v 1.42 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4PhotoElectricEffect.cc,v 1.41 2008/10/16 14:12:32 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 //
@@ -89,11 +89,4 @@
 {}
 
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
-G4bool G4PhotoElectricEffect::IsApplicable(const G4ParticleDefinition& p)
-{
-  return (&p == G4Gamma::Gamma());
-}
-
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
 
Index: trunk/source/processes/electromagnetic/standard/src/G4PolarizedComptonScattering.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4PolarizedComptonScattering.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4PolarizedComptonScattering.cc	(revision 991)
@@ -26,5 +26,5 @@
 //
 // $Id: G4PolarizedComptonScattering.cc,v 1.18 2008/10/15 17:53:44 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 //
Index: trunk/source/processes/electromagnetic/standard/src/G4UniversalFluctuation.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4UniversalFluctuation.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4UniversalFluctuation.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4UniversalFluctuation.cc,v 1.17 2009/02/19 11:26:01 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4UniversalFluctuation.cc,v 1.16 2008/10/22 16:04:33 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -305,16 +305,3 @@
 }
 
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
-void 
-G4UniversalFluctuation::SetParticleAndCharge(const G4ParticleDefinition* part,
-					     G4double q2)
-{
-  if(part != particle) {
-    particle       = part;
-    particleMass   = part->GetPDGMass();
-  }
-  chargeSquare = q2;
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
+//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
Index: trunk/source/processes/electromagnetic/standard/src/G4UrbanMscModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4UrbanMscModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4UrbanMscModel.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4UrbanMscModel.cc,v 1.86 2008/10/29 14:15:30 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4UrbanMscModel2.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4UrbanMscModel2.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4UrbanMscModel2.cc	(revision 991)
@@ -26,5 +26,5 @@
 //
 // $Id: G4UrbanMscModel2.cc,v 1.18 2008/12/18 13:01:36 gunter Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4UrbanMscModel90.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4UrbanMscModel90.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4UrbanMscModel90.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4UrbanMscModel90.cc,v 1.10 2008/10/29 14:15:30 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4WaterStopping.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4WaterStopping.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4WaterStopping.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4WaterStopping.cc,v 1.11 2008/12/18 13:01:38 gunter Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 
 //---------------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4WentzelVIModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4WentzelVIModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4WentzelVIModel.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4WentzelVIModel.cc,v 1.17 2009/02/19 19:17:15 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4WentzelVIModel.cc,v 1.16 2008/11/19 11:47:50 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -60,6 +60,6 @@
 #include "G4LossTableManager.hh"
 #include "G4ParticleChangeForMSC.hh"
-//#include "G4TransportationManager.hh"
-//#include "G4SafetyHelper.hh"
+#include "G4TransportationManager.hh"
+#include "G4SafetyHelper.hh"
 #include "G4PhysicsTableHelper.hh"
 #include "G4ElementVector.hh"
@@ -138,5 +138,7 @@
       fParticleChange = new G4ParticleChangeForMSC();
 
-    InitialiseSafetyHelper();
+    safetyHelper = G4TransportationManager::GetTransportationManager()
+      ->GetSafetyHelper();
+    safetyHelper->InitialiseHelper();
   }
 }
@@ -275,5 +277,5 @@
   // i.e. when it is needed for optimization purposes
   if(stepStatus != fGeomBoundary && presafety < tlimitminfix) 
-    presafety = ComputeSafety(sp->GetPosition(), tlimit); 
+    presafety = safetyHelper->ComputeSafety(sp->GetPosition()); 
   /*
   G4cout << "G4WentzelVIModel::ComputeTruePathLengthLimit tlimit= " 
@@ -568,6 +570,35 @@
 
     if(r > tlimitminfix) {
-      pos /= r;
-      ComputeDisplacement(fParticleChange, pos, r, safety);
+      G4ThreeVector Position = *(fParticleChange->GetProposedPosition());
+      G4double fac= 1.;
+      if(r >= safety) {
+	//  ******* so safety is computed at boundary too ************
+	G4double newsafety = 
+	  safetyHelper->ComputeSafety(Position) - tlimitminfix;
+        if(newsafety <= 0.0) fac = 0.0;
+	else if(r > newsafety) fac = newsafety/r ;
+        //G4cout << "NewSafety= " << newsafety << " fac= " << fac 
+	// << " r= " << r << " sint= " << sint << " pos " << Position << G4endl;
+      }  
+
+      if(fac > 0.) {
+	// compute new endpoint of the Step
+	G4ThreeVector newPosition = Position + fac*pos;
+
+	// check safety after displacement
+	G4double postsafety = safetyHelper->ComputeSafety(newPosition);
+
+	// displacement to boundary
+	if(postsafety <= 0.0) {
+	  safetyHelper->Locate(newPosition, newDirection);
+
+	  // not on the boundary
+	} else { 
+	  safetyHelper->ReLocateWithinVolume(newPosition);
+	  // if(fac < 1.0) G4cout << "NewPosition " << newPosition << G4endl;
+	}
+     
+	fParticleChange->ProposePosition(newPosition);
+      } 
     }
   }
Index: trunk/source/processes/electromagnetic/standard/src/G4eBremsstrahlung.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4eBremsstrahlung.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4eBremsstrahlung.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4eBremsstrahlung.cc,v 1.56 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4eBremsstrahlung.cc,v 1.55 2008/11/14 19:23:07 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -104,11 +104,4 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
-G4bool G4eBremsstrahlung::IsApplicable(const G4ParticleDefinition& p)
-{
-  return (&p == G4Electron::Electron() || &p == G4Positron::Positron());
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
 void G4eBremsstrahlung::InitialiseEnergyLossProcess(
                                                 const G4ParticleDefinition* p,
Index: trunk/source/processes/electromagnetic/standard/src/G4eBremsstrahlungModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4eBremsstrahlungModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4eBremsstrahlungModel.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4eBremsstrahlungModel.cc,v 1.43 2008/11/13 19:28:58 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4eBremsstrahlungRelModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4eBremsstrahlungRelModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4eBremsstrahlungRelModel.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4eBremsstrahlungRelModel.cc,v 1.13 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4eBremsstrahlungRelModel.cc,v 1.12 2008/11/13 23:28:27 schaelic Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4eCoulombScatteringModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4eCoulombScatteringModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4eCoulombScatteringModel.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4eCoulombScatteringModel.cc,v 1.59 2008/10/22 18:39:29 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4eIonisation.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4eIonisation.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4eIonisation.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4eIonisation.cc,v 1.57 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4eIonisation.cc,v 1.56 2008/10/20 08:56:41 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -103,22 +103,4 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
-G4double G4eIonisation::MinPrimaryEnergy(const G4ParticleDefinition*,
-					 const G4Material*,
-					 G4double cut)
-{
-  G4double x = cut;
-  if(isElectron) x += cut;
-  return x;
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
-G4bool G4eIonisation::IsApplicable(const G4ParticleDefinition& p)
-{
-  return (&p == G4Electron::Electron() || &p == G4Positron::Positron());
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
 void G4eIonisation::InitialiseEnergyLossProcess(
 		    const G4ParticleDefinition* part,
Index: trunk/source/processes/electromagnetic/standard/src/G4eMultipleScattering.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4eMultipleScattering.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4eMultipleScattering.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4eMultipleScattering.cc,v 1.7 2008/10/23 17:55:20 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -----------------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4eeToTwoGammaModel.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4eeToTwoGammaModel.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4eeToTwoGammaModel.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4eeToTwoGammaModel.cc,v 1.14 2007/05/23 08:47:35 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4eplusAnnihilation.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4eplusAnnihilation.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4eplusAnnihilation.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4eplusAnnihilation.cc,v 1.30 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4eplusAnnihilation.cc,v 1.29 2008/10/15 17:53:44 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -79,20 +79,4 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
-G4bool G4eplusAnnihilation::IsApplicable(const G4ParticleDefinition& p)
-{
-  return (&p == G4Positron::Positron());
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
-G4double G4eplusAnnihilation::AtRestGetPhysicalInteractionLength(
-                              const G4Track&, G4ForceCondition* condition)
-{
-  *condition = NotForced;
-  return 0.0;
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
 void G4eplusAnnihilation::InitialiseProcess(const G4ParticleDefinition*)
 {
Index: trunk/source/processes/electromagnetic/standard/src/G4hIonisation.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4hIonisation.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4hIonisation.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4hIonisation.cc,v 1.82 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4hIonisation.cc,v 1.81 2008/10/22 16:02:20 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -122,23 +122,4 @@
 {}
 
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
-G4bool G4hIonisation::IsApplicable(const G4ParticleDefinition& p)
-{
-  return (p.GetPDGCharge() != 0.0 && p.GetPDGMass() > 10.0*MeV &&
-	 !p.IsShortLived());
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
-G4double G4hIonisation::MinPrimaryEnergy(const G4ParticleDefinition*,
-					 const G4Material*,
-					 G4double cut)
-{
-  G4double x = 0.5*cut/electron_mass_c2;
-  G4double g = x*ratio + std::sqrt((1. + x)*(1. + x*ratio*ratio));
-  return mass*(g - 1.0);
-}
-
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....  
 
Index: trunk/source/processes/electromagnetic/standard/src/G4hMultipleScattering.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4hMultipleScattering.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4hMultipleScattering.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4hMultipleScattering.cc,v 1.13 2008/10/15 17:53:44 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -----------------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4ionGasIonisation.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4ionGasIonisation.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4ionGasIonisation.cc	(revision 991)
@@ -25,5 +25,5 @@
 //
 // $Id: G4ionGasIonisation.cc,v 1.14 2008/09/12 16:26:34 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
Index: trunk/source/processes/electromagnetic/standard/src/G4ionIonisation.cc
===================================================================
--- trunk/source/processes/electromagnetic/standard/src/G4ionIonisation.cc	(revision 968)
+++ trunk/source/processes/electromagnetic/standard/src/G4ionIonisation.cc	(revision 991)
@@ -24,6 +24,6 @@
 // ********************************************************************
 //
-// $Id: G4ionIonisation.cc,v 1.66 2009/02/20 12:06:37 vnivanch Exp $
-// GEANT4 tag $Name: geant4-09-02-ref-02 $
+// $Id: G4ionIonisation.cc,v 1.65 2008/10/15 17:53:44 vnivanch Exp $
+// GEANT4 tag $Name: geant4-09-02 $
 //
 // -------------------------------------------------------------------
@@ -104,22 +104,4 @@
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
 
-G4bool G4ionIonisation::IsApplicable(const G4ParticleDefinition& p)
-{
-  return (p.GetPDGCharge() != 0.0 && !p.IsShortLived() &&
-          p.GetParticleType() == "nucleus");
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
-G4double G4ionIonisation::MinPrimaryEnergy(const G4ParticleDefinition* p, 
-					   const G4Material*, 
-					   G4double cut)
-{
-  return 
-    p->GetPDGMass()*(std::sqrt(1. + 0.5*cut/CLHEP::electron_mass_c2) - 1.0);
-}
-
-//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
-
 void G4ionIonisation::InitialiseEnergyLossProcess(
 		      const G4ParticleDefinition* part,
