104 G4double Theta = std::acos(cosTheta);
107 G4ThreeVector pFinal1(std::sin(Theta)*std::cos(phi), std::sin(Theta)*std::sin(phi), cosTheta);
109 G4double pInCM = std::sqrt((
S-(m10+m20)*(m10+m20))*(
S-(m10-m20)*(m10-m20))/(4.*
S));
110 pFinal1 = pFinal1 * pInCM;
120 p4Final1 *= toLabFrame;
121 p4Final2 *= toLabFrame;
130 finalTracks->push_back(final1);
131 finalTracks->push_back(final2);
G4double S(G4double temp)
HepLorentzRotation & rotateY(double delta)
HepLorentzRotation & rotateZ(double delta)
HepLorentzRotation inverse() const
Hep3Vector boostVector() const
void Set4Momentum(const G4LorentzVector &a4Momentum)
const G4ParticleDefinition * GetDefinition() const
const G4LorentzVector & Get4Momentum() const
G4double GetActualMass() const
static G4Neutron * Neutron()
G4double GetPDGMass() const
static G4Proton * Proton()
virtual G4double Phi() const
virtual G4double CosTheta(G4double s, G4double m1, G4double m2) const =0
virtual const G4VAngularDistribution * GetAngularDistribution() const =0
virtual G4KineticTrackVector * FinalState(const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
virtual ~G4VElasticCollision()