36 virtual void endJob()
override;
53 selectMuon_( pset.getParameter<
InputTag>(
"selectMuon" ) ),
54 zMuMu_( pset.getParameter<
InputTag>(
"ZMuMu" ) ),
55 pathName_( pset.getParameter<
string>(
"pathName" ) ),
56 nbinsEta_( pset.getParameter<int>(
"EtaBins" ) ),
57 minEta_( pset.getParameter<double>(
"minEta" ) ),
58 maxEta_( pset.getParameter<double>(
"maxEta" ) ),
59 nbinsPt_( pset.getParameter<int>(
"PtBins" ) ),
60 minPt_( pset.getParameter<double>(
"minPt" ) ),
61 maxPt_( pset.getParameter<double>(
"maxPt" ) ),
62 nbinsEtaPt_( pset.getParameter<int>(
"EtaPt80Bins" ) ){
80 event.getByLabel(
zMuMu_, zMuMu);
81 int zmumuSize = zMuMu->size();
83 for(
int i = 0;
i < zmumuSize ; ++
i){
84 bool singleTrigFlag0 =
false;
85 bool singleTrigFlag1 =
false;
96 double EtaPatMu0 = mu0.
eta();
97 double EtaPatMu1 = mu1.
eta();
98 double PtPatMu0 = mu0.
pt();
99 double PtPatMu1 = mu1.
pt();
104 int dimTrig0 = mu0HLTMatches.size();
105 int dimTrig1 = mu1HLTMatches.size();
107 for(
int j = 0;
j < dimTrig0 ; ++
j){
108 singleTrigFlag0 =
true;
111 double PtTrig = mu0HLTMatches[
j].pt();
112 double PtDif = PtTrig-PtPatMu0;
124 for(
int j = 0;
j < dimTrig1 ; ++
j){
125 singleTrigFlag1 =
true;
128 double PtTrig = mu0HLTMatches[
j].pt();
129 double PtDif = PtTrig-PtPatMu1;
144 if(!singleTrigFlag0 && !singleTrigFlag1)
NoTrigger_++;
155 cout<<
"eps^2 = " << DoubleTrig << endl;
156 cout<<
"2eps(1 - eps) = " << OneTrig << endl;
virtual void endJob() override
virtual const Candidate * daughter(size_type i) const =0
return daughter at a given position, i = 0, ... numberOfDaughters() - 1 (read only mode) ...
virtual void analyze(const edm::Event &event, const edm::EventSetup &setup) override
TH1D * h_numberMuon_ptStudy_
vector< double > vectorEta
#define DEFINE_FWK_MODULE(type)
T * make(const Args &...args) const
make new ROOT object
std::vector< TriggerObjectStandAlone > TriggerObjectStandAloneCollection
Collection of TriggerObjectStandAlone.
testAnalyzer(const edm::ParameterSet &pset)
const TriggerObjectStandAloneCollection triggerObjectMatchesByPath(const std::string &namePath, const bool pathLastFilterAccepted=false, const bool pathL3FilterAccepted=true) const
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger but the state exists so we define the behavior If all triggers are the negative crieriion will lead to accepting the event(this again matches the behavior of"!*"before the partial wildcard feature was incorporated).The per-event"cost"of each negative criterion with multiple relevant triggers is about the same as!*was in the past
virtual float eta() const GCC11_FINAL
momentum pseudorapidity
TH1D * h_pt_distribution_
TH1D * h_numberTrigMuon_ptStudy_
virtual float pt() const GCC11_FINAL
transverse momentum
Analysis-level muon class.
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")
tuple zMuMu
zMuMu vector of PSet is common to all categories except zMuTrk category
vector< double > vectorPt
virtual const CandidateBaseRef & masterClone() const =0