112 G4LorentzVector w0(0.,0.,0.,0.), w1(0.,0.,0.,0.), w2(0.,0.,0.,0.);
119 const G4int nmax = 200;
139 w1.set(-w2.
px(), -w2.
py(), -w2.
pz(), w2.
e());
160 gg = (px*px + py*py + pz*pz)*
165 G4cout <<
"G4eeTo3PiModel::SampleSecondaries WARNING matrix element g= "
166 << gg <<
" > " <<
gmax <<
" (majoranta)" <<
G4endl;
172 w0.rotateUz(direction);
173 w1.rotateUz(direction);
183 newp->push_back(dp0);
184 newp->push_back(dp1);
185 newp->push_back(dp2);
static const G4double e2[44]
CLHEP::HepLorentzVector G4LorentzVector
G4ThreeVector G4RandomDirection()
static constexpr double GeV
static constexpr double MeV
G4GLOB_DLL std::ostream G4cout
HepLorentzVector & boost(double, double, double)
HepLorentzVector & rotateUz(const Hep3Vector &)
G4double GetPDGMass() const
static G4PionMinus * PionMinus()
static G4PionPlus * PionPlus()
static G4PionZero * PionZero()
G4eeCrossSections * cross
G4double HighEnergy() const
G4double CrossSection3pi(G4double)
std::complex< G4double > DpRho(G4double e)
G4double PeakEnergy() const override
G4eeTo3PiModel(G4eeCrossSections *, G4double, G4double)
void SampleSecondaries(std::vector< G4DynamicParticle * > *, G4double, const G4ThreeVector &) override
~G4eeTo3PiModel() override
G4double ComputeCrossSection(G4double) const override