47 if (ZRes > ARes || ARes < 1) {
48 G4cout <<
"G4GEMCoulombBarrier::GetCoulombBarrier: "
49 <<
"Wrong values for "
50 <<
"residual nucleus A = " << ARes <<
" "
51 <<
"and residual nucleus Z = " << ZRes <<
G4endl;
58 G4double CompoundRadius = CalcCompoundRadius(ARes);
59 Barrier = ( elm_coupling * GetZ() * ZRes)/CompoundRadius;
62 if(GetA() <= 4) { Barrier *= BarrierPenetrationFactor(
G4double(ZRes)); }
66 Barrier /= (1.0 + std::sqrt(U/(
static_cast<G4double>(2*ARes))));
80 Result = 1.7* AresOneThird;
83 Result = 1.7* AresOneThird + 1.2;
86 Result = 1.12*(AresOneThird + AejectOneThird) -
87 0.86*(AresOneThird+AejectOneThird)/(AresOneThird*AejectOneThird)+3.75;
G4DLLIMPORT std::ostream G4cout
G4double GetCoulombBarrier(G4int ARes, G4int ZRes, G4double U) const
G4GEMCoulombBarrier(G4int anA, G4int aZ)
G4double CalcCompoundRadius(G4int ARes) const
virtual ~G4GEMCoulombBarrier()
static G4Pow * GetInstance()