Ignore:
Timestamp:
May 28, 2009, 4:26:57 PM (17 years ago)
Author:
garnier
Message:

maj sur la beta de geant 4.9.3

Location:
trunk/source/processes/electromagnetic/highenergy/src
Files:
14 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/processes/electromagnetic/highenergy/src/G4BetheBlochNoDeltaModel.cc

    r1007 r1055  
    2424// ********************************************************************
    2525//
    26 // $Id: G4BetheBlochNoDeltaModel.cc,v 1.3 2006/06/29 19:32:36 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-02 $
     26// $Id: G4BetheBlochNoDeltaModel.cc,v 1.4 2009/02/20 16:38:33 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// -------------------------------------------------------------------
     
    5858{}
    5959
     60//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     61
    6062G4BetheBlochNoDeltaModel::~G4BetheBlochNoDeltaModel()
    6163{}
     
    6365//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    6466
     67G4double G4BetheBlochNoDeltaModel::ComputeDEDXPerVolume(
     68                            const G4Material* material,
     69                            const G4ParticleDefinition* pd,
     70                            G4double kinEnergy, G4double)
     71{
     72  return
     73    G4BetheBlochModel::ComputeDEDXPerVolume(material, pd, kinEnergy, DBL_MAX);
     74}
    6575
     76//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     77
     78G4double G4BetheBlochNoDeltaModel::CrossSectionPerVolume(
     79                    const G4Material*,const G4ParticleDefinition*,
     80                    G4double, G4double, G4double)
     81{
     82  return 0.0;
     83}
     84
     85//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     86
     87
  • trunk/source/processes/electromagnetic/highenergy/src/G4BraggNoDeltaModel.cc

    r1007 r1055  
    2424// ********************************************************************
    2525//
    26 // $Id: G4BraggNoDeltaModel.cc,v 1.3 2006/06/29 19:32:38 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-02 $
     26// $Id: G4BraggNoDeltaModel.cc,v 1.4 2009/02/20 16:38:33 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// -------------------------------------------------------------------
     
    5353//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    5454
    55 
    5655G4BraggNoDeltaModel::G4BraggNoDeltaModel(const G4ParticleDefinition*p,
    5756                                         const G4String& nam) :
    5857  G4BraggIonModel(p, nam)
    5958{}
     59
     60//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    6061
    6162G4BraggNoDeltaModel::~G4BraggNoDeltaModel()
     
    6465//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    6566
     67G4double G4BraggNoDeltaModel::ComputeDEDXPerVolume(
     68                            const G4Material* material,
     69                            const G4ParticleDefinition* pd,
     70                            G4double kinEnergy, G4double)
     71{
     72  return
     73    G4BraggIonModel::ComputeDEDXPerVolume(material, pd, kinEnergy, DBL_MAX);
     74}
    6675
     76//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     77
     78G4double G4BraggNoDeltaModel::CrossSectionPerVolume(
     79                            const G4Material*,
     80                            const G4ParticleDefinition*,
     81                            G4double, G4double, G4double)
     82{
     83  return 0.0;
     84}
     85
     86//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     87
     88
  • trunk/source/processes/electromagnetic/highenergy/src/G4ee2KChargedModel.cc

    r1007 r1055  
    2424// ********************************************************************
    2525//
    26 // $Id: G4ee2KChargedModel.cc,v 1.1 2008/07/10 18:07:27 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02 $
     26// $Id: G4ee2KChargedModel.cc,v 1.2 2009/02/20 16:38:33 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// -------------------------------------------------------------------
     
    7575//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    7676
     77G4double G4ee2KChargedModel::ThresholdEnergy() const
     78{
     79  return 2.0*massK;
     80}
     81
     82//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     83
     84G4double G4ee2KChargedModel::PeakEnergy() const
     85{
     86  return massPhi;
     87}
     88
     89//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     90
     91G4double G4ee2KChargedModel::ComputeCrossSection(G4double e) const
     92{
     93  G4double ee = std::min(HighEnergy(),e);
     94  return cross->CrossSection2Kcharged(ee);
     95}
     96
     97//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     98
    7799G4PhysicsVector* G4ee2KChargedModel::PhysicsVector(G4double emin,
    78100                                                   G4double emax) const
  • trunk/source/processes/electromagnetic/highenergy/src/G4ee2KNeutralModel.cc

    r1007 r1055  
    2424// ********************************************************************
    2525//
    26 // $Id: G4ee2KNeutralModel.cc,v 1.1 2008/07/10 18:07:27 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02 $
     26// $Id: G4ee2KNeutralModel.cc,v 1.2 2009/02/20 16:38:33 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// -------------------------------------------------------------------
     
    7575//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    7676
     77G4double G4ee2KNeutralModel::ThresholdEnergy() const
     78{
     79  return 2.0*massK;
     80}
     81
     82//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     83
     84G4double G4ee2KNeutralModel::PeakEnergy() const
     85{
     86  return massPhi;
     87}
     88
     89//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     90
     91G4double G4ee2KNeutralModel::ComputeCrossSection(G4double e) const
     92{
     93  G4double ee = std::min(HighEnergy(),e);
     94  return cross->CrossSection2Kneutral(ee);
     95}
     96
     97//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     98
    7799G4PhysicsVector* G4ee2KNeutralModel::PhysicsVector(G4double emin,
    78100                                                   G4double emax) const
  • trunk/source/processes/electromagnetic/highenergy/src/G4eeTo3PiModel.cc

    r1007 r1055  
    2424// ********************************************************************
    2525//
    26 // $Id: G4eeTo3PiModel.cc,v 1.1 2008/07/10 18:07:27 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02 $
     26// $Id: G4eeTo3PiModel.cc,v 1.2 2009/02/20 16:38:33 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// -------------------------------------------------------------------
     
    8181  G4cout << "### G4eeTo3PiModel::~G4eeTo3PiModel: gmax= "
    8282         << gmax << " gcash= " << gcash << G4endl;
     83}
     84
     85//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     86
     87G4double G4eeTo3PiModel::ThresholdEnergy() const
     88{
     89  return std::max(LowEnergy(),2.0*massPi + massPi0);
     90}
     91
     92//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     93
     94G4double G4eeTo3PiModel::PeakEnergy() const
     95{
     96  G4double e = massOm;
     97  if(HighEnergy() > massPhi) e = massPhi;
     98  return e;
     99}
     100
     101//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     102
     103G4double G4eeTo3PiModel::ComputeCrossSection(G4double e) const
     104{
     105  G4double ee = std::min(HighEnergy(),e);
     106  return cross->CrossSection3pi(ee);
    83107}
    84108
  • trunk/source/processes/electromagnetic/highenergy/src/G4eeToHadrons.cc

    r1007 r1055  
    2424// ********************************************************************
    2525//
    26 // $Id: G4eeToHadrons.cc,v 1.8 2008/10/16 14:29:48 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02 $
     26// $Id: G4eeToHadrons.cc,v 1.9 2009/02/20 16:38:33 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// -------------------------------------------------------------------
     
    7575//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    7676
     77G4bool G4eeToHadrons::IsApplicable(const G4ParticleDefinition& p)
     78{
     79  return (&p == G4Positron::Positron());
     80}
     81
     82//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     83
    7784void G4eeToHadrons::InitialiseProcess(const G4ParticleDefinition*)
    7885{
  • trunk/source/processes/electromagnetic/highenergy/src/G4eeToHadronsMultiModel.cc

    r1007 r1055  
    2424// ********************************************************************
    2525//
    26 // $Id: G4eeToHadronsMultiModel.cc,v 1.6 2008/07/11 17:49:11 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02 $
     26// $Id: G4eeToHadronsMultiModel.cc,v 1.8 2009/04/12 17:48:21 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// -------------------------------------------------------------------
     
    129129    nModels = models.size();
    130130
    131     if(pParticleChange) {
    132       fParticleChange =
    133         reinterpret_cast<G4ParticleChangeForGamma*>(pParticleChange);
    134     } else {
    135       fParticleChange = new G4ParticleChangeForGamma();
    136     }
     131    fParticleChange = GetParticleChangeForGamma();
    137132  }
    138133}
  • trunk/source/processes/electromagnetic/highenergy/src/G4eeToPGammaModel.cc

    r1007 r1055  
    2424// ********************************************************************
    2525//
    26 // $Id: G4eeToPGammaModel.cc,v 1.1 2008/07/10 18:07:27 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02 $
     26// $Id: G4eeToPGammaModel.cc,v 1.2 2009/02/20 16:38:33 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// -------------------------------------------------------------------
     
    8383//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    8484
     85G4double G4eeToPGammaModel::ThresholdEnergy() const
     86{
     87  return LowEnergy();
     88}
     89
     90//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     91
     92G4double G4eeToPGammaModel::PeakEnergy() const
     93{
     94  return massR;
     95}
     96
     97//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     98
     99G4double G4eeToPGammaModel::ComputeCrossSection(G4double e) const
     100{
     101  G4double ee = std::min(HighEnergy(),e);
     102  G4double xs;
     103  if(particle == pi0) xs = cross->CrossSectionPi0G(ee);
     104  else                xs = cross->CrossSectionEtaG(ee);
     105  return xs;
     106}
     107
     108//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     109
    85110G4PhysicsVector* G4eeToPGammaModel::PhysicsVector(G4double emin,
    86111                                                  G4double emax) const
  • trunk/source/processes/electromagnetic/highenergy/src/G4eeToTwoPiModel.cc

    r1007 r1055  
    2424// ********************************************************************
    2525//
    26 // $Id: G4eeToTwoPiModel.cc,v 1.6 2008/07/10 18:06:39 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02 $
     26// $Id: G4eeToTwoPiModel.cc,v 1.7 2009/02/20 16:38:33 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// -------------------------------------------------------------------
     
    7575//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    7676
     77G4double G4eeToTwoPiModel::ThresholdEnergy() const
     78{
     79  return 2.0*massPi;
     80}
     81
     82//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     83
     84G4double G4eeToTwoPiModel::PeakEnergy() const
     85{
     86  return massRho;
     87}
     88
     89//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     90
     91G4double G4eeToTwoPiModel::ComputeCrossSection(G4double e) const
     92{
     93  G4double ee = std::min(HighEnergy(),e);
     94  return cross->CrossSection2pi(ee);
     95}
     96
     97//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     98
    7799G4PhysicsVector* G4eeToTwoPiModel::PhysicsVector(G4double emin,
    78100                                                 G4double emax) const
  • trunk/source/processes/electromagnetic/highenergy/src/G4hBremsstrahlung.cc

    r1007 r1055  
    2424// ********************************************************************
    2525//
    26 // $Id: G4hBremsstrahlung.cc,v 1.3 2008/10/16 14:29:48 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02 $
     26// $Id: G4hBremsstrahlung.cc,v 1.4 2009/02/20 16:38:33 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// -------------------------------------------------------------------
     
    7272//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    7373
     74G4bool G4hBremsstrahlung::IsApplicable(const G4ParticleDefinition& p)
     75{
     76  return (p.GetPDGCharge() != 0.0 && p.GetPDGMass() > 110.0*MeV);
     77}
     78
     79//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     80
     81G4double G4hBremsstrahlung::MinPrimaryEnergy(const G4ParticleDefinition*,
     82                                             const G4Material*,
     83                                             G4double)
     84{
     85  return lowestKinEnergy;
     86}
     87
     88//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     89
    7490void G4hBremsstrahlung::InitialiseEnergyLossProcess(
    7591                                 const G4ParticleDefinition* part,
  • trunk/source/processes/electromagnetic/highenergy/src/G4hPairProduction.cc

    r1007 r1055  
    2424// ********************************************************************
    2525//
    26 // $Id: G4hPairProduction.cc,v 1.3 2008/10/16 14:29:48 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02 $
     26// $Id: G4hPairProduction.cc,v 1.4 2009/02/20 16:38:33 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// -------------------------------------------------------------------
     
    7373//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    7474
     75G4bool G4hPairProduction::IsApplicable(const G4ParticleDefinition& p)
     76{
     77  return (p.GetPDGCharge() != 0.0 && p.GetPDGMass() > 110.0*MeV);
     78}
     79
     80//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     81
     82G4double G4hPairProduction::MinPrimaryEnergy(const G4ParticleDefinition*,
     83                                             const G4Material*,
     84                                             G4double)
     85{
     86  return lowestKinEnergy;
     87}
     88
     89//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     90
    7591void G4hPairProduction::InitialiseEnergyLossProcess(
    7692                         const G4ParticleDefinition* part,
  • trunk/source/processes/electromagnetic/highenergy/src/G4hhIonisation.cc

    r1007 r1055  
    2424// ********************************************************************
    2525//
    26 // $Id: G4hhIonisation.cc,v 1.8 2008/10/16 14:29:48 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02 $
     26// $Id: G4hhIonisation.cc,v 1.9 2009/02/20 16:38:33 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// -------------------------------------------------------------------
     
    7575G4hhIonisation::~G4hhIonisation()
    7676{}
     77
     78//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     79
     80G4bool G4hhIonisation::IsApplicable(const G4ParticleDefinition& p)
     81{
     82  return (p.GetPDGCharge() != 0.0 && p.GetPDGMass() > 100.0*MeV &&
     83         !p.IsShortLived());
     84}
     85
     86//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     87
     88G4double G4hhIonisation::MinPrimaryEnergy(const G4ParticleDefinition*,
     89                                          const G4Material*,
     90                                          G4double cut)
     91{
     92  G4double x = 0.5*cut/electron_mass_c2;
     93  G4double y = electron_mass_c2/mass;
     94  G4double g = x*y + std::sqrt((1. + x)*(1. + x*y*y));
     95  return mass*(g - 1.0);
     96}
    7797
    7898//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
  • trunk/source/processes/electromagnetic/highenergy/src/G4mplIonisation.cc

    r1007 r1055  
    2424// ********************************************************************
    2525//
    26 // $Id: G4mplIonisation.cc,v 1.7 2008/10/16 14:29:48 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02 $
     26// $Id: G4mplIonisation.cc,v 1.8 2009/02/20 16:38:33 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// -------------------------------------------------------------------
     
    7575//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    7676
     77G4bool G4mplIonisation::IsApplicable(const G4ParticleDefinition& p)
     78{
     79  return (p.GetParticleName() == "monopole");
     80}
     81
     82//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     83
    7784void G4mplIonisation::InitialiseEnergyLossProcess(const G4ParticleDefinition*,
    7885                                                  const G4ParticleDefinition*)
  • trunk/source/processes/electromagnetic/highenergy/src/G4mplIonisationModel.cc

    r1007 r1055  
    2424// ********************************************************************
    2525//
    26 // $Id: G4mplIonisationModel.cc,v 1.5 2007/11/13 18:36:29 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-02 $
     26// $Id: G4mplIonisationModel.cc,v 1.7 2009/04/12 17:35:41 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2828//
    2929// -------------------------------------------------------------------
     
    7979  chargeSquare = magCharge * magCharge;
    8080  dedxlim = 45.*nmpl*nmpl*GeV*cm2/g;
     81  fParticleChange = 0;
    8182}
    8283
     
    9394  monopole = p;
    9495  mass     = monopole->GetPDGMass();
    95 
    96   if(pParticleChange)
    97     fParticleChange = reinterpret_cast<G4ParticleChangeForLoss*>(pParticleChange);
    98   else
    99     fParticleChange = new G4ParticleChangeForLoss();
     96  if(!fParticleChange) fParticleChange = GetParticleChangeForLoss();
    10097}
    10198
     
    139136//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    140137
    141 G4double G4mplIonisationModel::ComputeDEDXAhlen(const G4Material* material, G4double bg2)
     138G4double G4mplIonisationModel::ComputeDEDXAhlen(const G4Material* material,
     139                                                G4double bg2)
    142140{
    143141  G4double eDensity = material->GetElectronDensity();
     
    176174  return dedx;
    177175}
     176
     177//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     178
     179void G4mplIonisationModel::SampleSecondaries(std::vector<G4DynamicParticle*>*,
     180                                             const G4MaterialCutsCouple*,
     181                                             const G4DynamicParticle*,
     182                                             G4double,
     183                                             G4double)
     184{}
    178185
    179186//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     
    204211  return loss;
    205212}
     213
     214//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     215
     216G4double G4mplIonisationModel::Dispersion(const G4Material* material,
     217                                          const G4DynamicParticle* dp,
     218                                          G4double& tmax,
     219                                          G4double& length)
     220{
     221  G4double siga = 0.0;
     222  G4double tau   = dp->GetKineticEnergy()/mass;
     223  if(tau > 0.0) {
     224    G4double electronDensity = material->GetElectronDensity();
     225    G4double gam   = tau + 1.0;
     226    G4double invbeta2 = (gam*gam)/(tau * (tau+2.0));
     227    siga  = (invbeta2 - 0.5) * twopi_mc2_rcl2 * tmax * length
     228      * electronDensity * chargeSquare;
     229  }
     230  return siga;
     231}
     232
     233//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
Note: See TracChangeset for help on using the changeset viewer.