Get the analysis.
226 bool passed_HLT=
false;
232 for (
unsigned int ti=0; (ti<trigNames.
size()) && !passed_HLT; ++ti) {
234 if (pos==0) passed_HLT = HLTresults->accept(ti);
245 if (!photonCollection.
isValid())
return;
252 for (
unsigned int ti=0; ti<trigNames.
size(); ++ti) {
255 passed_HLT = HLTresults->accept(ti);
262 for (PhotonCollection::const_iterator recoPhoton = photonCollection->begin(); recoPhoton!=photonCollection->end(); recoPhoton++){
296 for (
unsigned int i=0; i<vertexCollection.size(); ++
i) {
297 if (vertexCollection[i].isValid()) nvvertex++;
299 if (nvvertex==0)
return;
322 float photon_et = -9.0;
323 float photon_eta = -9.0;
324 float photon_phi = -9.0;
325 bool photon_passPhotonID =
false;
326 bool found_lead_pho =
false;
327 int photon_count_bar = 0;
328 int photon_count_end = 0;
331 auto pho_maxet = std::max_element(photonCollection->begin(),
332 photonCollection->end(),
335 return a.et() <
b.et();
337 if( pho_maxet != photonCollection->end() && pho_maxet->et() >=
theMinPhotonEt_ ) {
361 bool pho_current_passPhotonID =
false;
362 bool pho_current_isEB = pho_maxet->isEB();
363 bool pho_current_isEE = pho_maxet->isEE();
365 if ( pho_current_isEB && (pho_maxet->sigmaIetaIeta() < 0.01 || pho_maxet->hadronicOverEm() < 0.05) ) {
367 pho_current_passPhotonID =
true;
369 }
else if ( pho_current_isEE && (pho_maxet->hadronicOverEm() < 0.05) ) {
371 pho_current_passPhotonID =
true;
375 if (!found_lead_pho) {
376 found_lead_pho =
true;
377 photon_passPhotonID = pho_current_passPhotonID;
378 photon_et = pho_maxet->et();
379 photon_eta = pho_maxet->eta();
380 photon_phi = pho_maxet->phi();
395 if (!jetCollection.
isValid())
return;
398 float jet_eta = -8.0;
399 float jet_phi = -8.0;
401 float jet2_pt = -9.0;
402 float jet2_eta = -9.0;
403 float jet2_phi = -9.0;
405 for (
unsigned int i_jet = 0; i_jet < jetCollection->size(); i_jet++) {
406 const Jet*
jet = & jetCollection->at(i_jet);
408 float jet_current_pt = jet->
pt();
411 if (
deltaR(jet->
eta(), jet->
phi(), photon_eta, photon_phi) < 0.5 )
continue;
416 if (jet_current_pt > jet_pt) {
420 jet_pt = jet_current_pt;
421 jet_eta = jet->
eta();
422 jet_phi = jet->
phi();
423 }
else if (jet_current_pt > jet2_pt) {
424 jet2_pt = jet_current_pt;
425 jet2_eta = jet->
eta();
426 jet2_phi = jet->
phi();
436 if ( jet_pt > 0.0 ) {
445 if ( fabs(photon_eta)<1.45 && photon_passPhotonID ) {
446 if (fabs(jet_eta)<1.45){
447 if (photon_eta*jet_eta>0) {
452 }
else if (jet_eta>1.55 && jet_eta<2.5) {
453 if (photon_eta*jet_eta>0) {
469 if ( jet2_pt > 0.0 ) {
edm::EDGetTokenT< edm::View< reco::Jet > > theJetCollectionToken_
virtual edm::TriggerNames const & triggerNames(edm::TriggerResults const &triggerResults) const
MonitorElement * h_photon_et
MonitorElement * h_photon_eta
MonitorElement * h_photon_count_bar
edm::EDGetTokenT< edm::TriggerResults > trigTagToken_
MonitorElement * h_photon_et_jetco
std::vector< std::string > thePlotTheseTriggersToo_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
edm::EDGetTokenT< reco::VertexCollection > theVertexCollectionToken_
MonitorElement * h_deltaR_jet_jet2
Base class for all types of Jets.
MonitorElement * h_deltaR_photon_jet2
MonitorElement * h_photon_et_jetfs
std::vector< Vertex > VertexCollection
collection of Vertex objects
MonitorElement * h_deltaEt_photon_jet
Strings::size_type size() const
MonitorElement * h_jet_count
MonitorElement * h_jet_eta
MonitorElement * h_photon_et_jetfo
MonitorElement * h_jet2_ptOverPhotonEt
virtual float phi() const GCC11_FINAL
momentum azimuthal angle
MonitorElement * h_photon_et_jetcs
MonitorElement * h_jet2_pt
MonitorElement * h_photon_et_beforeCuts
MonitorElement * h_jet_pt
Abs< T >::type abs(const T &t)
edm::EDGetTokenT< EcalRecHitCollection > theBarrelRecHitToken_
Container::value_type value_type
bool theRequirePhotonFound_
virtual float eta() const GCC11_FINAL
momentum pseudorapidity
double deltaR(double eta1, double eta2, double phi1, double phi2)
MonitorElement * h_photon_count_end
static const char *const trigNames[]
std::string theTriggerPathToPass_
MonitorElement * h_jet2_eta
MonitorElement * h_deltaPhi_photon_jet2
std::string const & triggerName(unsigned int index) const
T const * product() const
MonitorElement * h_triggers_passed
edm::EDGetTokenT< reco::PhotonCollection > thePhotonCollectionToken_
MonitorElement * h_deltaPhi_jet_jet2
MonitorElement * h_deltaPhi_photon_jet
virtual float pt() const GCC11_FINAL
transverse momentum
edm::EDGetTokenT< EcalRecHitCollection > theEndcapRecHitToken_