68 if (Wprime <= 1.00001) Wprime = 1.00001;
71 G4double p_e = std::sqrt(Wprime*Wprime - 1.);
82 G4double factor3 = (Wprime/W)*std::sqrt( (Wprime*Wprime - 1.)/(W*W - 1.) );
84 return factor1*factor2*factor3;
96 G4double factor1 = std::pow( (1+re)*(1+re) + im*im, re+0.5);
97 G4double factor2 = std::exp(2*im * std::atan(im/(1+re)));
98 G4double factor3 = std::exp(2*(1+re));
100 G4double factor5 = std::exp( (1+re)/( (1+re)*(1+re) + im*im)/6 );
102 return factor1*factor4*factor5/factor2/factor3/factor6;
114 ed <<
" While count exceeded " <<
G4endl;
128 for (
G4int i = 1; i < 6; i++) sum = sum*x +
gc[i];
155 factor = 1. + c1*w + c2/w + c3*w*
w;
165 G4double term2 = 12.*(2. + gamma1)*p_e*p_e
166 *std::pow(twoPR, 2.*(gamma1-
gamma0-1) )
169 factor = term1 + term2;
180 G4double gamma2 = std::sqrt(9. - alphaZ*alphaZ);
186 G4double term2 = 4.*(2. + gamma1)*e_nu*e_nu*p_e*p_e
187 *std::pow(twoPR, 2.*(gamma1-
gamma0-1.) )
191 G4double term3 = 180.*(3.+gamma2)*p_e*p_e*p_e*p_e
192 *std::pow(twoPR, 2.*(gamma2-
gamma0-2) )
196 factor = term1 + term2 + term3;
207 G4double gamma2 = std::sqrt(9. - alphaZ*alphaZ);
208 G4double gamma3 = std::sqrt(16. - alphaZ*alphaZ);
214 G4double term1 = e_nu*e_nu*e_nu*e_nu*e_nu*e_nu*(1. +
gamma0)/1260.;
216 G4double term2 = 2.*(2. + gamma1)*e_nu*e_nu*e_nu*e_nu*p_e*p_e
217 *std::pow(twoPR, 2.*(gamma1-
gamma0-1.) )
221 G4double term3 = 60.*(3.+gamma2)*p_e*p_e*p_e*p_e*e_nu*e_nu
222 *std::pow(twoPR, 2.*(gamma2-
gamma0-2.) )
226 G4double term4 = 2240.*p_e*p_e*p_e*p_e*p_e*p_e*(4. + gamma3)
227 *std::pow(twoPR, 2.*(gamma3-
gamma0-3.) )
231 factor = term1 + term2 + term3 + term4;
236 G4Exception(
"G4BetaDecayCorrections::ShapeFactor()",
"HAD_RDM_010",
238 "Transition not yet implemented - using allowed shape");