#include <G4MuPairProduction.hh>
Inheritance diagram for G4MuPairProduction:
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 *) |
Definition at line 75 of file G4MuPairProduction.hh.
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] |
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] |
void G4MuPairProduction::PrintInfo | ( | ) | [virtual] |