Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:26:39

0001 // -*- C++ -*-
0002 //
0003 // Package:    METAlgorithms
0004 // Class:      METSignificance
0005 //
0006 /**\class METSignificance METSignificance.cc RecoMET/METAlgorithms/src/METSignificance.cc
0007 Description: [one line class summary]
0008 Implementation:
0009 [Notes on implementation]
0010 */
0011 //
0012 // Original Author:  Nathan Mirman (Cornell University)
0013 //         Created:  Thu May 30 16:39:52 CDT 2013
0014 //
0015 //
0016 #ifndef METAlgorithms_METSignificance_h
0017 #define METAlgorithms_METSignificance_h
0018 //____________________________________________________________________________||
0019 #include "JetMETCorrections/Modules/interface/JetResolution.h"
0020 
0021 #include "DataFormats/JetReco/interface/Jet.h"
0022 #include "DataFormats/METReco/interface/MET.h"
0023 #include "DataFormats/Candidate/interface/Candidate.h"
0024 #include "DataFormats/Math/interface/deltaR.h"
0025 
0026 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0027 
0028 #include "TF1.h"
0029 
0030 //____________________________________________________________________________||
0031 namespace metsig {
0032 
0033   class METSignificance {
0034   public:
0035     METSignificance(const edm::ParameterSet& iConfig);
0036     ~METSignificance();
0037 
0038     reco::METCovMatrix getCovariance(const edm::View<reco::Jet>& jets,
0039                                      const std::vector<edm::Handle<reco::CandidateView> >& leptons,
0040                                      const edm::Handle<edm::View<reco::Candidate> >& pfCandidates,
0041                                      double rho,
0042                                      JME::JetResolution& resPtObj,
0043                                      JME::JetResolution& resPhiObj,
0044                                      JME::JetResolutionScaleFactor& resSFObj,
0045                                      bool isRealData,
0046                                      double& sumPtUnclustered,
0047                                      edm::ValueMap<float> const* weights = nullptr);
0048 
0049     static double getSignificance(const reco::METCovMatrix& cov, const reco::MET& met);
0050 
0051   private:
0052     bool cleanJet(const reco::Jet& jet, const std::vector<edm::Handle<reco::CandidateView> >& leptons);
0053 
0054     double jetThreshold_;
0055     double dR2match_;
0056     std::vector<double> jetEtas_;
0057     std::vector<double> jetParams_;
0058     std::vector<double> pjetParams_;
0059   };
0060 
0061 }  // namespace metsig
0062 
0063 //____________________________________________________________________________||
0064 #endif  // METAlgorithms_METSignificance_h