58 theA(anA), theZ(aZ), Spin(aSpin), theCoulombBarrierPtr(0),
81 CalcProbability(fragment,MaximalKineticEnergy,CoulombBarrier);
88 for (
size_t i = 0; i <nn; ++i) {
93 G4double width = CalcProbability(fragment,Tmax,CoulombBarrier);
105 Normalization = probability;
119 G4int ResidualA = A - theA;
120 G4int ResidualZ = Z - theZ;
134 LevelDensityParameter(ResidualA,ResidualZ,MaximalKineticEnergy+V-delta0);
137 G4double T = 1.0/(std::sqrt(a/Ux) - 1.5/Ux);
139 G4double E0 = Ex - T*(std::log(T/MeV) - std::log(a*MeV)/4.0
140 - 1.25*std::log(Ux/MeV) + 2.0*std::sqrt(a*Ux));
150 G4double TCN = 1.0/(std::sqrt(aCN/UxCN) - 1.5/UxCN);
155 G4double t = MaximalKineticEnergy/T;
156 if ( MaximalKineticEnergy < Ex ) {
158 Width = (I1(t,t)*T + (Beta+V)*I0(t))/std::exp(E0/T);
165 const G4double sqrt2 = std::sqrt(2.0);
168 G4double s0 = 2.0*std::sqrt(a*(MaximalKineticEnergy-delta0));
169 G4double sx = 2.0*std::sqrt(a*(Ex-delta0));
170 Width = I1(t,tx)*T/expE0T + I3(s0,sx)*std::exp(s0)/(sqrt2*a);
173 Width += (Beta+V)*(I0(tx)/expE0T + 2.0*sqrt2*I2(s0,sx)*std::exp(s0));
179 G4double gg = (2.0*Spin+1.0)*NuclearMass/(pi2* hbarc*hbarc);
189 Rb = 1.12*(Aj + Ad) - 0.86*((Aj+Ad)/(Aj*Ad))+2.85;
196 Rb=1.5*(Aj+Ad)*fermi;
215 G4double E0CN = ExCN - TCN*(std::log(TCN/MeV) - std::log(aCN*MeV)/4.0
216 - 1.25*std::log(UxCN/MeV)
217 + 2.0*std::sqrt(aCN*UxCN));
218 InitialLevelDensity = (
pi/12.0)*std::exp((U-E0CN)/TCN)/TCN;
225 InitialLevelDensity = (
pi/12.0)*std::exp(2*x1)/(x*std::sqrt(x1));
230 Width *=
pi*gg*GeometricalXS*
Alpha/(12.0*InitialLevelDensity);
244 G4double p1 = S *(2.0 + S2 *( 4.0 + S2 *( 13.5 + S2 *( 60.0 + S2 * 325.125 ))));
247 (1.5*s2+0.5*sx2) + Sx2 *(
248 (3.75*s2+0.25*sx2) + Sx2 *(
249 (12.875*s2+0.625*sx2) + Sx2 *(
250 (59.0625*s2+0.9375*sx2) + Sx2 *(324.8*s2+3.28*sx2))))));
252 p2 *= std::exp(sx-s0);
G4double GetExcitationEnergy() const
G4double ComputeGroundStateMass(G4int Z, G4int A) const
G4double GetCoulombBarrier(const G4Fragment &fragment) const
std::vector< G4double > ExcitSpins
std::vector< G4double > ExcitEnergies
virtual ~G4GEMProbability()
G4double CalcAlphaParam(const G4Fragment &) const
std::vector< G4double > ExcitLifetimes
G4double CalcBetaParam(const G4Fragment &) const
G4double EmissionProbability(const G4Fragment &fragment, G4double anEnergy)
static G4PairingCorrection * GetInstance()
G4double GetPairingCorrection(G4int A, G4int Z) const
static G4Pow * GetInstance()
virtual G4double LevelDensityParameter(G4int A, G4int Z, G4double U) const =0