153 G4double zdat[] = {1.,4.,13.,29.,92.};
155 del = std::abs(lnZ-
G4Log(zdat[
iz]));
163 G4double tdat[] = {1.e3,1.e4,1.e5,1.e6,1.e7,1.e8,1.e9,1.e10};
165 for (
G4int it = 0; it < ntdat; it++) {
166 del = std::abs(
G4Log(KineticEnergy)-
G4Log(tdat[it]) );
178 ed <<
" While count exceeded " <<
G4endl;
186 }
while (((
proba[izz][itt][iy]) < r)&&(iy < NBINminus1)) ;
226 eda <<
" While count exceeded " <<
G4endl;
237 rej = (1.-t/tmax)*(y1*(1.-tmin/t)+
y2)/(y3*(1.-t/t2));
242 0.5*(t-tmin)/(2.*(TotalEnergy*(TotalEnergy-ep)-Mass*Mass)-tmin);
243 G4double theta = std::acos(1. - 2.*sinth2);
247 G4double dirx = sinth*std::cos(phi);
248 G4double diry = sinth*std::sin(phi);
252 finalDirection.
rotateUz(ParticleDirection);
254 G4double NewKinEnergy = KineticEnergy - ep;
255 G4double finalMomentum = std::sqrt(NewKinEnergy*(NewKinEnergy+2.*Mass) );
257 G4double initMomentum = std::sqrt(KineticEnergy*(TotalEnergy+Mass) );
265 G4LorentzVector primaryMomentum(initMomentum*ParticleDirection, TotalEnergy);
G4double proba[5][8][1001]
std::ostringstream G4ExceptionDescription
const G4LorentzVector & Get4Momentum() const
G4double GetTotalEnergy() const
void SetStatusChange(G4HadFinalStateStatus aS)
Hep3Vector & rotateUz(const Hep3Vector &)
static const double twopi
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
G4double G4Log(G4double x)
G4double G4Exp(G4double initial_x)
Exponential Function double precision.
void SetEnergyChange(G4double anEnergy)
G4double GetKineticEnergy() const
G4double GetPDGMass() const
G4HadFinalState theParticleChange
static G4MuonMinus * MuonMinus()
void SetMomentumChange(const G4ThreeVector &aV)