Ignore:
Timestamp:
Apr 17, 2009, 12:17:14 PM (15 years ago)
Author:
garnier
Message:

update

Location:
trunk/source/processes/electromagnetic/standard/include
Files:
44 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/processes/electromagnetic/standard/include/G4ASTARStopping.hh

    r961 r991  
    2525//
    2626// $Id: G4ASTARStopping.hh,v 1.6 2008/11/13 12:04:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828
    2929#ifndef G4ASTARStopping_h
  • trunk/source/processes/electromagnetic/standard/include/G4BetheBlochModel.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4BetheBlochModel.hh,v 1.17 2009/02/20 12:06:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4BetheBlochModel.hh,v 1.16 2008/10/22 16:00:57 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    8282  virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
    8383
    84   virtual G4double MinEnergyCut(const G4ParticleDefinition*,
    85                                 const G4MaterialCutsCouple*);
     84  G4double MinEnergyCut(const G4ParticleDefinition*,
     85                        const G4MaterialCutsCouple*);
    8686                       
    8787  virtual G4double ComputeCrossSectionPerElectron(
     
    131131protected:
    132132
    133   virtual G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
    134                                       G4double kinEnergy);
     133  G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
     134                              G4double kinEnergy);
    135135
    136136private:
     
    166166//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    167167
     168inline G4double G4BetheBlochModel::MaxSecondaryEnergy(
     169          const G4ParticleDefinition* pd,
     170                G4double kinEnergy)
     171{
     172  if(isIon) SetParticle(pd);
     173  G4double tau  = kinEnergy/mass;
     174  G4double tmax = 2.0*electron_mass_c2*tau*(tau + 2.) /
     175                  (1. + 2.0*(tau + 1.)*ratio + ratio*ratio);
     176  return std::min(tmax,tlimit);
     177}
     178
     179//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     180
    168181#endif
  • trunk/source/processes/electromagnetic/standard/include/G4BetheHeitlerModel.hh

    r961 r991  
    2525//
    2626// $Id: G4BetheHeitlerModel.hh,v 1.6 2007/05/22 17:34:36 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
  • trunk/source/processes/electromagnetic/standard/include/G4BohrFluctuations.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4BohrFluctuations.hh,v 1.4 2009/02/19 19:17:50 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4BohrFluctuations.hh,v 1.3 2007/09/27 13:53:11 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    7979  void InitialiseMe(const G4ParticleDefinition*);
    8080
     81protected:
     82
    8183private:
    8284
     
    101103//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    102104
     105
     106inline G4double G4BohrFluctuations::Dispersion(
     107                          const G4Material* material,
     108                          const G4DynamicParticle* dp,
     109                                G4double& tmax,
     110                                G4double& length)
     111{
     112  if(!particle) InitialiseMe(dp->GetDefinition());
     113
     114  G4double electronDensity = material->GetElectronDensity();
     115  kineticEnergy = dp->GetKineticEnergy();
     116  G4double etot = kineticEnergy + particleMass;
     117  beta2 = kineticEnergy*(kineticEnergy + 2.0*particleMass)/(etot*etot);
     118  G4double siga  = (1.0/beta2 - 0.5) * twopi_mc2_rcl2 * tmax * length
     119                 * electronDensity * chargeSquare;
     120
     121  return siga;
     122}
     123
     124//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     125
    103126#endif
    104127
  • trunk/source/processes/electromagnetic/standard/include/G4BraggIonModel.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4BraggIonModel.hh,v 1.12 2009/02/20 12:06:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4BraggIonModel.hh,v 1.11 2008/10/22 16:00:57 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    7777  virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
    7878
    79   virtual G4double MinEnergyCut(const G4ParticleDefinition*,
    80                                 const G4MaterialCutsCouple*);
     79  G4double MinEnergyCut(const G4ParticleDefinition*,
     80                        const G4MaterialCutsCouple*);
    8181                       
    8282  virtual G4double ComputeCrossSectionPerElectron(
     
    128128protected:
    129129
    130   virtual G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
    131                                       G4double kinEnergy);
     130  G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
     131                              G4double kinEnergy);
    132132
    133133private:
     
    180180//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    181181
     182inline G4double G4BraggIonModel::MaxSecondaryEnergy(
     183          const G4ParticleDefinition* pd,
     184                G4double kinEnergy)
     185{
     186  if(pd != particle) SetParticle(pd);
     187  G4double tau  = kinEnergy/mass;
     188  G4double tmax = 2.0*electron_mass_c2*tau*(tau + 2.) /
     189                  (1. + 2.0*(tau + 1.)*ratio + ratio*ratio);
     190  return tmax;
     191}
     192
     193//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     194
    182195inline void G4BraggIonModel::SetParticle(const G4ParticleDefinition* p)
    183196{
  • trunk/source/processes/electromagnetic/standard/include/G4BraggModel.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4BraggModel.hh,v 1.13 2009/02/20 12:06:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4BraggModel.hh,v 1.12 2008/09/14 17:11:48 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    8080  virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
    8181
    82   virtual G4double MinEnergyCut(const G4ParticleDefinition*,
    83                                 const G4MaterialCutsCouple*);
     82  G4double MinEnergyCut(const G4ParticleDefinition*,
     83                        const G4MaterialCutsCouple*);
    8484                       
    8585  virtual G4double ComputeCrossSectionPerElectron(
     
    131131protected:
    132132
    133   virtual G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
    134                                       G4double kinEnergy);
     133  G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
     134                              G4double kinEnergy);
    135135
    136136private:
    137137
    138   inline void SetParticle(const G4ParticleDefinition* p);
     138  void SetParticle(const G4ParticleDefinition* p);
    139139
    140140  G4bool HasMaterial(const G4Material* material);
     
    182182  G4bool   isInitialised;
    183183};
     184
     185//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     186
     187inline G4double G4BraggModel::MaxSecondaryEnergy(
     188                                            const G4ParticleDefinition* pd,
     189                                                  G4double kinEnergy)
     190{
     191  if(pd != particle) SetParticle(pd);
     192  G4double tau  = kinEnergy/mass;
     193  G4double tmax = 2.0*electron_mass_c2*tau*(tau + 2.) /
     194                  (1. + 2.0*(tau + 1.)*ratio + ratio*ratio);
     195  return tmax;
     196}
    184197
    185198//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
  • trunk/source/processes/electromagnetic/standard/include/G4ComptonScattering.hh

    r961 r991  
    2525//
    2626//
    27 // $Id: G4ComptonScattering.hh,v 1.21 2009/02/20 12:06:37 vnivanch Exp $
    28 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// $Id: G4ComptonScattering.hh,v 1.20 2007/05/23 08:47:34 vnivanch Exp $
     28// GEANT4 tag $Name: geant4-09-02 $
    2929//
    3030//------------------ G4ComptonScattering physics process -----------------------
     
    8282
    8383  // true for Gamma only. 
    84   virtual G4bool IsApplicable(const G4ParticleDefinition&);
     84  G4bool IsApplicable(const G4ParticleDefinition&);
    8585 
    8686  // Print few lines of informations about the process: validity range,
    8787  virtual void PrintInfo();
     88
    8889
    8990protected:
     
    9697};
    9798
     99//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     100//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     101
     102inline
     103G4bool G4ComptonScattering::IsApplicable(const G4ParticleDefinition& p)
     104{
     105  return (&p == G4Gamma::Gamma());
     106}
     107
    98108//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    99109 
  • trunk/source/processes/electromagnetic/standard/include/G4ComptonScattering52.hh

    r961 r991  
    2626//
    2727// $Id: G4ComptonScattering52.hh,v 1.4 2007/05/16 14:00:56 vnivanch Exp $
    28 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     28// GEANT4 tag $Name: geant4-09-02 $
    2929//
    3030//------------------ G4ComptonScattering52 physics process -----------------------
  • trunk/source/processes/electromagnetic/standard/include/G4CoulombScattering.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4CoulombScattering.hh,v 1.12 2009/02/20 12:06:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4CoulombScattering.hh,v 1.11 2008/06/13 08:19:43 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    104104//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    105105
     106inline G4bool G4CoulombScattering::IsApplicable(const G4ParticleDefinition& p)
     107{
     108  return (p.GetPDGCharge() != 0.0 && !p.IsShortLived());
     109}
     110
     111//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     112
    106113inline void G4CoulombScattering::SetThetaMin(G4double val)
    107114{
  • trunk/source/processes/electromagnetic/standard/include/G4CoulombScatteringModel.hh

    r961 r991  
    2525//
    2626// $Id: G4CoulombScatteringModel.hh,v 1.15 2008/07/31 13:11:34 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
  • trunk/source/processes/electromagnetic/standard/include/G4GammaConversion.hh

    r961 r991  
    2525//
    2626//
    27 // $Id: G4GammaConversion.hh,v 1.23 2009/02/20 12:06:37 vnivanch Exp $
    28 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// $Id: G4GammaConversion.hh,v 1.22 2007/05/23 08:47:34 vnivanch Exp $
     28// GEANT4 tag $Name: geant4-09-02 $
    2929//
    3030//
     
    8585
    8686  // true for Gamma only.
    87   virtual G4bool IsApplicable(const G4ParticleDefinition&);
     87  G4bool IsApplicable(const G4ParticleDefinition&);
    8888
    8989  // Print few lines of informations about the process: validity range,
     
    9999};
    100100
     101//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     102//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     103
     104inline G4bool G4GammaConversion::IsApplicable(const G4ParticleDefinition& p)
     105{
     106  return (&p == G4Gamma::Gamma());
     107}
     108
    101109//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    102110 
  • trunk/source/processes/electromagnetic/standard/include/G4InitXscPAI.hh

    r961 r991  
    2626//
    2727// $Id: G4InitXscPAI.hh,v 1.8 2006/06/29 19:50:22 gunter Exp $
    28 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     28// GEANT4 tag $Name: geant4-09-02 $
    2929//
    3030//
  • trunk/source/processes/electromagnetic/standard/include/G4IonFluctuations.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4IonFluctuations.hh,v 1.9 2009/02/19 19:17:50 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4IonFluctuations.hh,v 1.8 2008/10/22 16:04:33 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    8484
    8585  // Initialisation prestep
    86   void SetParticleAndCharge(const G4ParticleDefinition*, G4double q2);
     86  inline void SetParticleAndCharge(const G4ParticleDefinition*, G4double q2);
    8787
    8888private:
     
    117117//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    118118
     119inline
     120void G4IonFluctuations::SetParticleAndCharge(const G4ParticleDefinition* part,
     121                                             G4double q2)
     122{
     123  if(part != particle) {
     124    particle       = part;
     125    particleMass   = part->GetPDGMass();
     126    charge         = part->GetPDGCharge()/eplus;
     127    chargeSquare   = charge*charge;
     128  }
     129  effChargeSquare  = q2;
     130  uniFluct.SetParticleAndCharge(part, q2);
     131}
     132
     133//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     134
    119135#endif
    120136
  • trunk/source/processes/electromagnetic/standard/include/G4KleinNishinaCompton.hh

    r961 r991  
    2525//
    2626// $Id: G4KleinNishinaCompton.hh,v 1.9 2007/05/22 17:34:36 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
  • trunk/source/processes/electromagnetic/standard/include/G4MollerBhabhaModel.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4MollerBhabhaModel.hh,v 1.20 2009/02/20 12:06:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4MollerBhabhaModel.hh,v 1.19 2007/05/22 17:34:36 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    7474  virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
    7575
    76   virtual G4double MinEnergyCut(const G4ParticleDefinition*,
    77                                 const G4MaterialCutsCouple*);
     76  G4double MinEnergyCut(const G4ParticleDefinition*,
     77                        const G4MaterialCutsCouple*);
    7878                               
    7979  virtual G4double ComputeCrossSectionPerElectron(
     
    109109protected:
    110110
    111   virtual G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
    112                                       G4double kinEnergy);
     111  G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
     112                              G4double kinEnergy);
    113113                             
    114   inline void SetParticle(const G4ParticleDefinition* p);                             
     114  void SetParticle(const G4ParticleDefinition* p);                           
    115115
    116116  const G4ParticleDefinition* particle;
     
    127127  G4MollerBhabhaModel & operator=(const  G4MollerBhabhaModel &right);
    128128  G4MollerBhabhaModel(const  G4MollerBhabhaModel&);
    129 
    130   G4bool   isInitialised;
    131 
    132129};
    133130
    134131//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    135132
    136 inline void G4MollerBhabhaModel::SetParticle(const G4ParticleDefinition* p)
     133inline G4double G4MollerBhabhaModel::MaxSecondaryEnergy(
     134                                                   const G4ParticleDefinition*,
     135                                                         G4double kinEnergy)
    137136{
    138   particle = p;
    139   if(p != theElectron) isElectron = false;
     137  G4double tmax = kinEnergy;
     138  if(isElectron) tmax *= 0.5;
     139  return tmax;
    140140}
    141141
  • trunk/source/processes/electromagnetic/standard/include/G4MscModel71.hh

    r961 r991  
    2525//
    2626// $Id: G4MscModel71.hh,v 1.5 2007/05/22 17:34:36 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
  • trunk/source/processes/electromagnetic/standard/include/G4MultipleScattering.hh

    r961 r991  
    2525//
    2626// $Id: G4MultipleScattering.hh,v 1.36 2008/03/10 10:39:21 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -----------------------------------------------------------------------------
  • trunk/source/processes/electromagnetic/standard/include/G4MultipleScattering71.hh

    r961 r991  
    2525//
    2626// $Id: G4MultipleScattering71.hh,v 1.6 2008/07/16 11:27:41 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929//
     
    5959//
    6060// $Id: G4MultipleScattering71.hh,v 1.6 2008/07/16 11:27:41 vnivanch Exp $
    61 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     61// GEANT4 tag $Name: geant4-09-02 $
    6262
    6363// class description
  • trunk/source/processes/electromagnetic/standard/include/G4PAIModel.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4PAIModel.hh,v 1.22 2009/02/19 19:17:50 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
    2826//
    2927// -------------------------------------------------------------------
     
    7775  virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
    7876
    79   virtual void InitialiseMe(const G4ParticleDefinition*);
    80 
    81   virtual G4double ComputeDEDXPerVolume(const G4Material*,
     77  virtual void InitialiseMe(const G4ParticleDefinition*) {};
     78
     79  virtual G4double ComputeDEDX(const G4MaterialCutsCouple*,
    8280                               const G4ParticleDefinition*,
    8381                               G4double kineticEnergy,
    8482                               G4double cutEnergy);
    8583
    86   virtual G4double CrossSectionPerVolume(const G4Material*,
     84  virtual G4double CrossSection(const G4MaterialCutsCouple*,
    8785                                const G4ParticleDefinition*,
    8886                                G4double kineticEnergy,
     
    120118
    121119  void SetVerboseLevel(G4int verbose){fVerbose=verbose;};
     120
     121
    122122
    123123protected:
     
    192192};
    193193
     194/////////////////////////////////////////////////////////////////////
     195
     196inline G4double G4PAIModel::MaxSecondaryEnergy( const G4ParticleDefinition* p,
     197                                                      G4double kinEnergy)
     198{
     199  G4double tmax = kinEnergy;
     200  if(p == fElectron) tmax *= 0.5;
     201  else if(p != fPositron) {
     202    G4double mass = p->GetPDGMass();
     203    G4double ratio= electron_mass_c2/mass;
     204    G4double gamma= kinEnergy/mass + 1.0;
     205    tmax = 2.0*electron_mass_c2*(gamma*gamma - 1.) /
     206                  (1. + 2.0*gamma*ratio + ratio*ratio);
     207  }
     208  return tmax;
     209}
     210
     211///////////////////////////////////////////////////////////////
     212
     213inline  void G4PAIModel::DefineForRegion(const G4Region* r)
     214{
     215  fPAIRegionVector.push_back(r);
     216}
     217
    194218#endif
    195219
  • trunk/source/processes/electromagnetic/standard/include/G4PAIPhotonModel.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4PAIPhotonModel.hh,v 1.12 2009/02/19 19:17:50 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
    2826//
    2927// -------------------------------------------------------------------
     
    7674  virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
    7775 
    78   virtual void InitialiseMe(const G4ParticleDefinition*);
    79 
    80   virtual G4double ComputeDEDXPerVolume(const G4Material*,
    81                                         const G4ParticleDefinition*,
    82                                         G4double kineticEnergy,
    83                                         G4double cutEnergy);
    84 
    85   virtual G4double CrossSectionPerVolume(const G4Material*,
    86                                          const G4ParticleDefinition*,
    87                                          G4double kineticEnergy,
    88                                          G4double cutEnergy,
    89                                          G4double maxEnergy);
     76  virtual void InitialiseMe(const G4ParticleDefinition*) {};
     77
     78  virtual G4double ComputeDEDX(const G4MaterialCutsCouple*,
     79                               const G4ParticleDefinition*,
     80                               G4double kineticEnergy,
     81                               G4double cutEnergy);
     82
     83  virtual G4double CrossSection(const G4MaterialCutsCouple*,
     84                                const G4ParticleDefinition*,
     85                                G4double kineticEnergy,
     86                                G4double cutEnergy,
     87                                G4double maxEnergy);
    9088
    9189  virtual void SampleSecondaries(std::vector<G4DynamicParticle*>*,
     
    124122                             G4double position, G4int iTransfer );
    125123
     124
     125
    126126protected:
    127127
    128128  G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
    129                               G4double kinEnergy);
     129                                    G4double kinEnergy);
    130130
    131131private:
     
    145145  G4int                fVerbose;
    146146  G4PhysicsLogVector*  fProtonEnergyVector ;
     147
     148
    147149
    148150  // vectors
     
    202204};
    203205
     206/////////////////////////////////////////////////////////////////////
     207
     208inline G4double G4PAIPhotonModel::MaxSecondaryEnergy( const G4ParticleDefinition* p,
     209                                                      G4double kinEnergy)
     210{
     211  G4double tmax = kinEnergy;
     212  if(p == fElectron) tmax *= 0.5;
     213  else if(p != fPositron) {
     214    G4double mass = p->GetPDGMass();
     215    G4double ratio= electron_mass_c2/mass;
     216    G4double gamma= kinEnergy/mass + 1.0;
     217    tmax = 2.0*electron_mass_c2*(gamma*gamma - 1.) /
     218                  (1. + 2.0*gamma*ratio + ratio*ratio);
     219  }
     220  return tmax;
     221}
     222
     223///////////////////////////////////////////////////////////////
     224
     225inline  void G4PAIPhotonModel::DefineForRegion(const G4Region* r)
     226{
     227  fPAIRegionVector.push_back(r);
     228}
     229
    204230#endif
    205231
  • trunk/source/processes/electromagnetic/standard/include/G4PAIxSection.hh

    r961 r991  
    2626//
    2727// $Id: G4PAIxSection.hh,v 1.15 2008/05/30 16:04:40 grichine Exp $
    28 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     28// GEANT4 tag $Name: geant4-09-02 $
    2929//
    3030//
  • trunk/source/processes/electromagnetic/standard/include/G4PAIySection.hh

    r961 r991  
    2626//
    2727// $Id: G4PAIySection.hh,v 1.1 2007/10/01 17:45:14 vnivanch Exp $
    28 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     28// GEANT4 tag $Name: geant4-09-02 $
    2929//
    3030//
  • trunk/source/processes/electromagnetic/standard/include/G4PEEffectModel.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4PEEffectModel.hh,v 1.7 2009/02/20 12:06:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4PEEffectModel.hh,v 1.6 2007/05/22 17:34:36 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    4141//
    4242// 06.02.2006 : added ComputeMeanFreePath()  (mma)
    43 // 20.02.2009 : move virtual inline to .cc, substitute
    44 //              ComputeMeanFreePath() by CrossSectionPerVolume (VI)
    4543//
    4644// Class Description:
     
    7270  virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
    7371
    74   virtual G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition*,
    75                                               G4double kinEnergy,
    76                                               G4double Z,
    77                                               G4double A,
    78                                               G4double, G4double);
     72  G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition*,
     73                                      G4double kinEnergy,
     74                                      G4double Z,
     75                                      G4double A,
     76                                      G4double, G4double);
    7977                                     
    80   virtual G4double CrossSectionPerVolume(const G4Material*,
    81                                          const G4ParticleDefinition*,
    82                                          G4double kineticEnergy,
    83                                          G4double cutEnergy,
    84                                          G4double maxEnergy);
     78  G4double ComputeMeanFreePath( const G4ParticleDefinition*,
     79                                      G4double kinEnergy,
     80                                const G4Material* material,     
     81                                      G4double, G4double);
    8582
    8683  virtual void SampleSecondaries(std::vector<G4DynamicParticle*>*,
     
    103100};
    104101
     102//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
     103
     104inline G4double G4PEEffectModel::ComputeCrossSectionPerAtom(
     105                                       const G4ParticleDefinition*,
     106                                             G4double energy,
     107                                             G4double Z, G4double,
     108                                             G4double, G4double)
     109{
     110 G4double* SandiaCof = G4SandiaTable::GetSandiaCofPerAtom((G4int)Z, energy);
     111
     112 G4double energy2 = energy*energy, energy3 = energy*energy2,
     113          energy4 = energy2*energy2;
     114
     115 return SandiaCof[0]/energy  + SandiaCof[1]/energy2 +
     116        SandiaCof[2]/energy3 + SandiaCof[3]/energy4;
     117}
     118
     119//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     120
     121inline G4double G4PEEffectModel::ComputeMeanFreePath(
     122                                       const G4ParticleDefinition*,
     123                                             G4double energy,
     124                                       const G4Material* material,
     125                                             G4double, G4double)
     126{
     127 G4double* SandiaCof = material->GetSandiaTable()
     128                                ->GetSandiaCofForMaterial(energy);
     129                               
     130 G4double energy2 = energy*energy, energy3 = energy*energy2,
     131          energy4 = energy2*energy2;
     132         
     133 G4double cross = SandiaCof[0]/energy  + SandiaCof[1]/energy2 +
     134                  SandiaCof[2]/energy3 + SandiaCof[3]/energy4;
     135 
     136 G4double mfp = DBL_MAX;
     137 if (cross > 0.) mfp = 1./cross;
     138 return mfp;
     139}
     140
    105141//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    106142
  • trunk/source/processes/electromagnetic/standard/include/G4PSTARStopping.hh

    r961 r991  
    2525//
    2626// $Id: G4PSTARStopping.hh,v 1.5 2008/11/13 12:04:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828
    2929#ifndef G4PSTARStopping_h
  • trunk/source/processes/electromagnetic/standard/include/G4PhotoElectricEffect.hh

    r961 r991  
    2525//
    2626//
    27 // $Id: G4PhotoElectricEffect.hh,v 1.25 2009/02/20 12:06:37 vnivanch Exp $
    28 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// $Id: G4PhotoElectricEffect.hh,v 1.24 2007/05/23 08:47:34 vnivanch Exp $
     28// GEANT4 tag $Name: geant4-09-02 $
    2929//
    3030//
     
    9191
    9292  // true for Gamma only.
    93   virtual G4bool IsApplicable(const G4ParticleDefinition&);
     93  G4bool IsApplicable(const G4ParticleDefinition&);
    9494
    9595  // Print few lines of informations about the process: validity range,
    96   virtual void PrintInfo();
     96  void PrintInfo();
    9797
    9898protected:
    9999
    100   virtual void InitialiseProcess(const G4ParticleDefinition*);
     100  void InitialiseProcess(const G4ParticleDefinition*);
    101101
    102102private:
     
    105105};
    106106
     107//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     108//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     109
     110inline
     111G4bool G4PhotoElectricEffect::IsApplicable(const G4ParticleDefinition& p)
     112{
     113  return (&p == G4Gamma::Gamma());
     114}
     115
    107116//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    108117
  • trunk/source/processes/electromagnetic/standard/include/G4PolarizedComptonScattering.hh

    r961 r991  
    2626//
    2727// $Id: G4PolarizedComptonScattering.hh,v 1.9 2006/06/29 19:51:14 gunter Exp $
    28 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     28// GEANT4 tag $Name: geant4-09-02 $
    2929//
    3030// --------- G4PolarizedComptonScattering physics process ----------------------
  • trunk/source/processes/electromagnetic/standard/include/G4UniversalFluctuation.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4UniversalFluctuation.hh,v 1.8 2009/02/19 19:17:50 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4UniversalFluctuation.hh,v 1.6 2008/10/22 16:04:33 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    7070  virtual ~G4UniversalFluctuation();
    7171
    72   virtual G4double SampleFluctuations(const G4Material*,
    73                                       const G4DynamicParticle*,
    74                                       G4double&,
    75                                       G4double&,
    76                                       G4double&);
     72  G4double SampleFluctuations(const G4Material*,
     73                          const G4DynamicParticle*,
     74                                G4double&,
     75                                G4double&,
     76                                G4double&);
    7777
    78   virtual G4double Dispersion(    const G4Material*,
    79                                   const G4DynamicParticle*,
    80                                   G4double&,
    81                                   G4double&);
     78  G4double Dispersion(    const G4Material*,
     79                          const G4DynamicParticle*,
     80                                G4double&,
     81                                G4double&);
    8282
    83   // Initialisation before the run
    84   virtual void InitialiseMe(const G4ParticleDefinition*);
     83  void InitialiseMe(const G4ParticleDefinition*);
    8584
    8685  // Initialisation prestep
    87   virtual void SetParticleAndCharge(const G4ParticleDefinition*, G4double q2);
     86  inline void SetParticleAndCharge(const G4ParticleDefinition*, G4double q2);
     87
     88protected:
    8889
    8990private:
     
    125126};
    126127
     128//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     129
     130inline void
     131G4UniversalFluctuation::SetParticleAndCharge(const G4ParticleDefinition* part,
     132                                             G4double q2)
     133{
     134  if(part != particle) {
     135    particle       = part;
     136    particleMass   = part->GetPDGMass();
     137  }
     138  chargeSquare = q2;
     139}
     140
    127141//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    128142
  • trunk/source/processes/electromagnetic/standard/include/G4UrbanMscModel.hh

    r961 r991  
    2525//
    2626// $Id: G4UrbanMscModel.hh,v 1.33 2008/03/10 10:39:21 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
  • trunk/source/processes/electromagnetic/standard/include/G4UrbanMscModel2.hh

    r966 r991  
    2525//
    2626// $Id: G4UrbanMscModel2.hh,v 1.11 2008/12/18 13:01:34 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
  • trunk/source/processes/electromagnetic/standard/include/G4UrbanMscModel90.hh

    r961 r991  
    2525//
    2626// $Id: G4UrbanMscModel90.hh,v 1.4 2008/10/29 14:15:30 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
  • trunk/source/processes/electromagnetic/standard/include/G4WaterStopping.hh

    r961 r991  
    2525//
    2626// $Id: G4WaterStopping.hh,v 1.6 2008/09/09 09:30:58 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828
    2929#ifndef G4WaterStopping_h
  • trunk/source/processes/electromagnetic/standard/include/G4WentzelVIModel.hh

    r966 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4WentzelVIModel.hh,v 1.8 2009/02/19 19:17:15 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4WentzelVIModel.hh,v 1.7 2008/08/04 08:49:09 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    6666class G4LossTableManager;
    6767class G4ParticleChangeForMSC;
    68 //class G4SafetyHelper;
     68class G4SafetyHelper;
    6969class G4ParticleDefinition;
    7070
     
    133133  G4ParticleChangeForMSC*   fParticleChange;
    134134
    135   //  G4SafetyHelper*           safetyHelper;
     135  G4SafetyHelper*           safetyHelper;
    136136  G4PhysicsTable*           theLambdaTable;
    137137  G4PhysicsTable*           theLambda2Table;
  • trunk/source/processes/electromagnetic/standard/include/G4eBremsstrahlung.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4eBremsstrahlung.hh,v 1.37 2009/02/20 12:06:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4eBremsstrahlung.hh,v 1.36 2007/05/23 08:47:34 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    8989  virtual ~G4eBremsstrahlung();
    9090
    91   virtual G4bool IsApplicable(const G4ParticleDefinition& p);
     91  G4bool IsApplicable(const G4ParticleDefinition& p);
    9292
    9393  // Print out of the class parameters
     
    111111
    112112//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     113//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     114
     115inline G4bool G4eBremsstrahlung::IsApplicable(const G4ParticleDefinition& p)
     116{
     117  return (&p == G4Electron::Electron() || &p == G4Positron::Positron());
     118}
     119
     120//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    113121
    114122#endif
  • trunk/source/processes/electromagnetic/standard/include/G4eBremsstrahlungModel.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4eBremsstrahlungModel.hh,v 1.26 2009/02/20 12:06:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4eBremsstrahlungModel.hh,v 1.25 2008/11/13 19:28:58 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    7575  virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
    7676
    77   virtual G4double MinEnergyCut(const G4ParticleDefinition*,
    78                                 const G4MaterialCutsCouple*);
     77  G4double MinEnergyCut(const G4ParticleDefinition*,
     78                        const G4MaterialCutsCouple*);
    7979
    8080  virtual G4double ComputeDEDXPerVolume(const G4Material*,
     
    103103protected:
    104104
     105  inline G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
     106                                     G4double kineticEnergy);
     107
    105108  const G4Element* SelectRandomAtom(const G4MaterialCutsCouple* couple);
    106109
     
    188191//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    189192
     193inline
     194G4double G4eBremsstrahlungModel::MaxSecondaryEnergy(
     195                                 const G4ParticleDefinition*,
     196                                       G4double kineticEnergy)
     197{
     198  return kineticEnergy;
     199}
     200
     201//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     202
    190203#endif
  • trunk/source/processes/electromagnetic/standard/include/G4eBremsstrahlungRelModel.hh

    r966 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4eBremsstrahlungRelModel.hh,v 1.11 2009/02/20 12:06:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4eBremsstrahlungRelModel.hh,v 1.10 2008/11/14 09:25:19 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    7171  virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&);
    7272
    73   virtual G4double MinEnergyCut(const G4ParticleDefinition*,
    74                                 const G4MaterialCutsCouple*);
     73  G4double MinEnergyCut(const G4ParticleDefinition*,
     74                        const G4MaterialCutsCouple*);
    7575
    7676  virtual G4double ComputeDEDXPerVolume(const G4Material*,
     
    9797  inline G4double LPMconstant() const;
    9898
     99protected:
     100
     101  inline G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
     102                                     G4double kineticEnergy);
     103
    99104private:
    100105
     
    202207//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    203208
     209inline G4double
     210G4eBremsstrahlungRelModel::MaxSecondaryEnergy(const G4ParticleDefinition*,
     211                                              G4double kineticEnergy)
     212{
     213  return kineticEnergy;
     214}
     215
     216//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     217
    204218
    205219inline G4double G4eBremsstrahlungRelModel::Phi1(G4double gg, G4double)
  • trunk/source/processes/electromagnetic/standard/include/G4eCoulombScatteringModel.hh

    r961 r991  
    2525//
    2626// $Id: G4eCoulombScatteringModel.hh,v 1.36 2008/08/04 08:49:09 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
  • trunk/source/processes/electromagnetic/standard/include/G4eIonisation.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4eIonisation.hh,v 1.36 2009/02/20 12:06:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4eIonisation.hh,v 1.35 2007/05/23 08:47:34 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    8888  virtual ~G4eIonisation();
    8989
    90   virtual G4bool IsApplicable(const G4ParticleDefinition& p);
     90  G4bool IsApplicable(const G4ParticleDefinition& p);
    9191
    9292  // Print out of the class parameters
     
    9898                                           const G4ParticleDefinition*);
    9999
    100   virtual G4double MinPrimaryEnergy(const G4ParticleDefinition*,
    101                                     const G4Material*, G4double cut);
     100  G4double MinPrimaryEnergy(const G4ParticleDefinition*,
     101                            const G4Material*, G4double cut);
    102102
    103103private:
     
    114114};
    115115
     116//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     117//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     118
     119inline G4double G4eIonisation::MinPrimaryEnergy(const G4ParticleDefinition*,
     120                                                const G4Material*,
     121                                                G4double cut)
     122{
     123  G4double x = cut;
     124  if(isElectron) x += cut;
     125  return x;
     126}
     127
     128//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     129
     130inline G4bool G4eIonisation::IsApplicable(const G4ParticleDefinition& p)
     131{
     132  return (&p == G4Electron::Electron() || &p == G4Positron::Positron());
     133}
     134
    116135//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    117136
  • trunk/source/processes/electromagnetic/standard/include/G4eMultipleScattering.hh

    r966 r991  
    2525//
    2626// $Id: G4eMultipleScattering.hh,v 1.2 2008/03/11 12:03:43 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -----------------------------------------------------------------------------
  • trunk/source/processes/electromagnetic/standard/include/G4eeToTwoGammaModel.hh

    r961 r991  
    2525//
    2626// $Id: G4eeToTwoGammaModel.hh,v 1.14 2007/05/23 08:47:34 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
  • trunk/source/processes/electromagnetic/standard/include/G4eplusAnnihilation.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4eplusAnnihilation.hh,v 1.24 2009/02/20 12:06:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4eplusAnnihilation.hh,v 1.23 2007/05/23 08:47:34 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    7373  virtual ~G4eplusAnnihilation();
    7474
    75   virtual G4bool IsApplicable(const G4ParticleDefinition& p);
     75  G4bool IsApplicable(const G4ParticleDefinition& p);
    7676
    7777  virtual G4VParticleChange* AtRestDoIt(
     
    7979                             const G4Step& stepData);
    8080
    81   virtual G4double AtRestGetPhysicalInteractionLength(
     81  G4double AtRestGetPhysicalInteractionLength(
    8282                             const G4Track& track,
    8383                             G4ForceCondition* condition
     
    9696};
    9797
     98//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     99//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     100
     101inline G4bool G4eplusAnnihilation::IsApplicable(const G4ParticleDefinition& p)
     102{
     103  return (&p == G4Positron::Positron());
     104}
     105
     106//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     107
     108inline
     109G4double G4eplusAnnihilation::AtRestGetPhysicalInteractionLength(
     110                              const G4Track&, G4ForceCondition* condition)
     111{
     112  *condition = NotForced;
     113  return 0.0;
     114}
     115
    98116//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    99117
  • trunk/source/processes/electromagnetic/standard/include/G4hIonisation.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4hIonisation.hh,v 1.42 2009/02/20 12:06:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4hIonisation.hh,v 1.41 2008/09/14 17:11:48 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    9393  virtual ~G4hIonisation();
    9494
    95   virtual G4bool IsApplicable(const G4ParticleDefinition& p);
     95  G4bool IsApplicable(const G4ParticleDefinition& p);
    9696
    97   virtual G4double MinPrimaryEnergy(const G4ParticleDefinition* p,
    98                                     const G4Material*, G4double cut);
     97  G4double MinPrimaryEnergy(const G4ParticleDefinition* p,
     98                            const G4Material*, G4double cut);
    9999
    100100  // Print out of the class parameters
     
    123123
    124124//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     125//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     126
     127inline G4bool G4hIonisation::IsApplicable(const G4ParticleDefinition& p)
     128{
     129  return (p.GetPDGCharge() != 0.0 && p.GetPDGMass() > 10.0*MeV &&
     130         !p.IsShortLived());
     131}
     132
     133//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     134
     135inline G4double G4hIonisation::MinPrimaryEnergy(const G4ParticleDefinition*,
     136                                                const G4Material*,
     137                                                G4double cut)
     138{
     139  G4double x = 0.5*cut/electron_mass_c2;
     140  G4double g = x*ratio + std::sqrt((1. + x)*(1. + x*ratio*ratio));
     141  return mass*(g - 1.0);
     142}
     143
     144//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    125145
    126146inline void G4hIonisation::ActivateNuclearStopping(G4bool val)
  • trunk/source/processes/electromagnetic/standard/include/G4hMultipleScattering.hh

    r961 r991  
    2525//
    2626// $Id: G4hMultipleScattering.hh,v 1.6 2008/05/09 08:23:44 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -----------------------------------------------------------------------------
  • trunk/source/processes/electromagnetic/standard/include/G4ionGasIonisation.hh

    r961 r991  
    2525//
    2626// $Id: G4ionGasIonisation.hh,v 1.4 2008/09/12 16:26:34 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
  • trunk/source/processes/electromagnetic/standard/include/G4ionIonisation.hh

    r961 r991  
    2424// ********************************************************************
    2525//
    26 // $Id: G4ionIonisation.hh,v 1.57 2009/02/20 12:06:37 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02-ref-02 $
     26// $Id: G4ionIonisation.hh,v 1.56 2008/09/14 17:11:48 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02 $
    2828//
    2929// -------------------------------------------------------------------
     
    8585  virtual ~G4ionIonisation();
    8686
    87   virtual G4bool IsApplicable(const G4ParticleDefinition& p);
     87  inline G4bool IsApplicable(const G4ParticleDefinition& p);
    8888
    8989  // Print out of the class parameters
     
    102102                                           const G4ParticleDefinition*);
    103103
    104   virtual G4double MinPrimaryEnergy(const G4ParticleDefinition* p,
     104  inline G4double MinPrimaryEnergy(const G4ParticleDefinition* p,
    105105                                   const G4Material*, G4double cut);
    106106
     
    127127
    128128//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     129//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     130
     131inline G4bool G4ionIonisation::IsApplicable(const G4ParticleDefinition& p)
     132{
     133  return (p.GetPDGCharge() != 0.0 && !p.IsShortLived() &&
     134          p.GetParticleType() == "nucleus");
     135}
     136
     137//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     138
     139inline G4double G4ionIonisation::MinPrimaryEnergy(
     140          const G4ParticleDefinition* p, const G4Material*, G4double cut)
     141{
     142  return
     143    p->GetPDGMass()*(std::sqrt(1. + 0.5*cut/CLHEP::electron_mass_c2) - 1.0);
     144}
     145
    129146//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    130147
Note: See TracChangeset for help on using the changeset viewer.