48#ifndef G4UniversalFluctuation_h
49#define G4UniversalFluctuation_h 1
146 if(p > 0) { eloss += ((p + 1) - 2.*rndm->
flat())*ex; }
156 const G4double sig = std::sqrt(esig2);
158 x += (2.*rndm->
flat() - 1.)*eav;
161 x = G4RandGauss::shoot(rndm, eav, sig);
162 }
while (x < 0.0 || x > 2*eav);
G4long G4Poisson(G4double mean)
virtual void SetParticleAndCharge(const G4ParticleDefinition *, G4double q2) final
virtual ~G4UniversalFluctuation()
virtual G4double Dispersion(const G4Material *, const G4DynamicParticle *, G4double, G4double) override
virtual void InitialiseMe(const G4ParticleDefinition *) final
virtual G4double SampleFluctuations(const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double, G4double, G4double) override