G4hBremsstrahlung Class Reference

#include <G4hBremsstrahlung.hh>

Inheritance diagram for G4hBremsstrahlung:

G4VEnergyLossProcess G4VContinuousDiscreteProcess G4VProcess

Public Member Functions

 G4hBremsstrahlung (const G4String &processName="hBrems")
virtual ~G4hBremsstrahlung ()
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 64 of file G4hBremsstrahlung.hh.


Constructor & Destructor Documentation

G4hBremsstrahlung::G4hBremsstrahlung ( const G4String processName = "hBrems"  ) 

Definition at line 57 of file G4hBremsstrahlung.cc.

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

00058   : G4VEnergyLossProcess(name),
00059     theParticle(0),
00060     theBaseParticle(0),
00061     lowestKinEnergy(1.*GeV),
00062     isInitialised(false)
00063 {
00064   SetProcessSubType(fBremsstrahlung);
00065   SetSecondaryParticle(G4Gamma::Gamma());
00066   SetIonisation(false);
00067 }

G4hBremsstrahlung::~G4hBremsstrahlung (  )  [virtual]

Definition at line 71 of file G4hBremsstrahlung.cc.

00072 {}


Member Function Documentation

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

Implements G4VEnergyLossProcess.

Definition at line 92 of file G4hBremsstrahlung.cc.

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

00095 {
00096   if(!isInitialised) {
00097 
00098     isInitialised = true;
00099 
00100     theParticle = part;
00101 
00102     if (!EmModel()) { SetEmModel(new G4hBremsstrahlungModel()); }
00103 
00104     G4VEmFluctuationModel* fm = 0;
00105     EmModel()->SetLowEnergyLimit(MinKinEnergy());
00106     EmModel()->SetHighEnergyLimit(MaxKinEnergy());
00107     AddEmModel(1, EmModel(), fm);
00108   }
00109 }

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

Implements G4VEnergyLossProcess.

Definition at line 76 of file G4hBremsstrahlung.cc.

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

00077 {
00078   return (p.GetPDGCharge() != 0.0 && p.GetPDGMass() > 110.0*MeV);
00079 }

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

Reimplemented from G4VEnergyLossProcess.

Definition at line 83 of file G4hBremsstrahlung.cc.

00086 {
00087   return lowestKinEnergy;
00088 }

void G4hBremsstrahlung::PrintInfo (  )  [virtual]

Implements G4VEnergyLossProcess.

Definition at line 113 of file G4hBremsstrahlung.cc.

00114 {}


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