#include <G4IonCoulombCrossSection.hh>
Definition at line 69 of file G4IonCoulombCrossSection.hh.
 
  
  
      
        
          | G4IonCoulombCrossSection::G4IonCoulombCrossSection  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
explicit   | 
  
 
Definition at line 70 of file G4IonCoulombCrossSection.cc.
   87   chargeSquare = spin = mass = 0.0;
 
   88   tkinLab = momLab2 = invbetaLab2 = tkin = mom2 = invbeta2 = 0.0;
 
   90   targetZ = targetMass = screenZ = ScreenRSquare = etag = 0.0;
 
static G4Pow * GetInstance()
 
static G4NistManager * Instance()
 
static constexpr double twopi
 
static G4Proton * Proton()
 
 
 
 
  
  
      
        
          | G4IonCoulombCrossSection::~G4IonCoulombCrossSection  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
 
  
  
      
        
          | G4double G4IonCoulombCrossSection::GetMomentum2  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
 
Definition at line 99 of file G4IonCoulombCrossSection.cc.
  103   nucXSection = tkin = targetZ = mom2 = 0.0;
 
  106   cosThetaMin = CosThetaLim; 
 
void SetupParticle(const G4ParticleDefinition *)
 
 
 
 
      
        
          | G4double G4IonCoulombCrossSection::NuclearCrossSection  | 
          ( | 
           | ) | 
           | 
        
      
 
Definition at line 190 of file G4IonCoulombCrossSection.cc.
  194   G4double fac = coeff*targetZ*(targetZ)*chargeSquare*invbeta2/mom2;
 
  202   if(cosTetMaxNuc < cosTetMinNuc) {
 
  203     nucXSection = fac*(cosTetMinNuc - cosTetMaxNuc)/
 
  204       (x1*(1.0 - cosTetMaxNuc + screenZ));
 
static const G4double fac
 
 
 
 
      
        
          | G4double G4IonCoulombCrossSection::SampleCosineTheta  | 
          ( | 
           | ) | 
           | 
        
      
 
 
Definition at line 111 of file G4IonCoulombCrossSection.cc.
  113   if(ekin != tkinLab || tmass != targetMass) {
 
  117     momLab2 = tkinLab*(tkinLab + 2.0*mass);
 
  118     invbetaLab2 = 1.0 +  mass*mass/momLab2;
 
  128     G4double Ecm=sqrt(m12 + targetMass*targetMass + 2.0*etot*targetMass);
 
  129     G4double mu_rel=mass*targetMass/Ecm;
 
  130     G4double momCM= ptot*targetMass/Ecm;
 
  133     invbeta2 = 1.0 +  mu_rel*mu_rel/mom2;
 
  134     tkin = momCM*sqrt(invbeta2) - mu_rel;
 
  136     cosTetMinNuc = cosThetaMin;
 
  137     cosTetMaxNuc = cosThetaMax;
 
 
 
 
Definition at line 147 of file G4IonCoulombCrossSection.hh.
  152   if(0.0 != spin) { spin = 0.5; }
 
static constexpr double eplus
 
G4double GetPDGMass() const 
 
G4double GetPDGSpin() const 
 
G4double GetPDGCharge() const 
 
 
 
 
Definition at line 143 of file G4IonCoulombCrossSection.cc.
  146   if(
Z != targetZ || e != etag) {
 
  151     SetScreenRSquare(iz);
 
  153     screenZ = ScreenRSquare/mom2;
 
  159     screenZ *=0.5*(1.13 + corr*3.76*
Z*
Z*chargeSquare*invbeta2*alpha2);
 
  163     if(1 == iz && particle == theProton && cosTetMaxNuc < 0.0) {
 
static constexpr double twopi
 
G4double G4Log(G4double x)
 
G4double G4Exp(G4double initial_x)
Exponential Function double precision. 
 
 
 
 
The documentation for this class was generated from the following files: