Geant4  10.03.p01
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
G4QAOLowEnergyLoss Class Reference

#include <G4QAOLowEnergyLoss.hh>

Inheritance diagram for G4QAOLowEnergyLoss:
Collaboration diagram for G4QAOLowEnergyLoss:

Public Member Functions

 G4QAOLowEnergyLoss (const G4String &name)
 
 ~G4QAOLowEnergyLoss ()
 
G4double HighEnergyLimit (const G4ParticleDefinition *aParticle, const G4Material *material) const
 
G4double LowEnergyLimit (const G4ParticleDefinition *aParticle, const G4Material *material) const
 
G4double HighEnergyLimit (const G4ParticleDefinition *aParticle) const
 
G4double LowEnergyLimit (const G4ParticleDefinition *aParticle) const
 
G4bool IsInCharge (const G4DynamicParticle *particle, const G4Material *material) const
 
G4bool IsInCharge (const G4ParticleDefinition *aParticle, const G4Material *material) const
 
G4double TheValue (const G4DynamicParticle *particle, const G4Material *material)
 
G4double TheValue (const G4ParticleDefinition *aParticle, const G4Material *material, G4double kineticEnergy)
 
- Public Member Functions inherited from G4VLowEnergyModel
 G4VLowEnergyModel (const G4String &name)
 
virtual ~G4VLowEnergyModel ()
 

Detailed Description

Definition at line 53 of file G4QAOLowEnergyLoss.hh.

Constructor & Destructor Documentation

G4QAOLowEnergyLoss::G4QAOLowEnergyLoss ( const G4String name)

Definition at line 70 of file G4QAOLowEnergyLoss.cc.

71  : G4VLowEnergyModel(name)
72 {
73  numberOfMaterials = 6;
74  sizeL0 = 67;
75  sizeL1 = 22;
76  sizeL2 = 14;
77 }
G4VLowEnergyModel(const G4String &name)
G4QAOLowEnergyLoss::~G4QAOLowEnergyLoss ( )

Definition at line 80 of file G4QAOLowEnergyLoss.cc.

81 {;}

Member Function Documentation

G4double G4QAOLowEnergyLoss::HighEnergyLimit ( const G4ParticleDefinition aParticle,
const G4Material material 
) const
virtual

Implements G4VLowEnergyModel.

Definition at line 84 of file G4QAOLowEnergyLoss.cc.

86 {
87  return 2.0*MeV ;
88 }
static constexpr double MeV
Definition: G4SIunits.hh:214
G4double G4QAOLowEnergyLoss::HighEnergyLimit ( const G4ParticleDefinition aParticle) const
virtual

Implements G4VLowEnergyModel.

Definition at line 99 of file G4QAOLowEnergyLoss.cc.

100 {
101  return 2.0*MeV ;
102 }
static constexpr double MeV
Definition: G4SIunits.hh:214
G4bool G4QAOLowEnergyLoss::IsInCharge ( const G4DynamicParticle particle,
const G4Material material 
) const
virtual

Implements G4VLowEnergyModel.

Definition at line 111 of file G4QAOLowEnergyLoss.cc.

113 {
114  G4bool isInCharge = false;
115 
116  G4bool hasMaterial = false;
117 
118  if (material->GetNumberOfElements() == 1) hasMaterial = true;
119 
120  if ((particle->GetDefinition()) == (G4AntiProton::AntiProtonDefinition())
121  && hasMaterial) isInCharge = true;
122 
123  return isInCharge;
124 
125 }
G4ParticleDefinition * GetDefinition() const
static G4AntiProton * AntiProtonDefinition()
Definition: G4AntiProton.cc:88
bool G4bool
Definition: G4Types.hh:79
size_t GetNumberOfElements() const
Definition: G4Material.hh:186

Here is the call graph for this function:

G4bool G4QAOLowEnergyLoss::IsInCharge ( const G4ParticleDefinition aParticle,
const G4Material material 
) const
virtual

Implements G4VLowEnergyModel.

Definition at line 127 of file G4QAOLowEnergyLoss.cc.

129 {
130 
131  G4bool isInCharge = false;
132 
133  G4bool hasMaterial = false;
134 
135  if (material->GetNumberOfElements() == 1) hasMaterial = true;
136 
137 
138  if (aParticle == (G4AntiProton::AntiProtonDefinition())
139  && hasMaterial) isInCharge = true;
140 
141  return isInCharge;
142 
143 }
static G4AntiProton * AntiProtonDefinition()
Definition: G4AntiProton.cc:88
bool G4bool
Definition: G4Types.hh:79
size_t GetNumberOfElements() const
Definition: G4Material.hh:186

Here is the call graph for this function:

G4double G4QAOLowEnergyLoss::LowEnergyLimit ( const G4ParticleDefinition aParticle,
const G4Material material 
) const
virtual

Implements G4VLowEnergyModel.

Definition at line 91 of file G4QAOLowEnergyLoss.cc.

93 {
94  // return 50.0*keV ;
95  return 5.0*keV ;
96 }
static constexpr double keV
Definition: G4SIunits.hh:216
G4double G4QAOLowEnergyLoss::LowEnergyLimit ( const G4ParticleDefinition aParticle) const
virtual

Implements G4VLowEnergyModel.

Definition at line 104 of file G4QAOLowEnergyLoss.cc.

105 {
106  // return 50.0*keV ;
107  return 5.0*keV ;
108 }
static constexpr double keV
Definition: G4SIunits.hh:216
G4double G4QAOLowEnergyLoss::TheValue ( const G4DynamicParticle particle,
const G4Material material 
)
virtual

Implements G4VLowEnergyModel.

Definition at line 146 of file G4QAOLowEnergyLoss.cc.

148 {
149  G4double zParticle = (G4int)(particle->GetCharge())/eplus;
150 
151  G4double energy = particle->GetKineticEnergy() ;
152  G4double eloss = EnergyLoss(material,energy,zParticle) ;
153 
154  return eloss ;
155 }
G4double GetKineticEnergy() const
int G4int
Definition: G4Types.hh:78
G4double GetCharge() const
static constexpr double eplus
Definition: G4SIunits.hh:199
G4double energy(const ThreeVector &p, const G4double m)
double G4double
Definition: G4Types.hh:76

Here is the call graph for this function:

G4double G4QAOLowEnergyLoss::TheValue ( const G4ParticleDefinition aParticle,
const G4Material material,
G4double  kineticEnergy 
)
virtual

Implements G4VLowEnergyModel.

Definition at line 158 of file G4QAOLowEnergyLoss.cc.

161 {
162  G4double zParticle = (aParticle->GetPDGCharge())/eplus;
163 
164  G4double eloss = EnergyLoss(material,kineticEnergy,zParticle) ;
165 
166  return eloss ;
167 }
static constexpr double eplus
Definition: G4SIunits.hh:199
double G4double
Definition: G4Types.hh:76
G4double GetPDGCharge() const

Here is the call graph for this function:


The documentation for this class was generated from the following files: