50 double phi,
eta, the, ee,
pp;
64 pp =
sqrt(ee * ee - mass * mass);
66 double px = pp *
sin(the) *
cos(phi);
67 double py = pp *
sin(the) *
sin(phi);
68 double pz = pp *
cos(the);
70 if (!((
fMasterGen->particleData).isParticle(particleID))) {
71 particleID = std::fabs(particleID);
87 totM =
sqrt(totE * totE - (totPx * totPx + totPy * totPy + totPz * totPz));
92 ee =
sqrt(totM * totM + pp * pp);
98 the = 2. * atan(
exp(-eta));
102 double betaZ = pp / ee *
std::cos(the);
111 event() = std::make_unique<HepMC::GenEvent>();
static std::vector< std::string > checklist log
const char * classname() const override
#define DEFINE_FWK_MODULE(type)
boost::dynamic_bitset append(const boost::dynamic_bitset<> &bs1, const boost::dynamic_bitset<> &bs2)
this method takes two bitsets bs1 and bs2 and returns result of bs2 appended to the end of bs1 ...
Sin< T >::type sin(const T &t)
Exp< T >::type exp(const T &t)
Py8JetGun(edm::ParameterSet const &)
Cos< T >::type cos(const T &t)
std::unique_ptr< HepMC::GenEvent > & event()
std::vector< int > fPartIDs
P8RndmEngine & randomEngine()
edm::GeneratorFilter< gen::Py8JetGun, gen::ExternalDecayDriver > Pythia8JetGun
T getParameter(std::string const &) const
HepMC::Pythia8ToHepMC toHepMC
std::unique_ptr< Pythia8::Pythia > fMasterGen
tuple size
Write out results.
bool generatePartonsAndHadronize() override