78 throw G4HadronicException(__FILE__, __LINE__,
"G4NeutronHPNBodyPhaseSpace: Unknown ion case 2");
101 throw G4HadronicException(__FILE__, __LINE__,
"NeutronHP Phase-space distribution cannot cope with this number of particles");
113 while(rand > testit);
122 G4ThreeVector tempVector(mtot*sinth*std::cos(phi), mtot*sinth*std::sin(phi), mtot*std::cos(theta) );
125 result->
Lorentz(*result, -1.*aCMS);
G4ReactionProduct * GetNeutron()
G4double GetEmax(G4double anEnergy, G4double mass)
G4double GetTotalMomentum() const
void Lorentz(const G4ReactionProduct &p1, const G4ReactionProduct &p2)
CLHEP::Hep3Vector G4ThreeVector
void SetKineticEnergy(const G4double en)
void SetMomentum(const G4double x, const G4double y, const G4double z)
static G4Triton * Triton()
G4ReactionProduct * GetTarget()
static G4Proton * Proton()
static G4Neutron * Neutron()
static const G4double A[nN]
static G4Deuteron * Deuteron()
static G4Positron * Positron()
T max(const T t1, const T t2)
brief Return the largest of the two arguments
G4double energy(const ThreeVector &p, const G4double m)
G4ReactionProduct * Sample(G4double anEnergy, G4double massCode, G4double mass)
void SetDefinition(G4ParticleDefinition *aParticleDefinition)
G4double Prob(G4double anEnergy, G4double eMax, G4int n)
static G4Electron * Electron()