G4MuBremsstrahlung Class Reference

#include <G4MuBremsstrahlung.hh>

Inheritance diagram for G4MuBremsstrahlung:

G4VEnergyLossProcess G4VContinuousDiscreteProcess G4VProcess

Public Member Functions

 G4MuBremsstrahlung (const G4String &processName="muBrems")
virtual ~G4MuBremsstrahlung ()
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 78 of file G4MuBremsstrahlung.hh.


Constructor & Destructor Documentation

G4MuBremsstrahlung::G4MuBremsstrahlung ( const G4String processName = "muBrems"  ) 

Definition at line 78 of file G4MuBremsstrahlung.cc.

References fBremsstrahlung, G4Gamma::Gamma(), G4VEnergyLossProcess::SetIonisation(), G4VProcess::SetProcessSubType(), and G4VEnergyLossProcess::SetSecondaryParticle().

00079   : G4VEnergyLossProcess(name),
00080     theParticle(0),
00081     theBaseParticle(0),
00082     lowestKinEnergy(1.*GeV),
00083     isInitialised(false)
00084 {
00085   SetProcessSubType(fBremsstrahlung);
00086   SetSecondaryParticle(G4Gamma::Gamma());
00087   SetIonisation(false);
00088 }

G4MuBremsstrahlung::~G4MuBremsstrahlung (  )  [virtual]

Definition at line 92 of file G4MuBremsstrahlung.cc.

00093 {}


Member Function Documentation

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

Implements G4VEnergyLossProcess.

Definition at line 113 of file G4MuBremsstrahlung.cc.

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

00116 {
00117   if(!isInitialised) {
00118 
00119     isInitialised = true;
00120 
00121     theParticle = part;
00122 
00123     if (!EmModel()) { SetEmModel(new G4MuBremsstrahlungModel()); }
00124 
00125     G4VEmFluctuationModel* fm = 0;
00126     EmModel()->SetLowEnergyLimit(MinKinEnergy());
00127     EmModel()->SetHighEnergyLimit(MaxKinEnergy());
00128     AddEmModel(1, EmModel(), fm);
00129   }
00130 }

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

Implements G4VEnergyLossProcess.

Definition at line 97 of file G4MuBremsstrahlung.cc.

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

00098 {
00099   return (p.GetPDGCharge() != 0.0 && p.GetPDGMass() > 10.0*MeV);
00100 }

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

Reimplemented from G4VEnergyLossProcess.

Definition at line 104 of file G4MuBremsstrahlung.cc.

00107 {
00108   return lowestKinEnergy;
00109 }

void G4MuBremsstrahlung::PrintInfo (  )  [virtual]

Implements G4VEnergyLossProcess.

Definition at line 134 of file G4MuBremsstrahlung.cc.

00135 {}


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