#include <G4EnergyLossForExtrapolator.hh>
 | 
|   | G4EnergyLossForExtrapolator (G4int verb=1) | 
|   | 
|   | ~G4EnergyLossForExtrapolator () | 
|   | 
| G4double  | ComputeDEDX (G4double kinEnergy, const G4ParticleDefinition *) | 
|   | 
| G4double  | ComputeRange (G4double kinEnergy, const G4ParticleDefinition *) | 
|   | 
| G4double  | ComputeEnergy (G4double range, const G4ParticleDefinition *) | 
|   | 
| G4double  | EnergyAfterStep (G4double kinEnergy, G4double step, const G4Material *, const G4ParticleDefinition *) | 
|   | 
| G4double  | EnergyBeforeStep (G4double kinEnergy, G4double step, const G4Material *, const G4ParticleDefinition *) | 
|   | 
| G4double  | TrueStepLength (G4double kinEnergy, G4double step, const G4Material *, const G4ParticleDefinition *part) | 
|   | 
| G4double  | EnergyAfterStep (G4double kinEnergy, G4double step, const G4Material *, const G4String &particleName) | 
|   | 
| G4double  | EnergyBeforeStep (G4double kinEnergy, G4double step, const G4Material *, const G4String &particleName) | 
|   | 
| G4double  | AverageScatteringAngle (G4double kinEnergy, G4double step, const G4Material *, const G4ParticleDefinition *part) | 
|   | 
| G4double  | AverageScatteringAngle (G4double kinEnergy, G4double step, const G4Material *, const G4String &particleName) | 
|   | 
| G4double  | ComputeTrueStep (const G4Material *, const G4ParticleDefinition *part, G4double kinEnergy, G4double stepLength) | 
|   | 
| G4double  | EnergyDispersion (G4double kinEnergy, G4double step, const G4Material *, const G4ParticleDefinition *) | 
|   | 
| G4double  | EnergyDispersion (G4double kinEnergy, G4double step, const G4Material *, const G4String &particleName) | 
|   | 
| void  | SetVerbose (G4int val) | 
|   | 
| void  | SetMinKinEnergy (G4double) | 
|   | 
| void  | SetMaxKinEnergy (G4double) | 
|   | 
| void  | SetMaxEnergyTransfer (G4double) | 
|   | 
  
  
      
        
          | G4EnergyLossForExtrapolator::G4EnergyLossForExtrapolator  | 
          ( | 
          G4int  | 
          verb = 1 | ) | 
           | 
         
       
   | 
  
explicit   | 
  
 
Definition at line 67 of file G4EnergyLossForExtrapolator.cc.
   68   : maxEnergyTransfer(
DBL_MAX), verbose(verb)
 
   70   currentParticle = 
nullptr;
 
   71   currentMaterial = 
nullptr;
 
   80   mass = charge2 = electronDensity = radLength = bg2 = beta2 
 
   81     = kineticEnergy = tmax = 0.0;
 
   84   idxDedxElectron = idxDedxPositron = idxDedxMuon = idxDedxProton 
 
   85     = idxRangeElectron = idxRangePositron = idxRangeMuon = idxRangeProton
 
   86     = idxInvRangeElectron = idxInvRangePositron = idxInvRangeMuon
 
   87     = idxInvRangeProton = idxMscElectron = 0;
 
   89   electron = positron = proton = muonPlus = muonMinus = 
nullptr;
 
static constexpr double TeV
 
static constexpr double MeV
 
 
 
 
      
        
          | G4EnergyLossForExtrapolator::~G4EnergyLossForExtrapolator  | 
          ( | 
           | ) | 
           | 
        
      
 
 
Definition at line 248 of file G4EnergyLossForExtrapolator.hh.
  255   if(SetupKinematics(part, mat, kinEnergy)) {
 
static constexpr double MeV
 
G4double G4Log(G4double x)
 
T max(const T t1, const T t2)
brief Return the largest of the two arguments 
 
 
 
 
Definition at line 240 of file G4EnergyLossForExtrapolator.cc.
  244   if(part == electron)  { 
 
  245     x = ComputeValue(ekin, GetPhysicsTable(
fDedxElectron), idxDedxElectron);
 
  246   } 
else if(part == positron) {
 
  247     x = ComputeValue(ekin, GetPhysicsTable(
fDedxPositron), idxDedxPositron);
 
  248   } 
else if(part == muonPlus || part == muonMinus) {
 
  249     x = ComputeValue(ekin, GetPhysicsTable(
fDedxMuon), idxDedxMuon);
 
  252     x = ComputeValue(e, GetPhysicsTable(
fDedxProton), idxDedxProton)*charge2;
 
 
 
 
Definition at line 282 of file G4EnergyLossForExtrapolator.cc.
  286   if(part == electron) {
 
  288              idxInvRangeElectron);
 
  289   } 
else if(part == positron) {
 
  291              idxInvRangePositron);
 
  292   } 
else if(part == muonPlus || part == muonMinus) {
 
  298              idxInvRangeProton)/massratio;
 
const G4ParticleDefinition const G4Material *G4double range
 
 
 
 
Definition at line 260 of file G4EnergyLossForExtrapolator.cc.
  264   if(part == electron) { 
 
  265     x = ComputeValue(ekin, GetPhysicsTable(
fRangeElectron), idxRangeElectron);
 
  266   } 
else if(part == positron) {
 
  267     x = ComputeValue(ekin, GetPhysicsTable(
fRangePositron), idxRangePositron);
 
  268   } 
else if(part == muonPlus || part == muonMinus) { 
 
  269     x = ComputeValue(ekin, GetPhysicsTable(
fRangeMuon), idxRangeMuon);
 
  273     x = ComputeValue(e, GetPhysicsTable(
fRangeProton), idxRangeProton)
 
  274       /(charge2*massratio);
 
 
 
 
Definition at line 95 of file G4EnergyLossForExtrapolator.cc.
  100   if(0 == nmat) { Initialisation(); }
 
  101   G4double kinEnergyFinal = kinEnergy;
 
  102   if(SetupKinematics(part, mat, kinEnergy)) {
 
  106       kinEnergyFinal = 0.0;
 
  107     } 
else if(step < linLossLimit*r) {
 
  108       kinEnergyFinal -= step*
ComputeDEDX(kinEnergy,part);
 
  114   return kinEnergyFinal;
 
 
 
 
Definition at line 120 of file G4EnergyLossForExtrapolator.cc.
  126   if(0 == nmat) { Initialisation(); }
 
  127   G4double kinEnergyFinal = kinEnergy;
 
  129   if(SetupKinematics(part, mat, kinEnergy)) {
 
  133     if(step < linLossLimit*r) {
 
  134       kinEnergyFinal += step*
ComputeDEDX(kinEnergy,part);
 
  140   return kinEnergyFinal;
 
 
 
 
Definition at line 279 of file G4EnergyLossForExtrapolator.hh.
  285   if(SetupKinematics(part, mat, kinEnergy)) {
 
  287     sig2 = (1.0/beta2 - 0.5)
 
static constexpr double twopi_mc2_rcl2
 
 
 
 
  
  
      
        
          | void G4EnergyLossForExtrapolator::SetMaxEnergyTransfer  | 
          ( | 
          G4double  | 
          val | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
 
  
  
      
        
          | void G4EnergyLossForExtrapolator::SetMaxKinEnergy  | 
          ( | 
          G4double  | 
          val | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
 
  
  
      
        
          | void G4EnergyLossForExtrapolator::SetMinKinEnergy  | 
          ( | 
          G4double  | 
          val | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
 
  
  
      
        
          | void G4EnergyLossForExtrapolator::SetVerbose  | 
          ( | 
          G4int  | 
          val | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
 
Definition at line 146 of file G4EnergyLossForExtrapolator.cc.
  152   if(0 == nmat) { Initialisation(); }
 
  155   if(SetupKinematics(part, mat, kinEnergy)) {
 
  156     if(part == electron || part == positron) {
 
  158     ComputeValue(kinEnergy, GetPhysicsTable(
fMscElectron), idxMscElectron);
 
  160       if(x < 0.2)         { res *= (1.0 + 0.5*x + x*x/3.0); }
 
  161       else if(x < 0.9999) { res = -
G4Log(1.0 - x)*stepLength/
x; }
 
G4double G4Log(G4double x)
 
 
 
 
The documentation for this class was generated from the following files: