72 massPhi = 1019.46*
MeV;
131 G4double e0, p0, e2,
p, gg, m01, m02, m12;
134 G4double edel = 0.5*e*(1.0 + x0*x0 - 4.0*x1*
x1) - massPi0;
139 p0 = sqrt(e0 - massPi0*massPi0);
149 p = sqrt(e2 - massPi*massPi);
171 gg = (px*px + py*py + pz*pz)*
173 + 1.0/cross->
DpRho(m12) );
175 G4cout <<
"G4eeTo3PiModel::SampleSecondaries WARNING matrix element g= "
176 << gg <<
" > " << gmax <<
" (majoranta)" <<
G4endl;
178 if(gg > gcash) gcash = gg;
193 newp->push_back(dp0);
194 newp->push_back(dp1);
195 newp->push_back(dp2);
Hep3Vector boostVector() const
G4double LowEnergy() const
G4ThreeVector G4RandomDirection()
virtual G4PhysicsVector * PhysicsVector(G4double, G4double) const
G4double CrossSection3pi(G4double)
std::complex< G4double > DpRho(G4double e)
virtual G4double PeakEnergy() const
G4GLOB_DLL std::ostream G4cout
HepLorentzVector & boost(double, double, double)
static G4PionPlus * PionPlus()
virtual G4double ThresholdEnergy() const
HepLorentzVector & rotateUz(const Hep3Vector &)
static G4PionZero * PionZero()
G4double GetPDGMass() const
virtual G4double ComputeCrossSection(G4double) const
T max(const T t1, const T t2)
brief Return the largest of the two arguments
static G4PionMinus * PionMinus()
T min(const T t1, const T t2)
brief Return the smallest of the two arguments
G4double HighEnergy() const
virtual void SampleSecondaries(std::vector< G4DynamicParticle * > *, G4double, const G4ThreeVector &)
G4eeTo3PiModel(G4eeCrossSections *)
virtual ~G4eeTo3PiModel()
CLHEP::HepLorentzVector G4LorentzVector