13 wmanager_(iPSet,consumesCollector()),
14 generatedCollection_(iPSet.getParameter<edm::
InputTag>(
"hepmcCollection")),
15 searchForLHE_(iPSet.getParameter<bool>(
"searchForLHE"))
60 const std::vector<lhef::HEPEUP::FiveVector> pup_ = hepeup_.
PUP;
62 double pz1=(pup_[0])[3];
63 double pz2=(pup_[1])[3];
64 bjorken+=(pz1/(pz1+pz2));
73 const HepMC::PdfInfo *pdf = evt->GetEvent()->pdf_info();
75 bjorken = ((pdf->x1())/((pdf->x1())+(pdf->x2())));
88 associationMap::iterator itr;
89 associationMap::iterator lastElement;
95 if (itr == mMap.end())
99 lastElement = mMap.upper_bound(key);
102 for ( ; itr != lastElement; ++itr)
103 theObjects.push_back(itr);
110 theObjects.reserve(10);
113 double theKey = (*it).first;
117 if (theObjects.size() > 1) {
118 edm::LogWarning(
"DuplicatedEventFound") <<
"Duplicated events found with xBjorken = " << std::fixed << std::setw(16) << std::setprecision(14) << theKey;
119 for (
unsigned int i = 0;
i < theObjects.size();
i++) {
T getParameter(std::string const &) const
edm::EDGetTokenT< LHEEventProduct > lheEventProductToken_
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
bool getByToken(EDGetToken token, Handle< PROD > &result) const
edm::InputTag generatedCollection_
edm::EDGetTokenT< edm::HepMCProduct > generatedCollectionToken_
std::vector< associationMap::iterator > itemList
void analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup)
associationMap xBjorkenHistory
U second(std::pair< T, U > const &p)
std::vector< FiveVector > PUP
std::multimap< double, edm::EventID > associationMap
MonitorElement * xBjorkenME
edm::InputTag lheEventProduct_
virtual ~DuplicationChecker()
DuplicationChecker(const edm::ParameterSet &)
double weight(const edm::Event &)
void setCurrentFolder(const std::string &fullpath)
void findValuesAssociatedWithKey(associationMap &mMap, double &key, itemList &theObjects)