Geant4 10.7.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4CoulombBarrier Class Reference

#include <G4CoulombBarrier.hh>

+ Inheritance diagram for G4CoulombBarrier:

Public Member Functions

 G4CoulombBarrier (G4int anA, G4int aZ)
 
virtual ~G4CoulombBarrier ()
 
G4double GetCoulombBarrier (G4int ARes, G4int ZRes, G4double U) const
 
virtual G4double BarrierPenetrationFactor (G4int Eexc) const
 
- Public Member Functions inherited from G4VCoulombBarrier
 G4VCoulombBarrier (G4int anA, G4int aZ)
 
virtual ~G4VCoulombBarrier ()
 
virtual G4double GetCoulombBarrier (G4int ARes, G4int ZRes, G4double U) const =0
 
virtual G4double BarrierPenetrationFactor (G4int Eexc) const =0
 
void SetParameters (G4double rho, G4double r0)
 
G4int GetA (void) const
 
G4int GetZ (void) const
 
G4double GetRho (void) const
 
G4double GetR0 (void) const
 

Protected Attributes

G4Powg4calc
 

Detailed Description

Definition at line 41 of file G4CoulombBarrier.hh.

Constructor & Destructor Documentation

◆ G4CoulombBarrier()

G4CoulombBarrier::G4CoulombBarrier ( G4int  anA,
G4int  aZ 
)
explicit

Definition at line 39 of file G4CoulombBarrier.cc.

41{
42 factor = CLHEP::elm_coupling*Z;
43 SetParameters(0.4*G4NuclearRadii::RadiusCB(Z, A),1.3*CLHEP::fermi);
44}
static G4double RadiusCB(G4int Z, G4int A)
static G4Pow * GetInstance()
Definition: G4Pow.cc:41
void SetParameters(G4double rho, G4double r0)

◆ ~G4CoulombBarrier()

G4CoulombBarrier::~G4CoulombBarrier ( )
virtual

Definition at line 46 of file G4CoulombBarrier.cc.

47{}

Member Function Documentation

◆ BarrierPenetrationFactor()

G4double G4CoulombBarrier::BarrierPenetrationFactor ( G4int  Eexc) const
virtual

Implements G4VCoulombBarrier.

Definition at line 57 of file G4CoulombBarrier.cc.

58{
59 G4double res = 1.0;
60 if(GetZ() == 1) {
61 res = (aZ >= 70) ? 0.80 :
62 (((0.2357e-5*aZ) - 0.42679e-3)*aZ + 0.27035e-1)*aZ + 0.19025;
63 res += 0.06*(GetA() - 1);
64
65 } else if(GetZ() == 2 && GetA() <= 4) {
66 res = (aZ >= 70) ? 0.98 :
67 (((0.23684e-5*aZ) - 0.42143e-3)*aZ + 0.25222e-1)*aZ + 0.46699;
68 res += 0.12*(4 - GetA());
69 }
70 return res;
71}
double G4double
Definition: G4Types.hh:83
G4int GetA(void) const
G4int GetZ(void) const

◆ GetCoulombBarrier()

G4double G4CoulombBarrier::GetCoulombBarrier ( G4int  ARes,
G4int  ZRes,
G4double  U 
) const
virtual

Implements G4VCoulombBarrier.

Definition at line 49 of file G4CoulombBarrier.cc.

51{
52 return factor*ZRes/(G4NuclearRadii::RadiusCB(ZRes,ARes) + GetRho());
53 //return factor*ZRes/((G4NuclearRadii::RadiusCB(ZRes,ARes)
54 // + GetRho())*(1.0 + std::sqrt(U/(G4double)(2*ARes))));
55}
G4double GetRho(void) const

Referenced by G4FermiFragment::GetCoulombBarrier(), and G4EvaporationChannel::GetEmissionProbability().

Member Data Documentation

◆ g4calc

G4Pow* G4CoulombBarrier::g4calc
protected

Definition at line 62 of file G4CoulombBarrier.hh.

Referenced by G4GEMCoulombBarrier::G4GEMCoulombBarrier().


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