5 name_ =
"HLTTauDQML1Plotter";
24 edm::LogInfo(
"HLTTauDQML1Plotter::HLTTauDQML1Plotter") << e.
what() << std::endl;
63 l1tauEtRes_ =
store_->
book1D(
"L1TauEtResol",
"L1 #tau E_{T} resolution;[L1 #tau E_{T}-Ref #tau E_{T}]/Ref #tau E_{T};entries",40,-2,2);
115 LVColl refTaus, refElectrons, refMuons;
118 std::map<int,LVColl>::const_iterator iref;
121 iref = refC.find(15);
122 if ( iref != refC.end() ) refTaus = iref->second;
125 iref = refC.find(11);
126 if ( iref != refC.end() ) refElectrons = iref->second;
129 iref = refC.find(13);
130 if ( iref != refC.end() ) refMuons = iref->second;
132 for ( LVColl::const_iterator iter = refTaus.begin(); iter != refTaus.end(); ++iter ) {
166 if ( taus->size() > 0 ) {
171 for ( l1extra::L1JetParticleCollection::const_iterator
i = taus->begin();
i != taus->end(); ++
i ) {
172 l1taus.push_back(
i->p4());
177 pathTaus.push_back(
i->p4());
183 if ( jets->size() > 0 ) {
184 for( l1extra::L1JetParticleCollection::const_iterator
i = jets->begin();
i != jets->end(); ++
i ) {
185 l1jets.push_back(
i->p4());
190 pathTaus.push_back(
i->p4());
195 if ( gotL1Electrons ) {
196 if( electrons->size() > 0 ) {
197 for ( l1extra::L1EmParticleCollection::const_iterator
i = electrons->begin();
i != electrons->end(); ++
i ) {
198 l1electrons.push_back(
i->p4());
202 pathElectrons.push_back(
i->p4());
207 if ( muons->size() > 0 ) {
208 for ( l1extra::L1MuonParticleCollection::const_iterator
i = muons->begin();
i != muons->end(); ++
i ) {
209 l1muons.push_back(
i->p4());
213 pathMuons.push_back(
i->p4());
220 for ( LVColl::const_iterator
i = refTaus.begin();
i != refTaus.end(); ++
i ) {
230 pathTaus.push_back(m.second);
234 for ( LVColl::const_iterator
i = refTaus.begin();
i != refTaus.end(); ++
i ) {
246 for ( LVColl::const_iterator
i = refElectrons.begin();
i != refElectrons.end(); ++
i ) {
252 pathElectrons.push_back(m.second);
256 for ( LVColl::const_iterator
i = refMuons.begin();
i != refMuons.end(); ++
i ) {
262 pathMuons.push_back(m.second);
269 if(pathTaus.size() > 1)
std::sort(pathTaus.begin(),pathTaus.end(),
ptSort);
270 if(pathElectrons.size() > 1)
std::sort(pathElectrons.begin(),pathElectrons.end(),
ptSort);
271 if(pathMuons.size() > 1)
std::sort(pathMuons.begin(),pathMuons.end(),
ptSort);
273 if ( pathTaus.size() > 0 ) {
277 if ( pathTaus.size() > 1 ) {
281 if ( pathTaus.size() >= 2 ) {
284 if ( pathTaus.size() >= 1 && pathElectrons.size() >= 1 ) {
287 if ( pathTaus.size() >= 1 && pathMuons.size() >= 1 ) {
virtual char const * what() const
T getParameter(std::string const &) const
MonitorElement * l1doubleTauPath_
T getUntrackedParameter(std::string const &, T const &) const
MonitorElement * l1muonTauPath_
MonitorElement * l1jetEta_
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
HLTTauDQML1Plotter(const edm::ParameterSet &, int, int, int, double, bool, double, std::string)
MonitorElement * l1jetEtEffNum_
edm::InputTag l1ExtraMuons_
MonitorElement * l1jetPhiEffDenom_
MonitorElement * l1jetEtaEffNum_
MonitorElement * l1muonEta_
MonitorElement * l1tauEt_
MonitorElement * secondTauEt_
MonitorElement * l1tauEtEffDenom_
MonitorElement * l1jetPhiEffNum_
MonitorElement * l1electronTauPath_
MonitorElement * l1muonPhi_
MonitorElement * l1tauEtaEffNum_
void removeContents(void)
erase all monitoring elements in current directory (not including subfolders);
MonitorElement * firstTauEt_
void analyze(const edm::Event &, const edm::EventSetup &, const std::map< int, LVColl > &)
MonitorElement * l1electronPhi_
MonitorElement * l1jetEtEffDenom_
MonitorElement * l1tauEtEffNum_
std::string triggerTagAlias_
MonitorElement * l1tauPhi_
edm::InputTag l1ExtraTaus_
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
MonitorElement * l1tauEta_
MonitorElement * l1muonEt_
MonitorElement * l1tauPhiEffDenom_
TH1F * getTH1F(void) const
edm::InputTag l1ExtraJets_
MonitorElement * l1electronEt_
MonitorElement * l1tauEtaEffDenom_
MonitorElement * l1tauEtRes_
MonitorElement * l1jetPhi_
MonitorElement * l1jetEt_
MonitorElement * l1electronEta_
MonitorElement * l1jetEtaEffDenom_
std::pair< bool, LV > match(const LV &, const LVColl &, double)
edm::InputTag l1ExtraElectrons_
MonitorElement * book2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
void setCurrentFolder(const std::string &fullpath)
MonitorElement * l1tauPhiEffNum_
std::string dqmBaseFolder_
MonitorElement * inputEvents_