G4GEMCoulombBarrier Class Reference

#include <G4GEMCoulombBarrier.hh>

Inheritance diagram for G4GEMCoulombBarrier:

G4VCoulombBarrier G4AlphaGEMCoulombBarrier G4B10GEMCoulombBarrier G4B11GEMCoulombBarrier G4B12GEMCoulombBarrier G4B13GEMCoulombBarrier G4B8GEMCoulombBarrier G4Be10GEMCoulombBarrier G4Be11GEMCoulombBarrier G4Be12GEMCoulombBarrier G4Be7GEMCoulombBarrier G4Be9GEMCoulombBarrier G4C10GEMCoulombBarrier G4C11GEMCoulombBarrier G4C12GEMCoulombBarrier G4C13GEMCoulombBarrier G4C14GEMCoulombBarrier G4C15GEMCoulombBarrier G4C16GEMCoulombBarrier G4DeuteronGEMCoulombBarrier G4F17GEMCoulombBarrier G4F18GEMCoulombBarrier G4F19GEMCoulombBarrier G4F20GEMCoulombBarrier G4F21GEMCoulombBarrier G4He3GEMCoulombBarrier G4He6GEMCoulombBarrier G4He8GEMCoulombBarrier G4Li6GEMCoulombBarrier G4Li7GEMCoulombBarrier G4Li8GEMCoulombBarrier G4Li9GEMCoulombBarrier G4Mg22GEMCoulombBarrier G4Mg23GEMCoulombBarrier G4Mg24GEMCoulombBarrier G4Mg25GEMCoulombBarrier G4Mg26GEMCoulombBarrier G4Mg27GEMCoulombBarrier G4Mg28GEMCoulombBarrier G4N12GEMCoulombBarrier G4N13GEMCoulombBarrier G4N14GEMCoulombBarrier G4N15GEMCoulombBarrier G4N16GEMCoulombBarrier G4N17GEMCoulombBarrier G4Na21GEMCoulombBarrier G4Na22GEMCoulombBarrier G4Na23GEMCoulombBarrier G4Na24GEMCoulombBarrier G4Na25GEMCoulombBarrier G4Ne18GEMCoulombBarrier G4Ne19GEMCoulombBarrier G4Ne20GEMCoulombBarrier G4Ne21GEMCoulombBarrier G4Ne22GEMCoulombBarrier G4Ne23GEMCoulombBarrier G4Ne24GEMCoulombBarrier G4O14GEMCoulombBarrier G4O15GEMCoulombBarrier G4O16GEMCoulombBarrier G4O17GEMCoulombBarrier G4O18GEMCoulombBarrier G4O19GEMCoulombBarrier G4O20GEMCoulombBarrier G4ProtonGEMCoulombBarrier G4TritonGEMCoulombBarrier

Public Member Functions

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

Detailed Description

Definition at line 37 of file G4GEMCoulombBarrier.hh.


Constructor & Destructor Documentation

G4GEMCoulombBarrier::G4GEMCoulombBarrier ( G4int  anA,
G4int  aZ 
)

Definition at line 36 of file G4GEMCoulombBarrier.cc.

References G4GEMCoulombBarrier().

Referenced by G4GEMCoulombBarrier().

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

G4GEMCoulombBarrier::~G4GEMCoulombBarrier (  )  [virtual]

Definition at line 40 of file G4GEMCoulombBarrier.cc.

00041 {}


Member Function Documentation

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

Reimplemented in G4AlphaGEMCoulombBarrier, and G4DeuteronGEMCoulombBarrier.

Definition at line 56 of file G4GEMCoulombBarrier.hh.

00057   {return 1.0;};

G4double G4GEMCoulombBarrier::CalcCompoundRadius ( G4int  ARes  )  const

Definition at line 71 of file G4GEMCoulombBarrier.cc.

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

00072 {      
00073   G4Pow* g4pow = G4Pow::GetInstance();
00074   G4double AresOneThird = g4pow->Z13(ARes);
00075   G4int A = GetA();
00076   G4double AejectOneThird = g4pow->Z13(A);
00077 
00078   G4double Result = 0.0;
00079   if(A == 1){
00080     Result = 1.7* AresOneThird;
00081 
00082   } else if (A <= 4){
00083     Result = 1.7* AresOneThird + 1.2;
00084 
00085   } else {
00086     Result = 1.12*(AresOneThird + AejectOneThird) - 
00087       0.86*(AresOneThird+AejectOneThird)/(AresOneThird*AejectOneThird)+3.75;
00088   }
00089   return Result*fermi;
00090 }

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

Implements G4VCoulombBarrier.

Definition at line 43 of file G4GEMCoulombBarrier.cc.

References G4cout, and G4endl.

00045 {
00046   G4double Barrier = 0.0;
00047   if (ZRes > ARes || ARes < 1) {
00048     G4cout << "G4GEMCoulombBarrier::GetCoulombBarrier: "
00049            << "Wrong values for "
00050            << "residual nucleus A = " << ARes << " "
00051            << "and residual nucleus Z = " << ZRes << G4endl;
00052     throw G4HadronicException(__FILE__, __LINE__,"FATAL error");
00053   }
00054   if (GetZ() == 0) {
00055     Barrier = 0.0;   // If there is no charge there is neither barrier
00056 
00057   } else {
00058     G4double CompoundRadius = CalcCompoundRadius(ARes);
00059     Barrier = ( elm_coupling * GetZ() * ZRes)/CompoundRadius;
00060       
00061     // Barrier penetration coeficient
00062     if(GetA() <= 4) { Barrier *= BarrierPenetrationFactor(G4double(ZRes)); }
00063   
00064     //JMQ 200709 effective decrease  of barrier with E* (Barashenkov)
00065     // (not inclued in original Furihata's formulation)
00066     Barrier /= (1.0 + std::sqrt(U/(static_cast<G4double>(2*ARes))));
00067   }
00068   return Barrier;
00069 }


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