G4MuPairProduction Class Reference

#include <G4MuPairProduction.hh>

Inheritance diagram for G4MuPairProduction:

G4VEnergyLossProcess G4VContinuousDiscreteProcess G4VProcess

Public Member Functions

 G4MuPairProduction (const G4String &processName="muPairProd")
virtual ~G4MuPairProduction ()
virtual G4bool IsApplicable (const G4ParticleDefinition &p)
virtual G4double MinPrimaryEnergy (const G4ParticleDefinition *p, const G4Material *, G4double cut)
virtual void PrintInfo ()

Protected Member Functions

virtual void InitialiseEnergyLossProcess (const G4ParticleDefinition *, const G4ParticleDefinition *)

Detailed Description

Definition at line 75 of file G4MuPairProduction.hh.


Constructor & Destructor Documentation

G4MuPairProduction::G4MuPairProduction ( const G4String processName = "muPairProd"  ) 

Definition at line 85 of file G4MuPairProduction.cc.

References fPairProdByCharged, G4Positron::Positron(), G4VEnergyLossProcess::SetIonisation(), G4VProcess::SetProcessSubType(), and G4VEnergyLossProcess::SetSecondaryParticle().

00086   : G4VEnergyLossProcess(name),
00087     theParticle(0),
00088     theBaseParticle(0),
00089     lowestKinEnergy(1.*GeV),
00090     isInitialised(false)
00091 {
00092   SetProcessSubType(fPairProdByCharged);
00093   SetSecondaryParticle(G4Positron::Positron());
00094   SetIonisation(false);
00095 }

G4MuPairProduction::~G4MuPairProduction (  )  [virtual]

Definition at line 99 of file G4MuPairProduction.cc.

00100 {}


Member Function Documentation

void G4MuPairProduction::InitialiseEnergyLossProcess ( const G4ParticleDefinition ,
const G4ParticleDefinition  
) [protected, virtual]

Implements G4VEnergyLossProcess.

Definition at line 120 of file G4MuPairProduction.cc.

References G4VEnergyLossProcess::AddEmModel(), G4VEnergyLossProcess::EmModel(), G4VEnergyLossProcess::MaxKinEnergy(), G4VEnergyLossProcess::MinKinEnergy(), G4VEnergyLossProcess::SetEmModel(), G4VEmModel::SetHighEnergyLimit(), and G4VEmModel::SetLowEnergyLimit().

00123 {
00124   if (!isInitialised) {
00125     isInitialised = true;
00126 
00127     theParticle = part;
00128 
00129     if (!EmModel()) { SetEmModel(new G4MuPairProductionModel()); }
00130 
00131     G4VEmFluctuationModel* fm = 0;
00132     EmModel()->SetLowEnergyLimit(MinKinEnergy());
00133     EmModel()->SetHighEnergyLimit(MaxKinEnergy());
00134     AddEmModel(1, EmModel(), fm);
00135   }
00136 }

G4bool G4MuPairProduction::IsApplicable ( const G4ParticleDefinition p  )  [virtual]

Implements G4VEnergyLossProcess.

Definition at line 104 of file G4MuPairProduction.cc.

References G4ParticleDefinition::GetPDGCharge(), and G4ParticleDefinition::GetPDGMass().

00105 {
00106   return (p.GetPDGCharge() != 0.0 && p.GetPDGMass() > 10.0*MeV);
00107 }

G4double G4MuPairProduction::MinPrimaryEnergy ( const G4ParticleDefinition p,
const G4Material ,
G4double  cut 
) [virtual]

Reimplemented from G4VEnergyLossProcess.

Definition at line 111 of file G4MuPairProduction.cc.

00114 {
00115   return lowestKinEnergy;
00116 }

void G4MuPairProduction::PrintInfo (  )  [virtual]

Implements G4VEnergyLossProcess.

Definition at line 140 of file G4MuPairProduction.cc.

00141 {}


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:52:32 2013 for Geant4 by  doxygen 1.4.7