G4GEMCoulombBarrierHE Class Reference

#include <G4GEMCoulombBarrierHE.hh>

Inheritance diagram for G4GEMCoulombBarrierHE:

G4VCoulombBarrier

Public Member Functions

 G4GEMCoulombBarrierHE (G4int anA, G4int aZ)
 ~G4GEMCoulombBarrierHE ()
G4double GetCoulombBarrier (G4int ARes, G4int ZRes, G4double U) const
virtual G4double BarrierPenetrationFactor (G4double) const
G4double CalcCompoundRadius (G4int ARes) const

Detailed Description

Definition at line 39 of file G4GEMCoulombBarrierHE.hh.


Constructor & Destructor Documentation

G4GEMCoulombBarrierHE::G4GEMCoulombBarrierHE ( G4int  anA,
G4int  aZ 
)

Definition at line 37 of file G4GEMCoulombBarrierHE.cc.

References G4GEMCoulombBarrierHE().

Referenced by G4GEMCoulombBarrierHE().

00037                                                                 :
00038   G4VCoulombBarrier(anA,aZ) 
00039 {}

G4GEMCoulombBarrierHE::~G4GEMCoulombBarrierHE (  ) 

Definition at line 41 of file G4GEMCoulombBarrierHE.cc.

00042 {}


Member Function Documentation

virtual G4double G4GEMCoulombBarrierHE::BarrierPenetrationFactor ( G4double   )  const [inline, virtual]

Definition at line 59 of file G4GEMCoulombBarrierHE.hh.

00060   {return 1.0;};

G4double G4GEMCoulombBarrierHE::CalcCompoundRadius ( G4int  ARes  )  const

Definition at line 71 of file G4GEMCoulombBarrierHE.cc.

References G4VCoulombBarrier::GetA(), G4Pow::GetInstance(), and G4Pow::Z13().

00072 {
00073   G4Pow* g4pow = G4Pow::GetInstance();
00074   G4double AresOneThird = g4pow->Z13(ARes);
00075   G4double AejectOneThird = g4pow->Z13(GetA());
00076 
00077   G4double Result = 1.12*(AresOneThird + AejectOneThird) - 
00078     0.86*(AresOneThird+AejectOneThird)/(AresOneThird*AejectOneThird);
00079 
00080   return Result*fermi;
00081 }

G4double G4GEMCoulombBarrierHE::GetCoulombBarrier ( G4int  ARes,
G4int  ZRes,
G4double  U 
) const [virtual]

Implements G4VCoulombBarrier.

Definition at line 44 of file G4GEMCoulombBarrierHE.cc.

References G4cout, and G4endl.

00046 {
00047   G4double Barrier = 0.0;
00048   if (ZRes > ARes || ARes < 1) {
00049     G4cout << "G4GEMCoulombBarrierHE::GetCoulombBarrier: "
00050            << "Wrong values for "
00051            << "residual nucleus A = " << ARes << " "
00052            << "and residual nucleus Z = " << ZRes << G4endl;
00053     throw G4HadronicException(__FILE__, __LINE__,"FATAL error");
00054   }
00055   if (GetZ() == 0) {
00056     Barrier = 0.0;   // If there is no charge there is neither barrier
00057   } else {
00058     G4double CompoundRadius = CalcCompoundRadius(ARes);
00059     Barrier = ( elm_coupling * GetZ() * ZRes)/(CompoundRadius+3.75*fermi);
00060     
00061     // Barrier penetration coeficient
00062     //    G4double K = BarrierPenetrationFactor(ZRes);
00063     //    Barrier *= K;
00064     
00065     Barrier /= (1.0 + std::sqrt(U/static_cast<G4double>(2*ARes)));
00066   }
00067   return Barrier;
00068 }


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