57 (
fMasterGen->event).
append(990, -11, 0, 0, 2, 1 + NTotParticles, 0, 0, 0., 0., 0., 15000., 15000.);
60 double phi,
eta, the, ee, pp;
73 double e1 = 0.5 * (m0 * m0 + m1 * m1 -
m2 *
m2) / m0;
74 double e2 = 0.5 * (m0 * m0 +
m2 *
m2 - m1 * m1) / m0;
75 double pAbs = 0.5 *
sqrt((m0 - m1 -
m2) * (m0 + m1 +
m2) * (m0 + m1 -
m2) * (m0 - m1 +
m2)) / m0;
78 double sinTheta =
sqrt(1. - cosTheta * cosTheta);
81 double pX = pAbs * sinTheta *
cos(phi);
82 double pY = pAbs * sinTheta *
sin(phi);
83 double pZ = pAbs * cosTheta;
85 (
fMasterGen->event).
append(
fPartIDs[0], 1, 1, 0, 0, 0, 0, 0, pX, pY, pZ,
e1, m1);
86 (
fMasterGen->event).
append(
fPartIDs[1], 1, 1, 0, 0, 0, 0, 0, -pX, -pY, -pZ, e2,
m2);
88 (
fMasterGen->event).
append(
fPartIDs[0], 1, 1, 0, 0, 0, 0, 0, 0.0, 0.0, 0.0, m0, m0);
98 ee =
sqrt(m0 * m0 + pp * pp);
103 the = 2. * atan(
exp(-
eta));
107 double betaZ = pp / ee *
std::cos(the);
116 event() = std::make_unique<HepMC::GenEvent>();
T getParameter(std::string const &) const
const char * classname() const override
Sin< T >::type sin(const T &t)
bool generatePartonsAndHadronize() override
Py8MassGun(edm::ParameterSet const &)
Cos< T >::type cos(const T &t)
#define DEFINE_FWK_MODULE(type)
std::unique_ptr< HepMC::GenEvent > & event()
std::vector< int > fPartIDs
edm::GeneratorFilter< gen::Py8MassGun, gen::ExternalDecayDriver > Pythia8MassGun
P8RndmEngine & randomEngine()
HepMC::Pythia8ToHepMC toHepMC
std::unique_ptr< Pythia8::Pythia > fMasterGen