File indexing completed on 2024-04-06 12:26:39
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
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 }
0062
0063
0064 #endif