CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
METAnalyzer Class Reference

#include <METAnalyzer.h>

Inheritance diagram for METAnalyzer:
DQMOneEDAnalyzer<> edm::one::EDProducer< edm::EndRunProducer, edm::one::WatchRuns, edm::Accumulator, Args... > edm::one::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 Get the analysis. More...
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 Inizialize parameters for histo binning. More...
 
void dqmBeginRun (const edm::Run &, const edm::EventSetup &) override
 Initialize run-based parameters. More...
 
void dqmEndRun (const edm::Run &iRun, const edm::EventSetup &iSetup) override
 Finish up a run. More...
 
void fillMESet (const edm::Event &, std::string, const reco::MET &, const pat::MET *, const reco::PFMET *, const reco::CaloMET *, const reco::Candidate::PolarLorentzVector &, std::map< std::string, MonitorElement *> &, std::vector< bool >, std::vector< bool >)
 
void fillMonitorElement (const edm::Event &, std::string, std::string, const reco::MET &, const pat::MET *, const reco::PFMET *, const reco::CaloMET *, const reco::Candidate::PolarLorentzVector &, std::map< std::string, MonitorElement *> &, bool, bool, std::vector< bool >, std::vector< bool >)
 
void makeRatePlot (std::string, double)
 
 METAnalyzer (const edm::ParameterSet &)
 Constructor. More...
 
 ~METAnalyzer () override
 Destructor. More...
 
- Public Member Functions inherited from DQMOneEDAnalyzer<>
void accumulate (edm::Event const &event, edm::EventSetup const &setup) override
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
 DQMOneEDAnalyzer ()
 
void endRun (edm::Run const &, edm::EventSetup const &) final
 
void endRunProduce (edm::Run &run, edm::EventSetup const &setup) final
 
virtual bool getCanSaveByLumi ()
 
- Public Member Functions inherited from edm::one::EDProducer< edm::EndRunProducer, edm::one::WatchRuns, edm::Accumulator, Args... >
 EDProducer ()=default
 
 EDProducer (const EDProducer &)=delete
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
const EDProduceroperator= (const EDProducer &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
std::vector< bool > const & recordProvenanceList () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
TypeLabelList const & typeLabelList () const
 used by the fwk to register the list of products of this module More...
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESResolverIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESResolverIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const *> *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const *> const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProductResolverIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Member Functions

void bookMESet (std::string, DQMStore::IBooker &, std::map< std::string, MonitorElement *> &)
 
void bookMonitorElement (std::string, DQMStore::IBooker &, std::map< std::string, MonitorElement *> &, bool, bool, bool)
 

Private Attributes

math::XYZPoint beamSpot_
 
bool bypassAllDCSChecks_
 
bool bypassAllPVChecks_
 
edm::EDGetTokenT< reco::CaloJetCollectioncaloJetsToken_
 
edm::EDGetTokenT< reco::CaloMETCollectioncaloMetToken_
 
edm::ParameterSet cleaningParameters_
 
std::vector< int > countsPFCand_
 
edm::InputTag CSCHalo2015ResultTag_
 
edm::EDGetTokenT< bool > CSCHalo2015ResultToken_
 
edm::InputTag CSCHaloResultTag_
 
edm::EDGetTokenT< bool > CSCHaloResultToken_
 
JetMETDQMDCSFilterDCSFilter_
 
std::vector< edm::ParameterSetdiagnosticsParameters_
 
edm::InputTag EcalDeadCellBoundaryTag_
 
edm::EDGetTokenT< bool > EcalDeadCellBoundaryToken_
 
edm::InputTag EcalDeadCellTriggerTag_
 
edm::EDGetTokenT< bool > EcalDeadCellTriggerToken_
 
edm::InputTag eeBadScFilterTag_
 
edm::EDGetTokenT< bool > eeBadScFilterToken_
 
std::vector< double > etaMaxPFCand_
 
std::vector< double > etaMinPFCand_
 
std::vector< int > etaNBinsPFCand_
 
bool fill_met_high_level_histo
 
bool fillCandidateMap_histos
 
HLTConfigProvider FilterhltConfig_
 
std::string FolderName_
 
std::vector< std::string > folderNames_
 
edm::InputTag gtTag_
 
edm::EDGetTokenT< L1GlobalTriggerReadoutRecordgtToken_
 
edm::EDGetTokenT< bool > hbheIsoNoiseFilterResultToken_
 
std::string HBHEIsoNoiseStringMiniAOD
 
edm::InputTag hbheNoiseFilterResultTag_
 
edm::EDGetTokenT< bool > hbheNoiseFilterResultToken_
 
edm::InputTag hbheNoiseIsoFilterResultTag_
 
std::string HBHENoiseStringMiniAOD
 
edm::InputTag hcalNoiseRBXCollectionTag_
 
MonitorElementhCaloEmEtFraction
 
MonitorElementhCaloEmEtFraction020
 
MonitorElementhCaloEmEtInEB
 
MonitorElementhCaloEmEtInEE
 
MonitorElementhCaloEmEtInHF
 
MonitorElementhCaloEmMET
 
MonitorElementhCaloEmMETPhi
 
MonitorElementhCaloEmMEx
 
MonitorElementhCaloEmMEy
 
MonitorElementhCaloEtFractionHadronic
 
MonitorElementhCaloHadEtInHB
 
MonitorElementhCaloHadEtInHE
 
MonitorElementhCaloHadEtInHF
 
MonitorElementhCaloHadEtInHO
 
MonitorElementhCaloHaMET
 
MonitorElementhCaloHaMETPhi
 
MonitorElementhCaloHaMEx
 
MonitorElementhCaloHaMEy
 
MonitorElementhCaloMETPhi020
 
edm::InputTag HcalStripHaloTag_
 
edm::EDGetTokenT< bool > HcalStripHaloToken_
 
double hfCalibFactor_
 
HLTConfigProvider hltConfig_
 
std::string hltPhysDec_
 
MonitorElementhMET
 
MonitorElementhMET_2
 
MonitorElementhMET_CSCTightHalo2015Filter
 
MonitorElementhMET_CSCTightHaloFilter
 
MonitorElementhMET_EcalDeadCellBoundaryFilter
 
MonitorElementhMET_EcalDeadCellTriggerFilter
 
MonitorElementhMET_eeBadScFilter
 
MonitorElementhMET_HBHEIsoNoiseFilter
 
MonitorElementhMET_HBHENoiseFilter
 
MonitorElementhMET_HcalStripHaloFilter
 
MonitorElementhMET_logx
 
MonitorElementhMETPhi
 
MonitorElementhMETRate
 
MonitorElementhMETSig
 
MonitorElementhMEx
 
MonitorElementhMExLS
 
MonitorElementhMEy
 
MonitorElementhMEyLS
 
MonitorElementhSumET
 
MonitorElementhSumET_logx
 
edm::InputTag inputJetIDValueMap
 
bool isCaloMet_
 
bool isMiniAODMet_
 
bool isPFMet_
 
edm::InputTag jetCollectionLabel_
 
edm::EDGetTokenT< reco::JetCorrectorjetCorrectorToken_
 
edm::EDGetTokenT< edm::ValueMap< reco::JetID > > jetID_ValueMapToken_
 
JetIDSelectionFunctor jetIDFunctorLoose
 
edm::ESGetToken< L1GtTriggerMenu, L1GtTriggerMenuRcdl1gtTrigMenuToken_
 
int LSBegin_
 
int LSEnd_
 
MonitorElementlumisecME
 
int m_bitAlgTechTrig_
 
std::string m_l1algoname_
 
std::map< std::string, MonitorElement * > map_dijet_MEs
 
MonitorElementmeChargedHadronEt
 
MonitorElementmeChargedHadronEt_profile
 
MonitorElementmeChargedHadronEtFraction
 
MonitorElementmeChargedHadronEtFraction_BXm1Empty
 
MonitorElementmeChargedHadronEtFraction_BXm1Filled
 
MonitorElementmeChargedHadronEtFraction_profile
 
MonitorElementmeCHF_Barrel
 
MonitorElementmeCHF_Barrel_BXm1Empty
 
MonitorElementmeCHF_Barrel_BXm1Filled
 
MonitorElementmeCHF_EndcapMinus
 
MonitorElementmeCHF_EndcapMinus_BXm1Empty
 
MonitorElementmeCHF_EndcapMinus_BXm1Filled
 
MonitorElementmeCHF_EndcapPlus
 
MonitorElementmeCHF_EndcapPlus_BXm1Empty
 
MonitorElementmeCHF_EndcapPlus_BXm1Filled
 
MonitorElementmeElectronEt
 
MonitorElementmeHFEMEt
 
MonitorElementmeHFEMEt_profile
 
MonitorElementmeHFEMEtFraction
 
MonitorElementmeHFEMEtFraction_profile
 
MonitorElementmeHFEMF_Minus
 
MonitorElementmeHFEMF_Minus_BXm1Empty
 
MonitorElementmeHFEMF_Minus_BXm1Filled
 
MonitorElementmeHFEMF_Plus
 
MonitorElementmeHFEMF_Plus_BXm1Empty
 
MonitorElementmeHFEMF_Plus_BXm1Filled
 
MonitorElementmeHFHadF_Minus
 
MonitorElementmeHFHadF_Minus_BXm1Empty
 
MonitorElementmeHFHadF_Minus_BXm1Filled
 
MonitorElementmeHFHadF_Plus
 
MonitorElementmeHFHadF_Plus_BXm1Empty
 
MonitorElementmeHFHadF_Plus_BXm1Filled
 
MonitorElementmeHFHadronEt
 
MonitorElementmeHFHadronEt_profile
 
MonitorElementmeHFHadronEtFraction
 
MonitorElementmeHFHadronEtFraction_profile
 
MonitorElementmeMET_BXm1Empty
 
MonitorElementmeMET_BXm1Filled
 
MonitorElementmeMET_profile
 
MonitorElementmeMETPhiChargedHadronsBarrel
 
MonitorElementmeMETPhiChargedHadronsBarrel_BXm1Empty
 
MonitorElementmeMETPhiChargedHadronsBarrel_BXm1Filled
 
MonitorElementmeMETPhiChargedHadronsEndcapMinus
 
MonitorElementmeMETPhiChargedHadronsEndcapMinus_BXm1Empty
 
MonitorElementmeMETPhiChargedHadronsEndcapMinus_BXm1Filled
 
MonitorElementmeMETPhiChargedHadronsEndcapPlus
 
MonitorElementmeMETPhiChargedHadronsEndcapPlus_BXm1Empty
 
MonitorElementmeMETPhiChargedHadronsEndcapPlus_BXm1Filled
 
MonitorElementmeMETPhiHFEGammasMinus
 
MonitorElementmeMETPhiHFEGammasMinus_BXm1Empty
 
MonitorElementmeMETPhiHFEGammasMinus_BXm1Filled
 
MonitorElementmeMETPhiHFEGammasPlus
 
MonitorElementmeMETPhiHFEGammasPlus_BXm1Empty
 
MonitorElementmeMETPhiHFEGammasPlus_BXm1Filled
 
MonitorElementmeMETPhiHFHadronsMinus
 
MonitorElementmeMETPhiHFHadronsMinus_BXm1Empty
 
MonitorElementmeMETPhiHFHadronsMinus_BXm1Filled
 
MonitorElementmeMETPhiHFHadronsPlus
 
MonitorElementmeMETPhiHFHadronsPlus_BXm1Empty
 
MonitorElementmeMETPhiHFHadronsPlus_BXm1Filled
 
MonitorElementmeMETPhiNeutralHadronsBarrel
 
MonitorElementmeMETPhiNeutralHadronsBarrel_BXm1Empty
 
MonitorElementmeMETPhiNeutralHadronsBarrel_BXm1Filled
 
MonitorElementmeMETPhiNeutralHadronsEndcapMinus
 
MonitorElementmeMETPhiNeutralHadronsEndcapMinus_BXm1Empty
 
MonitorElementmeMETPhiNeutralHadronsEndcapMinus_BXm1Filled
 
MonitorElementmeMETPhiNeutralHadronsEndcapPlus
 
MonitorElementmeMETPhiNeutralHadronsEndcapPlus_BXm1Empty
 
MonitorElementmeMETPhiNeutralHadronsEndcapPlus_BXm1Filled
 
MonitorElementmeMETPhiPhotonsBarrel
 
MonitorElementmeMETPhiPhotonsBarrel_BXm1Empty
 
MonitorElementmeMETPhiPhotonsBarrel_BXm1Filled
 
MonitorElementmeMETPhiPhotonsEndcapMinus
 
MonitorElementmeMETPhiPhotonsEndcapMinus_BXm1Empty
 
MonitorElementmeMETPhiPhotonsEndcapMinus_BXm1Filled
 
MonitorElementmeMETPhiPhotonsEndcapPlus
 
MonitorElementmeMETPhiPhotonsEndcapPlus_BXm1Empty
 
MonitorElementmeMETPhiPhotonsEndcapPlus_BXm1Filled
 
MonitorElementmeMEx_profile
 
MonitorElementmeMEy_profile
 
MonitorElementmeMuonEt
 
MonitorElementmeNeutralHadronEt
 
MonitorElementmeNeutralHadronEt_profile
 
MonitorElementmeNeutralHadronEtFraction
 
MonitorElementmeNeutralHadronEtFraction_BXm1Empty
 
MonitorElementmeNeutralHadronEtFraction_BXm1Filled
 
MonitorElementmeNeutralHadronEtFraction_profile
 
MonitorElementmeNHF_Barrel
 
MonitorElementmeNHF_Barrel_BXm1Empty
 
MonitorElementmeNHF_Barrel_BXm1Filled
 
MonitorElementmeNHF_EndcapMinus
 
MonitorElementmeNHF_EndcapMinus_BXm1Empty
 
MonitorElementmeNHF_EndcapMinus_BXm1Filled
 
MonitorElementmeNHF_EndcapPlus
 
MonitorElementmeNHF_EndcapPlus_BXm1Empty
 
MonitorElementmeNHF_EndcapPlus_BXm1Filled
 
MonitorElementmePhF_Barrel
 
MonitorElementmePhF_Barrel_BXm1Empty
 
MonitorElementmePhF_Barrel_BXm1Filled
 
MonitorElementmePhF_EndcapMinus
 
MonitorElementmePhF_EndcapMinus_BXm1Empty
 
MonitorElementmePhF_EndcapMinus_BXm1Filled
 
MonitorElementmePhF_EndcapPlus
 
MonitorElementmePhF_EndcapPlus_BXm1Empty
 
MonitorElementmePhF_EndcapPlus_BXm1Filled
 
MonitorElementmePhotonEt
 
MonitorElementmePhotonEt_profile
 
MonitorElementmePhotonEtFraction
 
MonitorElementmePhotonEtFraction_BXm1Empty
 
MonitorElementmePhotonEtFraction_BXm1Filled
 
MonitorElementmePhotonEtFraction_profile
 
MonitorElementmeSumET_BXm1Empty
 
MonitorElementmeSumET_BXm1Filled
 
MonitorElementmeSumET_profile
 
edm::InputTag metCollectionLabel_
 
edm::InputTag METFilterMiniAODLabel2_
 
edm::InputTag METFilterMiniAODLabel_
 
edm::EDGetTokenT< edm::TriggerResultsMETFilterMiniAODToken2_
 
edm::EDGetTokenT< edm::TriggerResultsMETFilterMiniAODToken_
 
std::string MetType_
 
std::vector< double > MExPFCand_
 
std::vector< double > MEyPFCand_
 
MonitorElementmeZJets_u_par
 
MonitorElementmeZJets_u_par_ZPt_0_15
 
MonitorElementmeZJets_u_par_ZPt_150_290
 
MonitorElementmeZJets_u_par_ZPt_15_30
 
MonitorElementmeZJets_u_par_ZPt_290
 
MonitorElementmeZJets_u_par_ZPt_30_55
 
MonitorElementmeZJets_u_par_ZPt_55_75
 
MonitorElementmeZJets_u_par_ZPt_75_150
 
MonitorElementmeZJets_u_perp
 
MonitorElementmeZJets_u_perp_ZPt_0_15
 
MonitorElementmeZJets_u_perp_ZPt_150_290
 
MonitorElementmeZJets_u_perp_ZPt_15_30
 
MonitorElementmeZJets_u_perp_ZPt_290
 
MonitorElementmeZJets_u_perp_ZPt_30_55
 
MonitorElementmeZJets_u_perp_ZPt_55_75
 
MonitorElementmeZJets_u_perp_ZPt_75_150
 
int miniaodfilterdec
 
std::vector< int > miniaodFilterIndex_
 
edm::EDGetTokenT< reco::MuonCollectionMuonsToken_
 
int nbinsPV_
 
double nPVMax_
 
double nPVMin_
 
int numPV_
 
bool onlyCleaned_
 
edm::ParameterSet parameters
 
edm::EDGetTokenT< pat::JetCollectionpatJetsToken_
 
edm::EDGetTokenT< pat::METCollectionpatMetToken_
 
PFJetIDSelectionFunctor pfjetIDFunctorLoose
 
edm::EDGetTokenT< reco::PFJetCollectionpfJetsToken_
 
edm::EDGetTokenT< std::vector< pat::PackedCandidate > > pflowPackedToken_
 
edm::EDGetTokenT< std::vector< reco::PFCandidate > > pflowToken_
 
edm::EDGetTokenT< reco::PFMETCollectionpfMetToken_
 
std::vector< MonitorElement * > profilePFCand_x_
 
std::vector< std::string > profilePFCand_x_name_
 
std::vector< MonitorElement * > profilePFCand_y_
 
std::vector< std::string > profilePFCand_y_name_
 
double ptMinCand_
 
double ptThreshold_
 
bool runcosmics_
 
std::vector< int > triggerFolderDecisions_
 
std::vector< GenericTriggerEventFlag * > triggerFolderEventFlag_
 
std::vector< std::vector< std::string > > triggerFolderExpr_
 
std::vector< std::string > triggerFolderLabels_
 
edm::InputTag triggerResultsLabel_
 
edm::EDGetTokenT< edm::TriggerResultstriggerResultsToken_
 
edm::VParameterSet triggerSelectedSubFolders_
 
std::vector< int > typePFCand_
 
int verbose_
 
edm::InputTag vertexTag_
 
edm::EDGetTokenT< std::vector< reco::Vertex > > vertexToken_
 

Additional Inherited Members

- Public Types inherited from DQMOneEDAnalyzer<>
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::one::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
template<typename T >
using BranchAliasSetterT = ProductRegistryHelper::BranchAliasSetterT< T >
 
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > >
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::one::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from edm::ProducerBase
template<Transition Tr = Transition::Event>
auto produces (std::string instanceName) noexcept
 declare what type of product will make and with which optional label More...
 
template<Transition B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<BranchType B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces ()
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces ()
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces ()
 
template<Transition Tr = Transition::Event>
auto produces () noexcept
 
ProducesCollector producesCollector ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< Bconsumes (edm::InputTag tag) noexcept
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes ()
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag)
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
void resetItemsToGetFrom (BranchType iType)
 
- Protected Attributes inherited from DQMOneEDAnalyzer<>
edm::EDPutTokenT< DQMTokenrunToken_
 

Detailed Description

DQM MET analysis monitoring

Author
F. Chlebana - Fermilab K. Hatakeyama - Rockefeller University

Jan. '14: modified by

M. Artur Weber R. Schoefbeck V. Sordini

Definition at line 87 of file METAnalyzer.h.

Constructor & Destructor Documentation

◆ METAnalyzer()

METAnalyzer::METAnalyzer ( const edm::ParameterSet pSet)

Constructor.

Definition at line 42 of file METAnalyzer.cc.

References edm::ParameterSet::getParameter(), ProducerED_cfi::InputTag, JetIDSelectionFunctor::LOOSE, PFJetIDSelectionFunctor::LOOSE, JetIDSelectionFunctor::PURE09, AlCaHLTBitMon_QueryRunRegistry::string, and PFJetIDSelectionFunctor::WINTER16.

42  {
43  parameters = pSet;
44 
45  m_l1algoname_ = pSet.getParameter<std::string>("l1algoname");
46  m_bitAlgTechTrig_ = -1;
47 
48  miniaodfilterdec = -1;
49 
50  LSBegin_ = pSet.getParameter<int>("LSBegin");
51  LSEnd_ = pSet.getParameter<int>("LSEnd");
52  // Smallest track pt
53  ptMinCand_ = pSet.getParameter<double>("ptMinCand");
54 
56 
58  triggerResultsToken_ = consumes<edm::TriggerResults>(edm::InputTag(triggerResultsLabel_));
59 
60  isCaloMet_ = (std::string("calo") == MetType_);
61  //isTCMet_ = (std::string("tc") ==MetType_);
62  isPFMet_ = (std::string("pf") == MetType_);
63  isMiniAODMet_ = (std::string("miniaod") == MetType_);
64  if (!isMiniAODMet_) {
65  jetCorrectorToken_ = consumes<reco::JetCorrector>(pSet.getParameter<edm::InputTag>("JetCorrections"));
66  }
67 
68  // MET information
70 
71  if (/*isTCMet_ || */ isCaloMet_) {
72  inputJetIDValueMap = pSet.getParameter<edm::InputTag>("InputJetIDValueMap");
73  jetID_ValueMapToken_ = consumes<edm::ValueMap<reco::JetID> >(inputJetIDValueMap);
75  }
76 
77  if (isPFMet_) {
78  pflowToken_ = consumes<std::vector<reco::PFCandidate> >(pSet.getParameter<edm::InputTag>("srcPFlow"));
80  }
81  if (isMiniAODMet_) {
82  pflowPackedToken_ = consumes<std::vector<pat::PackedCandidate> >(pSet.getParameter<edm::InputTag>("srcPFlow"));
84  }
85  MuonsToken_ = consumes<reco::MuonCollection>(pSet.getParameter<edm::InputTag>("muonsrc"));
86 
87  ptThreshold_ = parameters.getParameter<double>("ptThreshold");
88 
89  if (isPFMet_) {
90  pfMetToken_ = consumes<reco::PFMETCollection>(edm::InputTag(metCollectionLabel_));
91  }
92  if (isCaloMet_) {
93  caloMetToken_ = consumes<reco::CaloMETCollection>(edm::InputTag(metCollectionLabel_));
94  }
95  if (isMiniAODMet_) {
96  patMetToken_ = consumes<pat::METCollection>(edm::InputTag(metCollectionLabel_));
97  }
98  //if(isTCMet_){
99  // tcMetToken_= consumes<reco::METCollection>(edm::InputTag(metCollectionLabel_));
100  //}
101 
102  fill_met_high_level_histo = parameters.getParameter<bool>("fillMetHighLevel");
103  fillCandidateMap_histos = parameters.getParameter<bool>("fillCandidateMaps");
104 
105  //jet cleanup parameters
106  cleaningParameters_ = pSet.getParameter<ParameterSet>("CleaningParameters");
107 
108  diagnosticsParameters_ = pSet.getParameter<std::vector<edm::ParameterSet> >("METDiagonisticsParameters");
109 
111  //DCS
113 
114  //Vertex requirements
115  bypassAllPVChecks_ = cleaningParameters_.getParameter<bool>("bypassAllPVChecks");
116  bypassAllDCSChecks_ = cleaningParameters_.getParameter<bool>("bypassAllDCSChecks");
117  runcosmics_ = parameters.getUntrackedParameter<bool>("runcosmics");
118  onlyCleaned_ = parameters.getUntrackedParameter<bool>("onlyCleaned");
120  vertexToken_ = consumes<std::vector<reco::Vertex> >(edm::InputTag(vertexTag_));
121 
122  //Trigger parameters
124  gtToken_ = consumes<L1GlobalTriggerReadoutRecord>(edm::InputTag(gtTag_));
125 
126  // Other data collections
127  jetCollectionLabel_ = parameters.getParameter<edm::InputTag>("JetCollectionLabel");
128  if (isCaloMet_)
129  caloJetsToken_ = consumes<reco::CaloJetCollection>(jetCollectionLabel_);
130  //if (isTCMet_) jptJetsToken_ = consumes<reco::JPTJetCollection>(jetCollectionLabel_);
131  if (isPFMet_)
132  pfJetsToken_ = consumes<reco::PFJetCollection>(jetCollectionLabel_);
133  if (isMiniAODMet_)
134  patJetsToken_ = consumes<pat::JetCollection>(jetCollectionLabel_);
135 
136  HBHENoiseStringMiniAOD = parameters.getParameter<std::string>("HBHENoiseLabelMiniAOD");
137  HBHEIsoNoiseStringMiniAOD = parameters.getParameter<std::string>("HBHEIsoNoiseLabelMiniAOD");
138 
139  hbheNoiseFilterResultTag_ = parameters.getParameter<edm::InputTag>("HBHENoiseFilterResultLabel");
141  hbheNoiseIsoFilterResultTag_ = parameters.getParameter<edm::InputTag>("HBHENoiseIsoFilterResultLabel");
143  CSCHaloResultTag_ = parameters.getParameter<edm::InputTag>("CSCHaloResultLabel");
144  CSCHaloResultToken_ = consumes<bool>(CSCHaloResultTag_);
145  CSCHalo2015ResultTag_ = parameters.getParameter<edm::InputTag>("CSCHalo2015ResultLabel");
147  EcalDeadCellTriggerTag_ = parameters.getParameter<edm::InputTag>("EcalDeadCellTriggerPrimitiveFilterLabel");
149  EcalDeadCellBoundaryTag_ = parameters.getParameter<edm::InputTag>("EcalDeadCellBoundaryEnergyFilterLabel");
151  eeBadScFilterTag_ = parameters.getParameter<edm::InputTag>("eeBadScFilterLabel");
152  eeBadScFilterToken_ = consumes<bool>(eeBadScFilterTag_);
153  HcalStripHaloTag_ = parameters.getParameter<edm::InputTag>("HcalStripHaloFilterLabel");
154  HcalStripHaloToken_ = consumes<bool>(HcalStripHaloTag_);
155 
156  if (isMiniAODMet_) {
157  METFilterMiniAODLabel_ = parameters.getParameter<edm::InputTag>("FilterResultsLabelMiniAOD");
158  METFilterMiniAODToken_ = consumes<edm::TriggerResults>(METFilterMiniAODLabel_);
159 
160  METFilterMiniAODLabel2_ = parameters.getParameter<edm::InputTag>("FilterResultsLabelMiniAOD2");
161  METFilterMiniAODToken2_ = consumes<edm::TriggerResults>(METFilterMiniAODLabel2_);
162  }
163 
164  //
165  nbinsPV_ = parameters.getParameter<int>("pVBin");
166  nPVMin_ = parameters.getParameter<double>("pVMin");
167  nPVMax_ = parameters.getParameter<double>("pVMax");
168 
170  for (edm::VParameterSet::const_iterator it = triggerSelectedSubFolders_.begin();
171  it != triggerSelectedSubFolders_.end();
172  it++) {
174  triggerFolderExpr_.push_back(it->getParameter<std::vector<std::string> >("hltPaths"));
175  triggerFolderLabels_.push_back(it->getParameter<std::string>("label"));
176  }
177 
178  cleaningParameters_ = parameters.getParameter<ParameterSet>("CleaningParameters");
179 
180  verbose_ = parameters.getParameter<int>("verbose");
181 
183 
184  l1gtTrigMenuToken_ = esConsumes<edm::Transition::BeginRun>();
185 }
edm::EDGetTokenT< reco::CaloMETCollection > caloMetToken_
Definition: METAnalyzer.h:197
edm::InputTag CSCHaloResultTag_
Definition: METAnalyzer.h:182
edm::InputTag gtTag_
Definition: METAnalyzer.h:161
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
edm::EDGetTokenT< reco::CaloJetCollection > caloJetsToken_
Definition: METAnalyzer.h:165
bool bypassAllDCSChecks_
Definition: METAnalyzer.h:266
edm::EDGetTokenT< bool > CSCHalo2015ResultToken_
Definition: METAnalyzer.h:185
edm::EDGetTokenT< edm::TriggerResults > METFilterMiniAODToken2_
Definition: METAnalyzer.h:173
std::vector< GenericTriggerEventFlag * > triggerFolderEventFlag_
Definition: METAnalyzer.h:223
std::vector< edm::ParameterSet > diagnosticsParameters_
Definition: METAnalyzer.h:254
double ptThreshold_
Definition: METAnalyzer.h:210
bool runcosmics_
Definition: METAnalyzer.h:267
bool isCaloMet_
Definition: METAnalyzer.h:594
std::vector< ParameterSet > VParameterSet
Definition: ParameterSet.h:34
std::string MetType_
Definition: METAnalyzer.h:154
bool onlyCleaned_
Definition: METAnalyzer.h:268
edm::InputTag hbheNoiseFilterResultTag_
Definition: METAnalyzer.h:178
edm::EDGetTokenT< bool > EcalDeadCellTriggerToken_
Definition: METAnalyzer.h:187
edm::InputTag hbheNoiseIsoFilterResultTag_
Definition: METAnalyzer.h:180
edm::EDGetTokenT< reco::PFMETCollection > pfMetToken_
Definition: METAnalyzer.h:196
edm::ESGetToken< L1GtTriggerMenu, L1GtTriggerMenuRcd > l1gtTrigMenuToken_
Definition: METAnalyzer.h:202
bool fillCandidateMap_histos
Definition: METAnalyzer.h:599
std::vector< std::string > triggerFolderLabels_
Definition: METAnalyzer.h:225
double nPVMin_
Definition: METAnalyzer.h:259
edm::EDGetTokenT< bool > eeBadScFilterToken_
Definition: METAnalyzer.h:189
edm::InputTag EcalDeadCellTriggerTag_
Definition: METAnalyzer.h:186
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
std::string FolderName_
Definition: METAnalyzer.h:155
std::string HBHENoiseStringMiniAOD
Definition: METAnalyzer.h:217
edm::EDGetTokenT< reco::JetCorrector > jetCorrectorToken_
Definition: METAnalyzer.h:220
std::string HBHEIsoNoiseStringMiniAOD
Definition: METAnalyzer.h:218
T getUntrackedParameter(std::string const &, T const &) const
std::vector< std::vector< std::string > > triggerFolderExpr_
Definition: METAnalyzer.h:224
edm::InputTag vertexTag_
Definition: METAnalyzer.h:160
edm::EDGetTokenT< std::vector< reco::Vertex > > vertexToken_
Definition: METAnalyzer.h:163
bool fill_met_high_level_histo
Definition: METAnalyzer.h:598
edm::EDGetTokenT< bool > hbheIsoNoiseFilterResultToken_
Definition: METAnalyzer.h:181
edm::InputTag metCollectionLabel_
Definition: METAnalyzer.h:157
ConsumesCollector consumesCollector()
Use a ConsumesCollector to gather consumes information from helper functions.
edm::InputTag CSCHalo2015ResultTag_
Definition: METAnalyzer.h:184
edm::ParameterSet cleaningParameters_
Definition: METAnalyzer.h:253
edm::EDGetTokenT< bool > hbheNoiseFilterResultToken_
Definition: METAnalyzer.h:179
edm::InputTag eeBadScFilterTag_
Definition: METAnalyzer.h:188
edm::EDGetTokenT< edm::ValueMap< reco::JetID > > jetID_ValueMapToken_
Definition: METAnalyzer.h:200
edm::InputTag HcalStripHaloTag_
Definition: METAnalyzer.h:192
std::string m_l1algoname_
Definition: METAnalyzer.h:207
edm::EDGetTokenT< edm::TriggerResults > METFilterMiniAODToken_
Definition: METAnalyzer.h:171
PF Jet selector for pat::Jets.
edm::EDGetTokenT< edm::TriggerResults > triggerResultsToken_
Definition: METAnalyzer.h:215
edm::EDGetTokenT< bool > HcalStripHaloToken_
Definition: METAnalyzer.h:193
edm::EDGetTokenT< reco::PFJetCollection > pfJetsToken_
Definition: METAnalyzer.h:166
edm::EDGetTokenT< bool > CSCHaloResultToken_
Definition: METAnalyzer.h:183
edm::EDGetTokenT< bool > EcalDeadCellBoundaryToken_
Definition: METAnalyzer.h:191
JetMETDQMDCSFilter * DCSFilter_
Definition: METAnalyzer.h:293
Jet selector for pat::Jets and for CaloJets.
PFJetIDSelectionFunctor pfjetIDFunctorLoose
Definition: METAnalyzer.h:205
edm::EDGetTokenT< std::vector< reco::PFCandidate > > pflowToken_
Definition: METAnalyzer.h:553
double nPVMax_
Definition: METAnalyzer.h:260
edm::EDGetTokenT< pat::METCollection > patMetToken_
Definition: METAnalyzer.h:195
edm::InputTag triggerResultsLabel_
Definition: METAnalyzer.h:214
edm::ParameterSet parameters
Definition: METAnalyzer.h:150
edm::InputTag EcalDeadCellBoundaryTag_
Definition: METAnalyzer.h:190
edm::EDGetTokenT< reco::MuonCollection > MuonsToken_
Definition: METAnalyzer.h:168
edm::InputTag METFilterMiniAODLabel2_
Definition: METAnalyzer.h:172
double ptMinCand_
Definition: METAnalyzer.h:531
edm::VParameterSet triggerSelectedSubFolders_
Definition: METAnalyzer.h:222
edm::EDGetTokenT< L1GlobalTriggerReadoutRecord > gtToken_
Definition: METAnalyzer.h:164
bool bypassAllPVChecks_
Definition: METAnalyzer.h:265
int miniaodfilterdec
Definition: METAnalyzer.h:176
edm::InputTag inputJetIDValueMap
Definition: METAnalyzer.h:199
edm::InputTag METFilterMiniAODLabel_
Definition: METAnalyzer.h:170
JetIDSelectionFunctor jetIDFunctorLoose
Definition: METAnalyzer.h:204
edm::InputTag jetCollectionLabel_
Definition: METAnalyzer.h:159
edm::EDGetTokenT< pat::JetCollection > patJetsToken_
Definition: METAnalyzer.h:167
bool isMiniAODMet_
Definition: METAnalyzer.h:596
edm::EDGetTokenT< std::vector< pat::PackedCandidate > > pflowPackedToken_
Definition: METAnalyzer.h:554
int m_bitAlgTechTrig_
Definition: METAnalyzer.h:208

◆ ~METAnalyzer()

METAnalyzer::~METAnalyzer ( )
override

Destructor.

Definition at line 188 of file METAnalyzer.cc.

188  {
189  for (std::vector<GenericTriggerEventFlag*>::const_iterator it = triggerFolderEventFlag_.begin();
190  it != triggerFolderEventFlag_.end();
191  it++) {
192  delete *it;
193  }
194  delete DCSFilter_;
195 }
std::vector< GenericTriggerEventFlag * > triggerFolderEventFlag_
Definition: METAnalyzer.h:223
JetMETDQMDCSFilter * DCSFilter_
Definition: METAnalyzer.h:293

Member Function Documentation

◆ analyze()

void METAnalyzer::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
overridevirtual

Get the analysis.

  • if(isTCMet_){

Reimplemented from DQMOneEDAnalyzer<>.

Definition at line 1397 of file METAnalyzer.cc.

References edm::HLTGlobalStatus::accept(), cms::cuda::assert(), isolatedTracks_cfi::caloJets, ALCARECOTkAlJpsiMuMu_cff::charge, reco::JetCorrector::correction(), gather_cfg::cout, fed_dqm_sourceclient-live_cfg::DirName, PVValHelper::dxy, PVValHelper::dz, PVValHelper::eta, ztee::fd, cutBasedMuonId_MuonPOG_V0_cff::globalTrack, mps_fire::i, iEvent, susybsm::HSCParticleType::innerTrack, edm::HandleBase::isValid(), LogDebug, LogTrace, SiStripPI::max, BTaggingMonitor_cfi::met, HLTTauDQMOffline_cfi::Muons, TrackCollections2monitor_cff::numberOfValidPixelHits, hemisphereProducer_cfi::patJets, displacedMuons_cfi::pfIsolationR04, pfJetBenchmark_cfi::pfJets, position, edm::Handle< T >::product(), DiDispStaMuonMonitor_cfi::pt, HLT_2023v12_cff::pt1, HLT_2023v12_cff::pt2, pfClustersFromCombinedCaloHF_cfi::scale, AlCaHLTBitMon_QueryRunRegistry::string, L1GlobalTriggerReadoutRecord::technicalTriggerWord(), edm::triggerResults(), and spclusmultinvestigator_cfi::vertexCollection.

1397  {
1398  // *** Fill lumisection ME
1399  int myLuminosityBlock;
1400  myLuminosityBlock = iEvent.luminosityBlock();
1402  lumisecME = map_dijet_MEs["JetMET/lumisec"];
1403  if (lumisecME && lumisecME->getRootObject())
1404  lumisecME->Fill(myLuminosityBlock);
1405  }
1406 
1407  if (myLuminosityBlock < LSBegin_)
1408  return;
1409  if (myLuminosityBlock > LSEnd_ && LSEnd_ > 0)
1410  return;
1411 
1412  if (verbose_)
1413  std::cout << "METAnalyzer analyze" << std::endl;
1414 
1416 
1417  // ==========================================================
1418  // Trigger information
1419  //
1420  // trigJetMB_=0;
1421  // trigHighPtJet_=0;
1422  // trigLowPtJet_=0;
1423  // trigMinBias_=0;
1424  // trigHighMET_=0;
1425  // // _trig_LowMET=0;
1426  // trigEle_=0;
1427  // trigMuon_=0;
1428  // trigPhysDec_=0;
1429  std::vector<int> triggerFolderDecisions;
1430  triggerFolderDecisions_ = std::vector<int>(triggerFolderEventFlag_.size(), 0);
1431  // **** Get the TriggerResults container
1434 
1435  if (triggerResults.isValid()) {
1437  // Check how many HLT triggers are in triggerResults
1438  int ntrigs = (*triggerResults).size();
1439  if (verbose_)
1440  std::cout << "ntrigs=" << ntrigs << std::endl;
1441  // If index=ntrigs, this HLT trigger doesn't exist in the HLT table for this data.
1442  for (std::vector<GenericTriggerEventFlag*>::const_iterator it = triggerFolderEventFlag_.begin();
1443  it != triggerFolderEventFlag_.end();
1444  it++) {
1445  unsigned int pos = it - triggerFolderEventFlag_.begin();
1446  bool fd = (*it)->accept(iEvent, iSetup);
1448  }
1449  }
1450 
1451  // ==========================================================
1452  // MET information
1453 
1454  // **** Get the MET container
1459 
1460  //if(isTCMet_){
1461  //iEvent.getByToken(tcMetToken_, tcmetcoll);
1462  //if(!tcmetcoll.isValid()) return;
1463  //}
1464  if (isCaloMet_) {
1465  iEvent.getByToken(caloMetToken_, calometcoll);
1466  if (!calometcoll.isValid())
1467  return;
1468  }
1469  if (isPFMet_) {
1470  iEvent.getByToken(pfMetToken_, pfmetcoll);
1471  if (!pfmetcoll.isValid())
1472  return;
1473  }
1474  if (isMiniAODMet_) {
1475  iEvent.getByToken(patMetToken_, patmetcoll);
1476  if (!patmetcoll.isValid())
1477  return;
1478  }
1479 
1480  const MET* met = nullptr;
1481  const pat::MET* patmet = nullptr;
1482  const PFMET* pfmet = nullptr;
1483  const CaloMET* calomet = nullptr;
1484  //if(isTCMet_){
1485  //met=&(tcmetcoll->front());
1486  //}
1487  if (isPFMet_) {
1488  assert(!pfmetcoll->empty());
1489  met = &(pfmetcoll->front());
1490  pfmet = &(pfmetcoll->front());
1491  }
1492  if (isCaloMet_) {
1493  assert(!calometcoll->empty());
1494  met = &(calometcoll->front());
1495  calomet = &(calometcoll->front());
1496  }
1497  if (isMiniAODMet_) {
1498  assert(!patmetcoll->empty());
1499  met = &(patmetcoll->front());
1500  patmet = &(patmetcoll->front());
1501  }
1502 
1503  LogTrace("METAnalyzer") << "[METAnalyzer] Call to the MET analyzer";
1504 
1505  // ==========================================================
1506  // TCMET
1507 
1508  //if (/*isTCMet_ || */(isCaloMet_ && metCollectionLabel_.label() == "corMetGlobalMuons")) {
1509 
1510  //iEvent.getByToken(MuonToken_, muonHandle_);
1511  //iEvent.getByToken(TrackToken_, trackHandle_);
1512  //iEvent.getByToken(ElectronToken_, electronHandle_);
1513  //iEvent.getByToken(BeamspotToken_, beamSpotHandle_);
1514  //iEvent.getByToken(tcMETValueMapToken_,tcMetValueMapHandle_);
1515 
1516  //if(!muonHandle_.isValid()) edm::LogInfo("OutputInfo") << "falied to retrieve muon data require by MET Task";
1517  //if(!trackHandle_.isValid()) edm::LogInfo("OutputInfo") << "falied to retrieve track data require by MET Task";
1518  //if(!electronHandle_.isValid()) edm::LogInfo("OutputInfo") << "falied to retrieve electron data require by MET Task";
1519  //if(!beamSpotHandle_.isValid()) edm::LogInfo("OutputInfo") << "falied to retrieve beam spot data require by MET Task";
1520 
1521  //beamSpot_ = ( beamSpotHandle_.isValid() ) ? beamSpotHandle_->position() : math::XYZPoint(0, 0, 0);
1522  //}
1523 
1524  // ==========================================================
1525  bool bJetID = false;
1526  bool bDiJetID = false;
1527  // Jet ID -------------------------------------------------------
1528  //
1529 
1534 
1535  int collsize = -1;
1536 
1537  if (isCaloMet_) {
1538  iEvent.getByToken(caloJetsToken_, caloJets);
1539  if (!caloJets.isValid()) {
1540  LogDebug("") << "METAnalyzer: Could not find calojet product" << std::endl;
1541  if (verbose_)
1542  std::cout << "METAnalyzer: Could not find calojet product" << std::endl;
1543  }
1544  collsize = caloJets->size();
1545  }
1547  //if (isTCMet_){
1548  //iEvent.getByToken(jptJetsToken_, jptJets);
1549  //if (!jptJets.isValid()) {
1550  // LogDebug("") << "METAnalyzer: Could not find jptjet product" << std::endl;
1551  // if (verbose_) std::cout << "METAnalyzer: Could not find jptjet product" << std::endl;
1552  //}
1553  //collsize=jptJets->size();
1554  //}*/
1555 
1556  edm::Handle<edm::ValueMap<reco::JetID> > jetID_ValueMap_Handle;
1557  if (/*isTCMet_ || */ isCaloMet_) {
1558  if (!runcosmics_) {
1559  iEvent.getByToken(jetID_ValueMapToken_, jetID_ValueMap_Handle);
1560  }
1561  }
1562 
1563  if (isMiniAODMet_) {
1564  iEvent.getByToken(patJetsToken_, patJets);
1565  if (!patJets.isValid()) {
1566  LogDebug("") << "METAnalyzer: Could not find patjet product" << std::endl;
1567  if (verbose_)
1568  std::cout << "METAnalyzer: Could not find patjet product" << std::endl;
1569  }
1570  collsize = patJets->size();
1571  }
1572 
1573  if (isPFMet_) {
1574  iEvent.getByToken(pfJetsToken_, pfJets);
1575  if (!pfJets.isValid()) {
1576  LogDebug("") << "METAnalyzer: Could not find pfjet product" << std::endl;
1577  if (verbose_)
1578  std::cout << "METAnalyzer: Could not find pfjet product" << std::endl;
1579  }
1580  collsize = pfJets->size();
1581  }
1582 
1583  unsigned int ind1 = -1;
1584  double pt1 = -1;
1585  bool pass_jetID1 = false;
1586  unsigned int ind2 = -1;
1587  double pt2 = -1;
1588  bool pass_jetID2 = false;
1589 
1591  bool pass_correction_flag = false;
1592  if (!isMiniAODMet_) {
1593  iEvent.getByToken(jetCorrectorToken_, jetCorr);
1594  if (jetCorr.isValid()) {
1595  pass_correction_flag = true;
1596  }
1597  } else {
1598  pass_correction_flag = true;
1599  }
1600  //do loose jet ID-> check threshold on corrected jets
1601  for (int ijet = 0; ijet < collsize; ijet++) {
1602  double pt_jet = -10;
1603  double scale = 1.;
1604  bool iscleaned = false;
1605  if (pass_correction_flag) {
1606  if (isCaloMet_) {
1607  scale = jetCorr->correction((*caloJets)[ijet]);
1608  }
1609  //if(isTCMet_){
1610  //scale = jetCorr->correction((*jptJets)[ijet]);
1611  //}
1612  if (isPFMet_) {
1613  scale = jetCorr->correction((*pfJets)[ijet]);
1614  }
1615  }
1616  if (isCaloMet_) {
1617  pt_jet = scale * (*caloJets)[ijet].pt();
1618  if (pt_jet > ptThreshold_) {
1619  reco::CaloJetRef calojetref(caloJets, ijet);
1620  if (!runcosmics_) {
1621  reco::JetID jetID = (*jetID_ValueMap_Handle)[calojetref];
1622  iscleaned = jetIDFunctorLoose((*caloJets)[ijet], jetID);
1623  } else {
1624  iscleaned = true;
1625  }
1626  }
1627  }
1629  //if(isTCMet_){
1630  //pt_jet=scale*(*jptJets)[ijet].pt();
1631  //if(pt_jet> ptThreshold_){
1632  // const edm::RefToBase<reco::Jet>& rawJet = (*jptJets)[ijet].getCaloJetRef();
1633  // const reco::CaloJet *rawCaloJet = dynamic_cast<const reco::CaloJet*>(&*rawJet);
1634  // reco::CaloJetRef const theCaloJetRef = (rawJet).castTo<reco::CaloJetRef>();
1635  // if(!runcosmics_){
1636  // reco::JetID jetID = (*jetID_ValueMap_Handle)[theCaloJetRef];
1637  // iscleaned = jetIDFunctorLoose(*rawCaloJet, jetID);
1638  // }else{
1639  // iscleaned=true;
1640  // }
1641  //}
1642  //}*/
1643  if (isPFMet_) {
1644  pt_jet = scale * (*pfJets)[ijet].pt();
1645  if (pt_jet > ptThreshold_) {
1646  iscleaned = pfjetIDFunctorLoose((*pfJets)[ijet]);
1647  }
1648  }
1649  if (isMiniAODMet_) {
1650  pt_jet = (*patJets)[ijet].pt();
1651  if (pt_jet > ptThreshold_) {
1653  iscleaned = pfjetIDFunctorLoose((*patJets)[ijet], stringbitset);
1654  }
1655  }
1656  if (iscleaned) {
1657  bJetID = true;
1658  }
1659  if (pt_jet > pt1) {
1660  pt2 = pt1;
1661  ind2 = ind1;
1662  pass_jetID2 = pass_jetID1;
1663  pt1 = pt_jet;
1664  ind1 = ijet;
1665  pass_jetID1 = iscleaned;
1666  } else if (pt_jet > pt2) {
1667  pt2 = pt_jet;
1668  ind2 = ijet;
1669  pass_jetID2 = iscleaned;
1670  }
1671  }
1672  if (pass_jetID1 && pass_jetID2) {
1673  double dphi = -1.0;
1674  if (isCaloMet_) {
1675  dphi = fabs((*caloJets)[ind1].phi() - (*caloJets)[ind2].phi());
1676  }
1678  //dphi=fabs((*jptJets)[ind1].phi()-(*jptJets)[ind2].phi());
1679  //}*/
1680  if (isPFMet_) {
1681  dphi = fabs((*pfJets)[ind1].phi() - (*pfJets)[ind2].phi());
1682  }
1683  if (isMiniAODMet_) {
1684  dphi = fabs((*patJets)[0].phi() - (*patJets)[1].phi());
1685  }
1686  if (dphi > acos(-1.)) {
1687  dphi = 2 * acos(-1.) - dphi;
1688  }
1689  if (dphi > 2.7) {
1690  bDiJetID = true;
1691  }
1692  }
1693  // ==========================================================
1694  // ==========================================================
1695  //Vertex information
1696  Handle<VertexCollection> vertexHandle;
1697  iEvent.getByToken(vertexToken_, vertexHandle);
1698 
1699  if (!vertexHandle.isValid()) {
1700  LogDebug("") << "CaloMETAnalyzer: Could not find vertex collection" << std::endl;
1701  if (verbose_)
1702  std::cout << "CaloMETAnalyzer: Could not find vertex collection" << std::endl;
1703  }
1704  numPV_ = 0;
1705  if (vertexHandle.isValid()) {
1706  VertexCollection vertexCollection = *(vertexHandle.product());
1707  numPV_ = vertexCollection.size();
1708  }
1709  bool bPrimaryVertex = (bypassAllPVChecks_ || (numPV_ > 0));
1710 
1711  bool bZJets = false;
1712 
1714  iEvent.getByToken(MuonsToken_, Muons);
1715 
1717 
1718  double pt_muon0 = -1;
1719  double pt_muon1 = -1;
1720  int mu_index0 = -1;
1721  int mu_index1 = -1;
1722  //fill it only for cleaned jets
1723  if (Muons.isValid() && Muons->size() > 1) {
1724  for (unsigned int i = 0; i < Muons->size(); i++) {
1725  bool pass_muon_id = false;
1726  bool pass_muon_iso = false;
1727  double dxy = fabs((*Muons)[i].muonBestTrack()->dxy());
1728  double dz = fabs((*Muons)[i].muonBestTrack()->dz());
1729  if (numPV_ > 0) {
1730  dxy = fabs((*Muons)[i].muonBestTrack()->dxy((*vertexHandle)[0].position()));
1731  dz = fabs((*Muons)[i].muonBestTrack()->dz((*vertexHandle)[0].position()));
1732  }
1733  if ((*Muons)[i].pt() > 20 && fabs((*Muons)[i].eta()) < 2.3) {
1734  if ((*Muons)[i].isGlobalMuon() && (*Muons)[i].isPFMuon() &&
1735  (*Muons)[i].globalTrack()->hitPattern().numberOfValidMuonHits() > 0 &&
1736  (*Muons)[i].numberOfMatchedStations() > 1 && dxy < 0.2 && (*Muons)[i].numberOfMatchedStations() > 1 &&
1737  dz < 0.5 && (*Muons)[i].innerTrack()->hitPattern().numberOfValidPixelHits() > 0 &&
1738  (*Muons)[i].innerTrack()->hitPattern().trackerLayersWithMeasurement() > 5) {
1739  pass_muon_id = true;
1740  }
1741  // Muon pf isolation DB corrected
1742  float muonIsoPFdb =
1743  ((*Muons)[i].pfIsolationR04().sumChargedHadronPt +
1744  std::max(0.,
1745  (*Muons)[i].pfIsolationR04().sumNeutralHadronEt + (*Muons)[i].pfIsolationR04().sumPhotonEt -
1746  0.5 * (*Muons)[i].pfIsolationR04().sumPUPt)) /
1747  (*Muons)[i].pt();
1748  if (muonIsoPFdb < 0.12) {
1749  pass_muon_iso = true;
1750  }
1751 
1752  if (pass_muon_id && pass_muon_iso) {
1753  if ((*Muons)[i].pt() > pt_muon0) {
1754  mu_index1 = mu_index0;
1755  pt_muon1 = pt_muon0;
1756  mu_index0 = i;
1757  pt_muon0 = (*Muons)[i].pt();
1758  } else if ((*Muons)[i].pt() > pt_muon1) {
1759  mu_index1 = i;
1760  pt_muon1 = (*Muons)[i].pt();
1761  }
1762  }
1763  }
1764  }
1765  if (mu_index0 >= 0 && mu_index1 >= 0) {
1766  if ((*Muons)[mu_index0].charge() * (*Muons)[mu_index1].charge() < 0) {
1767  zCand = (*Muons)[mu_index0].polarP4() + (*Muons)[mu_index1].polarP4();
1768  if (fabs(zCand.M() - 91.) < 20) {
1769  bZJets = true;
1770  }
1771  }
1772  }
1773  }
1774 
1775  // ==========================================================
1776 
1778  iEvent.getByToken(gtToken_, gtReadoutRecord);
1779 
1780  bool techTriggerResultBxM2 = false;
1781  bool techTriggerResultBxM1 = false;
1782  bool techTriggerResultBx0 = false;
1783 
1784  if (!gtReadoutRecord.isValid()) {
1785  LogDebug("") << "METAnalyzer: Could not find GT readout record" << std::endl;
1786  if (verbose_)
1787  std::cout << "METAnalyzer: Could not find GT readout record product" << std::endl;
1788  } else {
1789  // trigger results before mask for BxInEvent -2 (E), -1 (F), 0 (L1A), 1, 2
1790  const TechnicalTriggerWord& technicalTriggerWordBeforeMaskBxM2 = gtReadoutRecord->technicalTriggerWord(-2);
1791  const TechnicalTriggerWord& technicalTriggerWordBeforeMaskBxM1 = gtReadoutRecord->technicalTriggerWord(-1);
1792  const TechnicalTriggerWord& technicalTriggerWordBeforeMaskBx0 = gtReadoutRecord->technicalTriggerWord();
1793  //const TechnicalTriggerWord& technicalTriggerWordBeforeMaskBxG = gtReadoutRecord->technicalTriggerWord(1);
1794  //const TechnicalTriggerWord& technicalTriggerWordBeforeMaskBxH = gtReadoutRecord->technicalTriggerWord(2);
1795  if (m_bitAlgTechTrig_ > -1 && !technicalTriggerWordBeforeMaskBx0.empty()) {
1796  techTriggerResultBx0 = technicalTriggerWordBeforeMaskBx0.at(m_bitAlgTechTrig_);
1797  if (techTriggerResultBx0 != 0) {
1798  techTriggerResultBxM2 = technicalTriggerWordBeforeMaskBxM2.at(m_bitAlgTechTrig_);
1799  techTriggerResultBxM1 = technicalTriggerWordBeforeMaskBxM1.at(m_bitAlgTechTrig_);
1800  }
1801  }
1802  }
1803 
1804  std::vector<bool> trigger_flag(4, false);
1805  if (techTriggerResultBx0 && techTriggerResultBxM2 &&
1806  techTriggerResultBxM1) { //current and previous two bunches filled
1807  trigger_flag[0] = true;
1808  }
1809  if (techTriggerResultBx0 && techTriggerResultBxM1) { //current and previous bunch filled
1810  trigger_flag[1] = true;
1811  }
1812  if (techTriggerResultBx0 && !techTriggerResultBxM1) { //current bunch filled, but previous bunch emtpy
1813  trigger_flag[2] = true;
1814  }
1815  if (techTriggerResultBx0 && !techTriggerResultBxM2 &&
1816  !techTriggerResultBxM1) { //current bunch filled, but previous two bunches emtpy
1817  trigger_flag[3] = true;
1818  }
1819  std::vector<bool> filter_decisions(
1820  8, false); //include all recommended filters, old filters in MiniAOD, and 2 new filters in testing phase
1821  if (!isMiniAODMet_ &&
1822  !runcosmics_) { //not checked for MiniAOD -> for miniaod decision filled as "triggerResults" bool
1823  edm::Handle<bool> HBHENoiseFilterResultHandle;
1824  iEvent.getByToken(hbheNoiseFilterResultToken_, HBHENoiseFilterResultHandle);
1825  if (!HBHENoiseFilterResultHandle.isValid()) {
1826  LogDebug("") << "METAnalyzer: Could not find HBHENoiseFilterResult" << std::endl;
1827  if (verbose_)
1828  std::cout << "METAnalyzer: Could not find HBHENoiseFilterResult" << std::endl;
1829  }
1830  filter_decisions[0] = *HBHENoiseFilterResultHandle;
1831  edm::Handle<bool> CSCTightHaloFilterResultHandle;
1832  iEvent.getByToken(CSCHaloResultToken_, CSCTightHaloFilterResultHandle);
1833  if (!CSCTightHaloFilterResultHandle.isValid()) {
1834  LogDebug("") << "METAnalyzer: Could not find CSCTightHaloFilterResultHandle" << std::endl;
1835  if (verbose_)
1836  std::cout << "METAnalyzer: CSCTightHaloFilterResultHandle" << std::endl;
1837  }
1838  filter_decisions[1] = *CSCTightHaloFilterResultHandle;
1839  edm::Handle<bool> eeBadScFilterResultHandle;
1840  iEvent.getByToken(eeBadScFilterToken_, eeBadScFilterResultHandle);
1841  if (!eeBadScFilterResultHandle.isValid()) {
1842  LogDebug("") << "METAnalyzer: Could not find eeBadScFilterResultHandle" << std::endl;
1843  if (verbose_)
1844  std::cout << "METAnalyzer: eeBadScFilterResultHandle" << std::endl;
1845  }
1846  filter_decisions[2] = *eeBadScFilterResultHandle;
1847  edm::Handle<bool> HBHENoiseIsoFilterResultHandle;
1848  iEvent.getByToken(hbheIsoNoiseFilterResultToken_, HBHENoiseIsoFilterResultHandle);
1849  if (!HBHENoiseIsoFilterResultHandle.isValid()) {
1850  LogDebug("") << "METAnalyzer: Could not find HBHENoiseIsoFilterResult" << std::endl;
1851  if (verbose_)
1852  std::cout << "METAnalyzer: Could not find HBHENoiseIsoFilterResult" << std::endl;
1853  }
1854  filter_decisions[3] = *HBHENoiseIsoFilterResultHandle;
1855  edm::Handle<bool> CSCTightHalo2015FilterResultHandle;
1856  iEvent.getByToken(CSCHalo2015ResultToken_, CSCTightHalo2015FilterResultHandle);
1857  if (!CSCTightHalo2015FilterResultHandle.isValid()) {
1858  LogDebug("") << "METAnalyzer: Could not find CSCTightHalo2015FilterResultHandle" << std::endl;
1859  if (verbose_)
1860  std::cout << "METAnalyzer: CSCTightHalo2015FilterResultHandle" << std::endl;
1861  }
1862  filter_decisions[4] = *CSCTightHalo2015FilterResultHandle;
1863  edm::Handle<bool> EcalDeadCellTriggerFilterResultHandle;
1864  iEvent.getByToken(EcalDeadCellTriggerToken_, EcalDeadCellTriggerFilterResultHandle);
1865  if (!EcalDeadCellTriggerFilterResultHandle.isValid()) {
1866  LogDebug("") << "METAnalyzer: Could not find EcalDeadCellTriggerFilterResultHandle" << std::endl;
1867  if (verbose_)
1868  std::cout << "METAnalyzer: EcalDeadCellTriggerFilterResultHandle" << std::endl;
1869  }
1870  filter_decisions[5] = *EcalDeadCellTriggerFilterResultHandle;
1871  edm::Handle<bool> EcalDeadCellBoundaryHandle;
1872  iEvent.getByToken(EcalDeadCellBoundaryToken_, EcalDeadCellBoundaryHandle);
1873  if (!EcalDeadCellBoundaryHandle.isValid()) {
1874  LogDebug("") << "METAnalyzer: Could not find EcalDeadCellBoundaryHandle" << std::endl;
1875  if (verbose_)
1876  std::cout << "METAnalyzer: EcalDeadCellBoundaryHandle" << std::endl;
1877  }
1878  filter_decisions[6] = *EcalDeadCellBoundaryHandle;
1879  edm::Handle<bool> HcalStripHaloFilterHandle;
1880  iEvent.getByToken(HcalStripHaloToken_, HcalStripHaloFilterHandle);
1881  if (!HcalStripHaloFilterHandle.isValid()) {
1882  LogDebug("") << "METAnalyzer: Could not find CSCTightHalo2015FilterResultHandle" << std::endl;
1883  if (verbose_)
1884  std::cout << "METAnalyzer: CSCTightHalo2015FilterResultHandle" << std::endl;
1885  }
1886  filter_decisions[7] = *HcalStripHaloFilterHandle;
1887  } else if (isMiniAODMet_) {
1888  //miniaodFilterIndex_ is only filled in dqmBeginRun if isMiniAODMet_ true
1889  edm::Handle<edm::TriggerResults> metFilterResults;
1890  iEvent.getByToken(METFilterMiniAODToken_, metFilterResults);
1891  if (metFilterResults.isValid()) {
1892  if (miniaodFilterIndex_[0] != -1) {
1893  filter_decisions[0] = metFilterResults->accept(miniaodFilterIndex_[0]);
1894  }
1895  if (miniaodFilterIndex_[1] != -1) {
1896  filter_decisions[1] = metFilterResults->accept(miniaodFilterIndex_[1]);
1897  }
1898  if (miniaodFilterIndex_[2] != -1) {
1899  filter_decisions[2] = metFilterResults->accept(miniaodFilterIndex_[2]);
1900  }
1901  if (miniaodFilterIndex_[3] != -1) {
1902  filter_decisions[3] = metFilterResults->accept(miniaodFilterIndex_[3]);
1903  }
1904  if (miniaodFilterIndex_[4] != -1) {
1905  filter_decisions[4] = metFilterResults->accept(miniaodFilterIndex_[4]);
1906  }
1907  if (miniaodFilterIndex_[5] != -1) {
1908  filter_decisions[5] = metFilterResults->accept(miniaodFilterIndex_[5]);
1909  }
1910  if (miniaodFilterIndex_[6] != -1) {
1911  filter_decisions[6] = metFilterResults->accept(miniaodFilterIndex_[6]);
1912  }
1913  if (miniaodFilterIndex_[7] != -1) {
1914  filter_decisions[7] = metFilterResults->accept(miniaodFilterIndex_[7]);
1915  }
1916  } else {
1917  iEvent.getByToken(METFilterMiniAODToken2_, metFilterResults);
1918  if (metFilterResults.isValid()) {
1919  if (miniaodFilterIndex_[0] != -1) {
1920  filter_decisions[0] = metFilterResults->accept(miniaodFilterIndex_[0]);
1921  }
1922  if (miniaodFilterIndex_[1] != -1) {
1923  filter_decisions[1] = metFilterResults->accept(miniaodFilterIndex_[1]);
1924  }
1925  if (miniaodFilterIndex_[2] != -1) {
1926  filter_decisions[2] = metFilterResults->accept(miniaodFilterIndex_[2]);
1927  }
1928  if (miniaodFilterIndex_[3] != -1) {
1929  filter_decisions[3] = metFilterResults->accept(miniaodFilterIndex_[3]);
1930  }
1931  if (miniaodFilterIndex_[4] != -1) {
1932  filter_decisions[4] = metFilterResults->accept(miniaodFilterIndex_[4]);
1933  }
1934  if (miniaodFilterIndex_[5] != -1) {
1935  filter_decisions[5] = metFilterResults->accept(miniaodFilterIndex_[5]);
1936  }
1937  if (miniaodFilterIndex_[6] != -1) {
1938  filter_decisions[6] = metFilterResults->accept(miniaodFilterIndex_[6]);
1939  }
1940  if (miniaodFilterIndex_[7] != -1) {
1941  filter_decisions[7] = metFilterResults->accept(miniaodFilterIndex_[7]);
1942  }
1943  }
1944  }
1945  }
1946  bool HBHENoiseFilterResultFlag = filter_decisions[0]; //setup for RECO and MINIAOD
1947  // ==========================================================
1948  // HCAL Noise filter
1949  bool bHBHENoiseFilter = HBHENoiseFilterResultFlag;
1950 
1951  // DCS Filter
1952  bool bDCSFilter = (bypassAllDCSChecks_ || DCSFilter_->filter(iEvent, iSetup));
1953  // ==========================================================
1954  // Reconstructed MET Information - fill MonitorElements
1955  std::string DirName_old = DirName;
1956  for (std::vector<std::string>::const_iterator ic = folderNames_.begin(); ic != folderNames_.end(); ic++) {
1957  bool pass_selection = false;
1958  if ((*ic == "Uncleaned") && (isCaloMet_ || bPrimaryVertex)) {
1959  fillMESet(iEvent,
1960  DirName_old + "/" + *ic,
1961  *met,
1962  patmet,
1963  pfmet,
1964  calomet,
1965  zCand,
1966  map_dijet_MEs,
1967  trigger_flag,
1968  filter_decisions);
1969  pass_selection = true;
1970  }
1971  //take two lines out for first check
1972  if ((*ic == "Cleaned") && bDCSFilter && bHBHENoiseFilter && bPrimaryVertex && bJetID) {
1973  fillMESet(iEvent,
1974  DirName_old + "/" + *ic,
1975  *met,
1976  patmet,
1977  pfmet,
1978  calomet,
1979  zCand,
1980  map_dijet_MEs,
1981  trigger_flag,
1982  filter_decisions);
1983  pass_selection = true;
1984  }
1985  if ((*ic == "DiJet") && bDCSFilter && bHBHENoiseFilter && bPrimaryVertex && bDiJetID) {
1986  fillMESet(iEvent,
1987  DirName_old + "/" + *ic,
1988  *met,
1989  patmet,
1990  pfmet,
1991  calomet,
1992  zCand,
1993  map_dijet_MEs,
1994  trigger_flag,
1995  filter_decisions);
1996  pass_selection = true;
1997  }
1998  if ((*ic == "ZJets") && bDCSFilter && bHBHENoiseFilter && bPrimaryVertex && bZJets) {
1999  fillMESet(iEvent,
2000  DirName_old + "/" + *ic,
2001  *met,
2002  patmet,
2003  pfmet,
2004  calomet,
2005  zCand,
2006  map_dijet_MEs,
2007  trigger_flag,
2008  filter_decisions);
2009  pass_selection = true;
2010  }
2011  if (pass_selection && isPFMet_) {
2012  DirName = DirName_old + "/" + *ic;
2013  }
2014  }
2015 }
edm::EDGetTokenT< reco::CaloMETCollection > caloMetToken_
Definition: METAnalyzer.h:197
bool accept() const
Has at least one path accepted the event?
Analysis-level MET class.
Definition: MET.h:40
edm::EDGetTokenT< reco::CaloJetCollection > caloJetsToken_
Definition: METAnalyzer.h:165
bool bypassAllDCSChecks_
Definition: METAnalyzer.h:266
edm::EDGetTokenT< bool > CSCHalo2015ResultToken_
Definition: METAnalyzer.h:185
edm::EDGetTokenT< edm::TriggerResults > METFilterMiniAODToken2_
Definition: METAnalyzer.h:173
std::vector< GenericTriggerEventFlag * > triggerFolderEventFlag_
Definition: METAnalyzer.h:223
std::vector< int > triggerFolderDecisions_
Definition: METAnalyzer.h:226
std::map< std::string, MonitorElement * > map_dijet_MEs
Definition: METAnalyzer.h:592
double ptThreshold_
Definition: METAnalyzer.h:210
bool runcosmics_
Definition: METAnalyzer.h:267
bool isCaloMet_
Definition: METAnalyzer.h:594
edm::EDGetTokenT< bool > EcalDeadCellTriggerToken_
Definition: METAnalyzer.h:187
T const * product() const
Definition: Handle.h:70
edm::EDGetTokenT< reco::PFMETCollection > pfMetToken_
Definition: METAnalyzer.h:196
std::vector< Vertex > VertexCollection
collection of Vertex objects
Definition: VertexFwd.h:9
edm::EDGetTokenT< bool > eeBadScFilterToken_
Definition: METAnalyzer.h:189
std::string FolderName_
Definition: METAnalyzer.h:155
std::string const & label() const
Definition: InputTag.h:36
Jet ID object.
Definition: JetID.h:16
double correction(const LorentzVector &fJet) const
get correction using Jet information only
Definition: JetCorrector.h:46
assert(be >=bs)
edm::EDGetTokenT< reco::JetCorrector > jetCorrectorToken_
Definition: METAnalyzer.h:220
#define LogTrace(id)
std::vector< int > miniaodFilterIndex_
Definition: METAnalyzer.h:175
void Fill(long long x)
MonitorElement * lumisecME
Definition: METAnalyzer.h:304
edm::EDGetTokenT< std::vector< reco::Vertex > > vertexToken_
Definition: METAnalyzer.h:163
int iEvent
Definition: GenABIO.cc:224
bool fill_met_high_level_histo
Definition: METAnalyzer.h:598
edm::EDGetTokenT< bool > hbheIsoNoiseFilterResultToken_
Definition: METAnalyzer.h:181
edm::InputTag metCollectionLabel_
Definition: METAnalyzer.h:157
Definition: MET.h:41
edm::EDGetTokenT< bool > hbheNoiseFilterResultToken_
Definition: METAnalyzer.h:179
std::vector< std::string > folderNames_
Definition: METAnalyzer.h:295
std::vector< bool > TechnicalTriggerWord
technical trigger bits (64 bits)
edm::EDGetTokenT< edm::ValueMap< reco::JetID > > jetID_ValueMapToken_
Definition: METAnalyzer.h:200
const TechnicalTriggerWord & technicalTriggerWord(int bxInEventValue) const
static std::string const triggerResults
Definition: EdmProvDump.cc:47
edm::EDGetTokenT< edm::TriggerResults > METFilterMiniAODToken_
Definition: METAnalyzer.h:171
bool filter(const edm::Event &evt, const edm::EventSetup &es)
edm::EDGetTokenT< edm::TriggerResults > triggerResultsToken_
Definition: METAnalyzer.h:215
edm::EDGetTokenT< bool > HcalStripHaloToken_
Definition: METAnalyzer.h:193
edm::EDGetTokenT< reco::PFJetCollection > pfJetsToken_
Definition: METAnalyzer.h:166
edm::EDGetTokenT< bool > CSCHaloResultToken_
Definition: METAnalyzer.h:183
edm::EDGetTokenT< bool > EcalDeadCellBoundaryToken_
Definition: METAnalyzer.h:191
JetMETDQMDCSFilter * DCSFilter_
Definition: METAnalyzer.h:293
virtual TObject const * getRootObject() const
pat::strbitset getBitTemplate() const
Get an empty bitset with the proper names.
Definition: Selector.h:168
PFJetIDSelectionFunctor pfjetIDFunctorLoose
Definition: METAnalyzer.h:205
edm::EDGetTokenT< pat::METCollection > patMetToken_
Definition: METAnalyzer.h:195
bool isValid() const
Definition: HandleBase.h:70
edm::EDGetTokenT< reco::MuonCollection > MuonsToken_
Definition: METAnalyzer.h:168
edm::EDGetTokenT< L1GlobalTriggerReadoutRecord > gtToken_
Definition: METAnalyzer.h:164
static int position[264][3]
Definition: ReadPGInfo.cc:289
bool bypassAllPVChecks_
Definition: METAnalyzer.h:265
JetIDSelectionFunctor jetIDFunctorLoose
Definition: METAnalyzer.h:204
edm::EDGetTokenT< pat::JetCollection > patJetsToken_
Definition: METAnalyzer.h:167
bool isMiniAODMet_
Definition: METAnalyzer.h:596
fd
Definition: ztee.py:136
void fillMESet(const edm::Event &, std::string, const reco::MET &, const pat::MET *, const reco::PFMET *, const reco::CaloMET *, const reco::Candidate::PolarLorentzVector &, std::map< std::string, MonitorElement *> &, std::vector< bool >, std::vector< bool >)
int m_bitAlgTechTrig_
Definition: METAnalyzer.h:208
#define LogDebug(id)
math::PtEtaPhiMLorentzVector PolarLorentzVector
Lorentz vector.
Definition: Candidate.h:38

◆ bookHistograms()

void METAnalyzer::bookHistograms ( DQMStore::IBooker ibooker,
edm::Run const &  iRun,
edm::EventSetup const &   
)
overridevirtual

Inizialize parameters for histo binning.

Implements DQMOneEDAnalyzer<>.

Definition at line 197 of file METAnalyzer.cc.

References fed_dqm_sourceclient-live_cfg::DirName, dqm::implementation::NavigatorBase::setCurrentFolder(), dqm::implementation::IBooker::setScope(), and AlCaHLTBitMon_QueryRunRegistry::string.

197  {
199  ibooker.setCurrentFolder(DirName);
200  // since this module does things in dqmEndRun, we need to make sure to have
201  // per-run histograms.
202  ibooker.setScope(MonitorElementData::Scope::RUN);
203 
204  if (!folderNames_.empty()) {
205  folderNames_.clear();
206  }
207  if (runcosmics_) {
208  folderNames_.push_back("Uncleaned");
209  } else {
210  if (!onlyCleaned_) {
211  folderNames_.push_back("Uncleaned");
212  }
213  folderNames_.push_back("Cleaned");
214  folderNames_.push_back("DiJet");
215  if (!isMiniAODMet_) {
216  folderNames_.push_back("ZJets");
217  }
218  }
219  for (std::vector<std::string>::const_iterator ic = folderNames_.begin(); ic != folderNames_.end(); ic++) {
220  bookMESet(DirName + "/" + *ic, ibooker, map_dijet_MEs);
221  }
222 }
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:36
std::map< std::string, MonitorElement * > map_dijet_MEs
Definition: METAnalyzer.h:592
bool runcosmics_
Definition: METAnalyzer.h:267
bool onlyCleaned_
Definition: METAnalyzer.h:268
virtual MonitorElementData::Scope setScope(MonitorElementData::Scope newscope)
Definition: DQMStore.cc:50
std::string FolderName_
Definition: METAnalyzer.h:155
std::string const & label() const
Definition: InputTag.h:36
edm::InputTag metCollectionLabel_
Definition: METAnalyzer.h:157
std::vector< std::string > folderNames_
Definition: METAnalyzer.h:295
bool isMiniAODMet_
Definition: METAnalyzer.h:596
void bookMESet(std::string, DQMStore::IBooker &, std::map< std::string, MonitorElement *> &)
Definition: METAnalyzer.cc:225

◆ bookMESet()

void METAnalyzer::bookMESet ( std::string  DirName,
DQMStore::IBooker ibooker,
std::map< std::string, MonitorElement *> &  map_of_MEs 
)
private

Definition at line 225 of file METAnalyzer.cc.

References fed_dqm_sourceclient-live_cfg::DirName.

227  {
228  bool bLumiSecPlot = fill_met_high_level_histo;
229  //bool inTriggerPathPlots=false;
230  bool fillPFCandidatePlots = false;
231  bool fillZPlots = false;
232 
233  if (DirName.find("Cleaned") != std::string::npos) {
234  fillPFCandidatePlots = true;
235  bookMonitorElement(DirName, ibooker, map_of_MEs, bLumiSecPlot, fillPFCandidatePlots, fillZPlots);
236  //for (unsigned int i = 0; i<triggerFolderEventFlag_.size(); i++) {
237  //fillPFCandidatePlots=false;
238  //if (triggerFolderEventFlag_[i]->on()) {
239  //bookMonitorElement(DirName+"/"+triggerFolderLabels_[i],ibooker,map_of_MEs,bLumiSecPlot,fillPFCandidatePlots,fillZPlots);
240  //}
241  //}
242  } else if (DirName.find("ZJets") != std::string::npos) {
243  fillPFCandidatePlots = false;
244  fillZPlots = true;
245  bookMonitorElement(DirName, ibooker, map_of_MEs, bLumiSecPlot, fillPFCandidatePlots, fillZPlots);
246  } else {
247  bookMonitorElement(DirName, ibooker, map_of_MEs, bLumiSecPlot, fillPFCandidatePlots, fillZPlots);
248  }
249 }
void bookMonitorElement(std::string, DQMStore::IBooker &, std::map< std::string, MonitorElement *> &, bool, bool, bool)
Definition: METAnalyzer.cc:252
bool fill_met_high_level_histo
Definition: METAnalyzer.h:598

◆ bookMonitorElement()

void METAnalyzer::bookMonitorElement ( std::string  DirName,
DQMStore::IBooker ibooker,
std::map< std::string, MonitorElement *> &  map_of_MEs,
bool  bLumiSecPlot = false,
bool  fillPFCandPlots = false,
bool  fillZPlots = false 
)
private

Definition at line 252 of file METAnalyzer.cc.

References dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book2D(), dqm::implementation::IBooker::bookProfile(), gather_cfg::cout, fed_dqm_sourceclient-live_cfg::DirName, M_PI, dqm::impl::MonitorElement::setAxisTitle(), dqm::implementation::NavigatorBase::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, and findQualityFiles::v.

257  {
258  if (verbose_)
259  std::cout << "bookMonitorElement " << DirName << std::endl;
260 
261  ibooker.setCurrentFolder(DirName);
262  if (fillZPlots) {
263  if (isCaloMet_) {
264  meZJets_u_par = ibooker.book1D("u_parallel_Z_inc", "u_parallel_Z_inc", 50, -1000., 75);
265  } else {
266  meZJets_u_par = ibooker.book1D("u_parallel_Z_inc", "u_parallel_Z_inc", 50, -800., 75);
267  }
268  meZJets_u_par_ZPt_0_15 = ibooker.book1D("u_parallel_ZPt_0_15", "u_parallel_ZPt_0_15", 50, -100, 75);
269  meZJets_u_par_ZPt_15_30 = ibooker.book1D("u_parallel_ZPt_15_30", "u_parallel_ZPt_15_30", 50, -100, 50);
270  meZJets_u_par_ZPt_30_55 = ibooker.book1D("u_parallel_ZPt_30_55", "u_parallel_ZPt_30_55", 50, -175, 50);
271  meZJets_u_par_ZPt_55_75 = ibooker.book1D("u_parallel_ZPt_55_75", "u_parallel_ZPt_55_75", 50, -175, 0);
272  meZJets_u_par_ZPt_75_150 = ibooker.book1D("u_parallel_ZPt_75_150", "u_parallel_ZPt_75_150", 50, -300, 0);
273  if (isCaloMet_) {
274  meZJets_u_par_ZPt_150_290 = ibooker.book1D("u_parallel_ZPt_150_290", "u_parallel_ZPt_150_290", 50, -750, -100);
275  } else {
276  meZJets_u_par_ZPt_150_290 = ibooker.book1D("u_parallel_ZPt_150_290", "u_parallel_ZPt_150_290", 50, -450, -50);
277  }
278  if (isCaloMet_) {
279  meZJets_u_par_ZPt_290 = ibooker.book1D("u_parallel_ZPt_290", "u_parallel_ZPt_290", 50, -1000., -350.);
280  } else {
281  meZJets_u_par_ZPt_290 = ibooker.book1D("u_parallel_ZPt_290", "u_parallel_ZPt_290", 50, -750., -150.);
282  }
283  meZJets_u_perp = ibooker.book1D("u_perp_Z_inc", "u_perp_Z_inc", 50, -85., 85.);
284  meZJets_u_perp_ZPt_0_15 = ibooker.book1D("u_perp_ZPt_0_15", "u_perp_ZPt_0_15", 50, -85., 85.);
285  meZJets_u_perp_ZPt_15_30 = ibooker.book1D("u_perp_ZPt_15_30", "u_perp_ZPt_15_30", 50, -85., 85.);
286  meZJets_u_perp_ZPt_30_55 = ibooker.book1D("u_perp_ZPt_30_55", "u_perp_ZPt_30_55", 50, -85., 85.);
287  meZJets_u_perp_ZPt_55_75 = ibooker.book1D("u_perp_ZPt_55_75", "u_perp_ZPt_55_75", 50, -85., 85.);
288  meZJets_u_perp_ZPt_75_150 = ibooker.book1D("u_perp_ZPt_75_150", "u_perp_ZPt_75_150", 50, -85., 85.);
289  meZJets_u_perp_ZPt_150_290 = ibooker.book1D("u_perp_ZPt_150_290", "u_perp_ZPt_150_290", 50, -85., 85.);
290  meZJets_u_perp_ZPt_290 = ibooker.book1D("u_perp_ZPt_290", "u_perp_ZPt_290", 50, -85., 85.);
291 
292  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "u_parallel_Z_inc", meZJets_u_par));
293  map_of_MEs.insert(
294  std::pair<std::string, MonitorElement*>(DirName + "/" + "u_parallel_ZPt_0_15", meZJets_u_par_ZPt_0_15));
295  map_of_MEs.insert(
296  std::pair<std::string, MonitorElement*>(DirName + "/" + "u_parallel_ZPt_15_30", meZJets_u_par_ZPt_15_30));
297  map_of_MEs.insert(
298  std::pair<std::string, MonitorElement*>(DirName + "/" + "u_parallel_ZPt_30_55", meZJets_u_par_ZPt_30_55));
299  map_of_MEs.insert(
300  std::pair<std::string, MonitorElement*>(DirName + "/" + "u_parallel_ZPt_55_75", meZJets_u_par_ZPt_55_75));
301  map_of_MEs.insert(
302  std::pair<std::string, MonitorElement*>(DirName + "/" + "u_parallel_ZPt_75_150", meZJets_u_par_ZPt_75_150));
303  map_of_MEs.insert(
304  std::pair<std::string, MonitorElement*>(DirName + "/" + "u_parallel_ZPt_150_290", meZJets_u_par_ZPt_150_290));
305  map_of_MEs.insert(
306  std::pair<std::string, MonitorElement*>(DirName + "/" + "u_parallel_ZPt_290", meZJets_u_par_ZPt_290));
307 
308  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "u_perp_Z_inc", meZJets_u_perp));
309  map_of_MEs.insert(
310  std::pair<std::string, MonitorElement*>(DirName + "/" + "u_perp_ZPt_0_15", meZJets_u_perp_ZPt_0_15));
311  map_of_MEs.insert(
312  std::pair<std::string, MonitorElement*>(DirName + "/" + "u_perp_ZPt_15_30", meZJets_u_perp_ZPt_15_30));
313  map_of_MEs.insert(
314  std::pair<std::string, MonitorElement*>(DirName + "/" + "u_perp_ZPt_30_55", meZJets_u_perp_ZPt_30_55));
315  map_of_MEs.insert(
316  std::pair<std::string, MonitorElement*>(DirName + "/" + "u_perp_ZPt_55_75", meZJets_u_perp_ZPt_55_75));
317  map_of_MEs.insert(
318  std::pair<std::string, MonitorElement*>(DirName + "/" + "u_perp_ZPt_75_150", meZJets_u_perp_ZPt_75_150));
319  map_of_MEs.insert(
320  std::pair<std::string, MonitorElement*>(DirName + "/" + "u_perp_ZPt_150_290", meZJets_u_perp_ZPt_150_290));
321  map_of_MEs.insert(
322  std::pair<std::string, MonitorElement*>(DirName + "/" + "u_perp_ZPt_290", meZJets_u_perp_ZPt_290));
323  }
324 
325  if (!fillZPlots) {
326  hMEx = ibooker.book1D("MEx", "MEx", 200, -500, 500);
327  hMEy = ibooker.book1D("MEy", "MEy", 200, -500, 500);
328  hMET = ibooker.book1D("MET", "MET", 200, 0, 1000);
329 
330  {
331  auto scope = DQMStore::IBooker::UseLumiScope(ibooker);
332  hMET_2 = ibooker.book1D("MET_2", "MET Range 2", 200, 0, 2000);
333  hSumET = ibooker.book1D("SumET", "SumET", 400, 0, 4000);
334  hMETSig = ibooker.book1D("METSig", "METSig", 51, 0, 51);
335  hMETPhi = ibooker.book1D("METPhi", "METPhi", 60, -M_PI, M_PI);
336  }
337 
338  hMET_logx = ibooker.book1D("MET_logx", "MET_logx", 40, -1, 9);
339  hSumET_logx = ibooker.book1D("SumET_logx", "SumET_logx", 40, -1, 9);
340 
341  hMEx->setAxisTitle("MEx [GeV]", 1);
342  hMEy->setAxisTitle("MEy [GeV]", 1);
343  hMET->setAxisTitle("MET [GeV]", 1);
344  hMET_2->setAxisTitle("MET [GeV]", 1);
345  hSumET->setAxisTitle("SumET [GeV]", 1);
346  hMETSig->setAxisTitle("METSig", 1);
347  hMETPhi->setAxisTitle("METPhi [rad]", 1);
348  hMET_logx->setAxisTitle("log(MET) [GeV]", 1);
349  hSumET_logx->setAxisTitle("log(SumET) [GeV]", 1);
350 
351  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MEx", hMEx));
352  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MEy", hMEy));
353  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MET", hMET));
354  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MET_2", hMET_2));
355  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "SumET", hSumET));
356  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METSig", hMETSig));
357  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhi", hMETPhi));
358  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MET_logx", hMET_logx));
359  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "SumET_logx", hSumET_logx));
360 
361  hMET_HBHENoiseFilter = ibooker.book1D("MET_HBHENoiseFilter", "MET_HBHENoiseFiltered", 200, 0, 1000);
362  hMET_CSCTightHaloFilter = ibooker.book1D("MET_CSCTightHaloFilter", "MET_CSCTightHaloFiltered", 200, 0, 1000);
363  hMET_eeBadScFilter = ibooker.book1D("MET_eeBadScFilter", "MET_eeBadScFiltered", 200, 0, 1000);
364  hMET_HBHEIsoNoiseFilter = ibooker.book1D("MET_HBHEIsoNoiseFilter", "MET_HBHEIsoNoiseFiltered", 200, 0, 1000);
366  ibooker.book1D("MET_CSCTightHalo2015Filter", "MET_CSCTightHalo2015Filtered", 200, 0, 1000);
368  ibooker.book1D("MET_EcalDeadCellTriggerFilter", "MET_EcalDeadCellTriggerFiltered", 200, 0, 1000);
370  ibooker.book1D("MET_EcalDeadCellBoundaryFilter", "MET_EcalDeadCellBoundaryFiltered", 200, 0, 1000);
371  hMET_HcalStripHaloFilter = ibooker.book1D("MET_HcalStripHaloFilter", "MET_HcalStripHaloFiltered", 200, 0, 1000);
372 
373  map_of_MEs.insert(
374  std::pair<std::string, MonitorElement*>(DirName + "/" + "MET_HBHENoiseFilter", hMET_HBHENoiseFilter));
375  map_of_MEs.insert(
376  std::pair<std::string, MonitorElement*>(DirName + "/" + "MET_CSCTightHaloFilter", hMET_CSCTightHaloFilter));
377  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MET_eeBadScFilter", hMET_eeBadScFilter));
378  map_of_MEs.insert(
379  std::pair<std::string, MonitorElement*>(DirName + "/" + "MET_HBHEIsoNoiseFilter", hMET_HBHEIsoNoiseFilter));
380  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MET_CSCTightHalo2015Filter",
382  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MET_EcalDeadCellTriggerFilter",
384  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MET_EcalDeadCellBoundaryFilter",
386  map_of_MEs.insert(
387  std::pair<std::string, MonitorElement*>(DirName + "/" + "MET_HcalStripHaloFilter", hMET_HcalStripHaloFilter));
388 
389  // Book NPV profiles --> would some of these profiles be interesting for other MET types too
390  //----------------------------------------------------------------------------
391  meMEx_profile = ibooker.bookProfile("MEx_profile", "met.px()", nbinsPV_, nPVMin_, nPVMax_, 200, -500, 500);
392  meMEy_profile = ibooker.bookProfile("MEy_profile", "met.py()", nbinsPV_, nPVMin_, nPVMax_, 200, -500, 500);
393  meMET_profile = ibooker.bookProfile("MET_profile", "met.pt()", nbinsPV_, nPVMin_, nPVMax_, 200, 0, 1000);
394  meSumET_profile = ibooker.bookProfile("SumET_profile", "met.sumEt()", nbinsPV_, nPVMin_, nPVMax_, 400, 0, 4000);
395  // Set NPV profiles x-axis title
396  //----------------------------------------------------------------------------
397  meMEx_profile->setAxisTitle("nvtx", 1);
398  meMEy_profile->setAxisTitle("nvtx", 1);
399  meMET_profile->setAxisTitle("nvtx", 1);
400  meSumET_profile->setAxisTitle("nvtx", 1);
401 
402  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MEx_profile", meMEx_profile));
403  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MEy_profile", meMEy_profile));
404  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MET_profile", meMET_profile));
405  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "SumET_profile", meSumET_profile));
406 
407  if (isCaloMet_) {
408  hCaloHadEtInHB = ibooker.book1D("CaloHadEtInHB", "CaloHadEtInHB", 50, 0, 2000);
409  hCaloHadEtInHB->setAxisTitle("Had Et [GeV]", 1);
410  hCaloHadEtInHO = ibooker.book1D("CaloHadEtInHO", "CaloHadEtInHO", 25, 0, 500);
411  hCaloHadEtInHO->setAxisTitle("Had Et [GeV]", 1);
412  hCaloHadEtInHE = ibooker.book1D("CaloHadEtInHE", "CaloHadEtInHE", 50, 0, 2000);
413  hCaloHadEtInHE->setAxisTitle("Had Et [GeV]", 1);
414  hCaloHadEtInHF = ibooker.book1D("CaloHadEtInHF", "CaloHadEtInHF", 50, 0, 1000);
415  hCaloHadEtInHF->setAxisTitle("Had Et [GeV]", 1);
416  hCaloEmEtInHF = ibooker.book1D("CaloEmEtInHF", "CaloEmEtInHF", 25, 0, 500);
417  hCaloEmEtInHF->setAxisTitle("EM Et [GeV]", 1);
418  hCaloEmEtInEE = ibooker.book1D("CaloEmEtInEE", "CaloEmEtInEE", 50, 0, 1000);
419  hCaloEmEtInEE->setAxisTitle("EM Et [GeV]", 1);
420  hCaloEmEtInEB = ibooker.book1D("CaloEmEtInEB", "CaloEmEtInEB", 50, 0, 2000);
421  hCaloEmEtInEB->setAxisTitle("EM Et [GeV]", 1);
422 
423  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "CaloHadEtInHO", hCaloHadEtInHO));
424  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "CaloHadEtInHF", hCaloHadEtInHF));
425  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "CaloHadEtInHE", hCaloHadEtInHE));
426  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "CaloHadEtInHB", hCaloHadEtInHB));
427  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "CaloEmEtInHF", hCaloEmEtInHF));
428  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "CaloEmEtInEE", hCaloEmEtInEE));
429  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "CaloEmEtInEB", hCaloEmEtInEB));
430 
431  hCaloMETPhi020 = ibooker.book1D("CaloMETPhi020", "CaloMETPhi020", 60, -M_PI, M_PI);
432  hCaloMETPhi020->setAxisTitle("METPhi [rad] (MET>20 GeV)", 1);
433 
434  hCaloEtFractionHadronic = ibooker.book1D("CaloEtFractionHadronic", "CaloEtFractionHadronic", 50, 0, 1);
435  hCaloEtFractionHadronic->setAxisTitle("Hadronic Et Fraction", 1);
436  hCaloEmEtFraction = ibooker.book1D("CaloEmEtFraction", "CaloEmEtFraction", 50, 0, 1);
437  hCaloEmEtFraction->setAxisTitle("EM Et Fraction", 1);
438 
439  hCaloEmEtFraction020 = ibooker.book1D("CaloEmEtFraction020", "CaloEmEtFraction020", 50, 0, 1);
440  hCaloEmEtFraction020->setAxisTitle("EM Et Fraction (MET>20 GeV)", 1);
441 
442  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "CaloMETPhi020", hCaloMETPhi020));
443  map_of_MEs.insert(
444  std::pair<std::string, MonitorElement*>(DirName + "/" + "CaloEtFractionHadronic", hCaloEtFractionHadronic));
445  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "CaloEmEtFraction", hCaloEmEtFraction));
446  map_of_MEs.insert(
447  std::pair<std::string, MonitorElement*>(DirName + "/" + "CaloEmEtFraction020", hCaloEmEtFraction020));
448  }
449 
450  if (isPFMet_) {
451  if (fillPFCandPlots &&
452  fillCandidateMap_histos) { //first bool internal checks for subdirectory filling, second bool given in cfg file, checks that we fill maps only in one module in total
453 
454  meCHF_Barrel = ibooker.book1D("PfChargedHadronEtFractionBarrel", "chargedHadronEtFractionBarrel", 50, 0, 1);
456  ibooker.book1D("PfChargedHadronEtFractionEndcapPlus", "chargedHadronEtFractionEndcapPlus", 50, 0, 1);
458  ibooker.book1D("PfChargedHadronEtFractionEndcapMinus", "chargedHadronEtFractionEndcapMinus", 50, 0, 1);
459  meCHF_Barrel_BXm1Empty = ibooker.book1D(
460  "PfChargedHadronEtFractionBarrel_BXm1Empty", "chargedHadronEtFractionBarrel prev empty bunch", 50, 0, 1);
461  meCHF_EndcapPlus_BXm1Empty = ibooker.book1D("PfChargedHadronEtFractionEndcapPlus_BXm1Empty",
462  "chargedHadronEtFractionEndcapPlus prev empty bunch",
463  50,
464  0,
465  1);
466  meCHF_EndcapMinus_BXm1Empty = ibooker.book1D("PfChargedHadronEtFractionEndcapMinus_BXm1Empty",
467  "chargedHadronEtFractionEndcapMinus prev empty bunch",
468  50,
469  0,
470  1);
471  meCHF_Barrel_BXm1Filled = ibooker.book1D("PfChargedHadronEtFractionBarrel_BXm1Filled",
472  "chargedHadronEtFractionBarrel prev filled 2 bunches",
473  50,
474  0,
475  1);
476  meCHF_EndcapPlus_BXm1Filled = ibooker.book1D("PfChargedHadronEtFractionEndcapPlus_BXm1Filled",
477  "chargedHadronEtFractionEndcapPlus prev filled bunch",
478  50,
479  0,
480  1);
481  meCHF_EndcapMinus_BXm1Filled = ibooker.book1D("PfChargedHadronEtFractionEndcapMinus_BXm1Filled",
482  "chargedHadronEtFractionEndcapMinus prev filled bunch",
483  50,
484  0,
485  1);
486 
487  map_of_MEs.insert(
488  std::pair<std::string, MonitorElement*>(DirName + "/" + "PfChargedHadronEtFractionBarrel", meCHF_Barrel));
489  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfChargedHadronEtFractionEndcapPlus",
491  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
492  DirName + "/" + "PfChargedHadronEtFractionEndcapMinus", meCHF_EndcapMinus));
493  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
494  DirName + "/" + "PfChargedHadronEtFractionBarrel_BXm1Empty", meCHF_Barrel_BXm1Empty));
495  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
496  DirName + "/" + "PfChargedHadronEtFractionEndcapPlus_BXm1Empty", meCHF_EndcapPlus_BXm1Empty));
497  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
498  DirName + "/" + "PfChargedHadronEtFractionEndcapMinus_BXm1Empty", meCHF_EndcapMinus_BXm1Empty));
499  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfChargedHadronEtFractionBarrel_BXm2BXm1Empty", meCHF_Barrel_BXm2BXm1Empty));
500  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfChargedHadronEtFractionEndcapPlus_BXm2BXm1Empty", meCHF_EndcapPlus_BXm2BXm1Empty));
501  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfChargedHadronEtFractionEndcapMinus_BXm2BXm1Empty", meCHF_EndcapMinus_BXm2BXm1Empty));
502  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
503  DirName + "/" + "PfChargedHadronEtFractionBarrel_BXm1Filled", meCHF_Barrel_BXm1Filled));
504  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
505  DirName + "/" + "PfChargedHadronEtFractionEndcapPlus_BXm1Filled", meCHF_EndcapPlus_BXm1Filled));
506  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
507  DirName + "/" + "PfChargedHadronEtFractionEndcapMinus_BXm1Filled", meCHF_EndcapMinus_BXm1Filled));
508  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfChargedHadronEtFractionBarrel_BXm2BXm1Filled", meCHF_Barrel_BXm2BXm1Filled));
509  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfChargedHadronEtFractionEndcapPlus_BXm2BXm1Filled", meCHF_EndcapPlus_BXm2BXm1Filled));
510  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfChargedHadronEtFractionEndcapMinus_BXm2BXm1Filled", meCHF_EndcapMinus_BXm2BXm1Filled));
511 
512  meNHF_Barrel = ibooker.book1D("PfNeutralHadronEtFractionBarrel", "neutralHadronEtFractionBarrel", 50, 0, 1);
514  ibooker.book1D("PfNeutralHadronEtFractionEndcapPlus", "neutralHadronEtFractionEndcapPlus", 50, 0, 1);
516  ibooker.book1D("PfNeutralHadronEtFractionEndcapMinus", "neutralHadronEtFractionEndcapMinus", 50, 0, 1);
517  meNHF_Barrel_BXm1Empty = ibooker.book1D(
518  "PfNeutralHadronEtFractionBarrel_BXm1Empty", "neutralHadronEtFractionBarrel prev empty bunch", 50, 0, 1);
519  meNHF_EndcapPlus_BXm1Empty = ibooker.book1D("PfNeutralHadronEtFractionEndcapPlus_BXm1Empty",
520  "neutralHadronEtFractionEndcapPlus prev empty bunch",
521  50,
522  0,
523  1);
524  meNHF_EndcapMinus_BXm1Empty = ibooker.book1D("PfNeutralHadronEtFractionEndcapMinus_BXm1Empty",
525  "neutralHadronEtFractionEndcapMinus prev empty bunch",
526  50,
527  0,
528  1);
529  //meNHF_Barrel_BXm2BXm1Empty = ibooker.book1D("PfNeutralHadronEtFractionBarrel_BXm2BXm1Empty", "neutralHadronEtFractionBarrel prev empty 2 bunches", 50, 0, 1);
530  //meNHF_EndcapPlus_BXm2BXm1Empty = ibooker.book1D("PfNeutralHadronEtFractionEndcapPlus_BXm2BXm1Empty", "neutralHadronEtFractionEndcapPlus prev empty 2 bunches", 50, 0, 1);
531  //meNHF_EndcapMinus_BXm2BXm1Empty = ibooker.book1D("PfNeutralHadronEtFractionEndcapMinus_BXm2BXm1Empty", "neutralHadronEtFractionEndcapMinus prev empty 2 bunches", 50, 0, 1);
532  meNHF_Barrel_BXm1Filled = ibooker.book1D("PfNeutralHadronEtFractionBarrel_BXm1Filled",
533  "neutralHadronEtFractionBarrel prev filled 2 bunches",
534  50,
535  0,
536  1);
537  meNHF_EndcapPlus_BXm1Filled = ibooker.book1D("PfNeutralHadronEtFractionEndcapPlus_BXm1Filled",
538  "neutralHadronEtFractionEndcapPlus prev filled bunch",
539  50,
540  0,
541  1);
542  meNHF_EndcapMinus_BXm1Filled = ibooker.book1D("PfNeutralHadronEtFractionEndcapMinus_BXm1Filled",
543  "neutralHadronEtFractionEndcapMinus prev filled bunch",
544  50,
545  0,
546  1);
547  //meNHF_Barrel_BXm2BXm1Filled = ibooker.book1D("PfNeutralHadronEtFractionBarrel_BXm2BXm1Filled", "neutralHadronEtFractionBarrel prev filled 2 bunches", 50, 0, 1);
548  //meNHF_EndcapPlus_BXm2BXm1Filled = ibooker.book1D("PfNeutralHadronEtFractionEndcapPlus_BXm2BXm1Filled", "neutralHadronEtFractionEndcapPlus prev filled 2 bunches", 50, 0, 1);
549  //meNHF_EndcapMinus_BXm2BXm1Filled = ibooker.book1D("PfNeutralHadronEtFractionEndcapMinus_BXm2BXm1Filled", "neutralHadronEtFractionEndcapMinus prev filled 2 bunches", 50, 0, 1);
550 
551  map_of_MEs.insert(
552  std::pair<std::string, MonitorElement*>(DirName + "/" + "PfNeutralHadronEtFractionBarrel", meNHF_Barrel));
553  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfNeutralHadronEtFractionEndcapPlus",
555  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
556  DirName + "/" + "PfNeutralHadronEtFractionEndcapMinus", meNHF_EndcapMinus));
557  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
558  DirName + "/" + "PfNeutralHadronEtFractionBarrel_BXm1Empty", meNHF_Barrel_BXm1Empty));
559  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
560  DirName + "/" + "PfNeutralHadronEtFractionEndcapPlus_BXm1Empty", meNHF_EndcapPlus_BXm1Empty));
561  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
562  DirName + "/" + "PfNeutralHadronEtFractionEndcapMinus_BXm1Empty", meNHF_EndcapMinus_BXm1Empty));
563  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfNeutralHadronEtFractionBarrel_BXm2BXm1Empty", meNHF_Barrel_BXm2BXm1Empty));
564  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfNeutralHadronEtFractionEndcapPlus_BXm2BXm1Empty", meNHF_EndcapPlus_BXm2BXm1Empty));
565  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfNeutralHadronEtFractionEndcapMinus_BXm2BXm1Empty", meNHF_EndcapMinus_BXm2BXm1Empty));
566  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
567  DirName + "/" + "PfNeutralHadronEtFractionBarrel_BXm1Filled", meNHF_Barrel_BXm1Filled));
568  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
569  DirName + "/" + "PfNeutralHadronEtFractionEndcapPlus_BXm1Filled", meNHF_EndcapPlus_BXm1Filled));
570  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
571  DirName + "/" + "PfNeutralHadronEtFractionEndcapMinus_BXm1Filled", meNHF_EndcapMinus_BXm1Filled));
572  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfNeutralHadronEtFractionBarrel_BXm2BXm1Filled", meNHF_Barrel_BXm2BXm1Filled));
573  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfNeutralHadronEtFractionEndcapPlus_BXm2BXm1Filled", meNHF_EndcapPlus_BXm2BXm1Filled));
574  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfNeutralHadronEtFractionEndcapMinus_BXm2BXm1Filled", meNHF_EndcapMinus_BXm2BXm1Filled));
575 
576  mePhF_Barrel = ibooker.book1D("PfPhotonEtFractionBarrel", "photonEtFractionBarrel", 50, 0, 1);
577  mePhF_EndcapPlus = ibooker.book1D("PfPhotonEtFractionEndcapPlus", "photonEtFractionEndcapPlus", 50, 0, 1);
578  mePhF_EndcapMinus = ibooker.book1D("PfPhotonEtFractionEndcapMinus", "photonEtFractionEndcapMinus", 50, 0, 1);
580  ibooker.book1D("PfPhotonEtFractionBarrel_BXm1Empty", "photonEtFractionBarrel prev empty bunch", 50, 0, 1);
582  "PfPhotonEtFractionEndcapPlus_BXm1Empty", "photonEtFractionEndcapPlus prev empty bunch", 50, 0, 1);
584  "PfPhotonEtFractionEndcapMinus_BXm1Empty", "photonEtFractionEndcapMinus prev empty bunch", 50, 0, 1);
585  //mePhF_Barrel_BXm2BXm1Empty = ibooker.book1D("PfPhotonEtFractionBarrel_BXm2BXm1Empty", "photonEtFractionBarrel prev empty 2 bunches", 50, 0, 1);
586  //mePhF_EndcapPlus_BXm2BXm1Empty = ibooker.book1D("PfPhotonEtFractionEndcapPlus_BXm2BXm1Empty", "photonEtFractionEndcapPlus prev empty 2 bunches", 50, 0, 1);
587  //mePhF_EndcapMinus_BXm2BXm1Empty = ibooker.book1D("PfPhotonEtFractionEndcapMinus_BXm2BXm1Empty", "photonEtFractionEndcapMinus prev empty 2 bunches", 50, 0, 1);
589  "PfPhotonEtFractionBarrel_BXm1Filled", "photonEtFractionBarrel prev filled 2 bunches", 50, 0, 1);
591  "PfPhotonEtFractionEndcapPlus_BXm1Filled", "photonEtFractionEndcapPlus prev filled bunch", 50, 0, 1);
593  "PfPhotonEtFractionEndcapMinus_BXm1Filled", "photonEtFractionEndcapMinus prev filled bunch", 50, 0, 1);
594  //mePhF_Barrel_BXm2BXm1Filled = ibooker.book1D("PfPhotonEtFractionBarrel_BXm2BXm1Filled", "photonEtFractionBarrel prev filled 2 bunches", 50, 0, 1);
595  //mePhF_EndcapPlus_BXm2BXm1Filled = ibooker.book1D("PfPhotonEtFractionEndcapPlus_BXm2BXm1Filled", "photonEtFractionEndcapPlus prev filled 2 bunches", 50, 0, 1);
596  //mePhF_EndcapMinus_BXm2BXm1Filled = ibooker.book1D("PfPhotonEtFractionEndcapMinus_BXm2BXm1Filled", "photonEtFractionEndcapMinus prev filled 2 bunches", 50, 0, 1);
597 
598  map_of_MEs.insert(
599  std::pair<std::string, MonitorElement*>(DirName + "/" + "PfPhotonEtFractionBarrel", mePhF_Barrel));
600  map_of_MEs.insert(
601  std::pair<std::string, MonitorElement*>(DirName + "/" + "PfPhotonEtFractionEndcapPlus", mePhF_EndcapPlus));
602  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfPhotonEtFractionEndcapMinus",
604  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfPhotonEtFractionBarrel_BXm1Empty",
606  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
607  DirName + "/" + "PfPhotonEtFractionEndcapPlus_BXm1Empty", mePhF_EndcapPlus_BXm1Empty));
608  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
609  DirName + "/" + "PfPhotonEtFractionEndcapMinus_BXm1Empty", mePhF_EndcapMinus_BXm1Empty));
610  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfPhotonEtFractionBarrel_BXm2BXm1Empty", mePhF_Barrel_BXm2BXm1Empty));
611  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfPhotonEtFractionEndcapPlus_BXm2BXm1Empty", mePhF_EndcapPlus_BXm2BXm1Empty));
612  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfPhotonEtFractionEndcapMinus_BXm2BXm1Empty", mePhF_EndcapMinus_BXm2BXm1Empty));
613  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfPhotonEtFractionBarrel_BXm1Filled",
615  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
616  DirName + "/" + "PfPhotonEtFractionEndcapPlus_BXm1Filled", mePhF_EndcapPlus_BXm1Filled));
617  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
618  DirName + "/" + "PfPhotonEtFractionEndcapMinus_BXm1Filled", mePhF_EndcapMinus_BXm1Filled));
619  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfPhotonEtFractionBarrel_BXm2BXm1Filled", mePhF_Barrel_BXm2BXm1Filled));
620  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfPhotonEtFractionEndcapPlus_BXm2BXm1Filled", mePhF_EndcapPlus_BXm2BXm1Filled));
621  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfPhotonEtFractionEndcapMinus_BXm2BXm1Filled", mePhF_EndcapMinus_BXm2BXm1Filled));
622 
623  meHFHadF_Plus = ibooker.book1D("PfHFHadronEtFractionPlus", "HFHadronEtFractionPlus", 50, 0, 1);
624  meHFHadF_Minus = ibooker.book1D("PfHFHadronEtFractionMinus", "HFHadronEtFractionMinus", 50, 0, 1);
626  ibooker.book1D("PfHFHadronEtFractionPlus_BXm1Empty", "HFHadronEtFractionPlus prev empty bunch", 50, 0, 1);
628  ibooker.book1D("PfHFHadronEtFractionMinus_BXm1Empty", "HFHadronEtFractionMinus prev empty bunch", 50, 0, 1);
629  //meHFHadF_Plus_BXm2BXm1Empty = ibooker.book1D("PfHFHadronEtFractionPlus_BXm2BXm1Empty", "HFHadronEtFractionPlus prev empty 2 bunches", 50, 0, 1);
630  //meHFHadF_Minus_BXm2BXm1Empty = ibooker.book1D("PfHFHadronEtFractionMinus_BXm2BXm1Empty", "HFHadronEtFractionMinus prev empty 2 bunches", 50, 0, 1);
632  ibooker.book1D("PfHFHadronEtFractionPlus_BXm1Filled", "HFHadronEtFractionPlus prev filled bunch", 50, 0, 1);
634  "PfHFHadronEtFractionMinus_BXm1Filled", "HFHadronEtFractionMinus prev filled bunch", 50, 0, 1);
635  //meHFHadF_Plus_BXm2BXm1Filled = ibooker.book1D("PfHFHadronEtFractionPlus_BXm2BXm1Filled", "HFHadronEtFractionPlus prev filled 2 bunches", 50, 0, 1);
636  //meHFHadF_Minus_BXm2BXm1Filled = ibooker.book1D("PfHFHadronEtFractionMinus_BXm2BXm1Filled", "HFHadronEtFractionMinus prev filled 2 bunches", 50, 0, 1);
637 
638  map_of_MEs.insert(
639  std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFHadronEtFractionPlus", meHFHadF_Plus));
640  map_of_MEs.insert(
641  std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFHadronEtFractionMinus", meHFHadF_Minus));
642  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFHadronEtFractionPlus_BXm1Empty",
644  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFHadronEtFractionMinus_BXm1Empty",
646  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfHFHadronEtFractionPlus_BXm2BXm1Empty", meHFHadF_Plus_BXm2BXm1Empty));
647  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfHFHadronEtFractionMinus_BXm2BXm1Empty", meHFHadF_Minus_BXm2BXm1Empty));
648  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFHadronEtFractionPlus_BXm1Filled",
650  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
651  DirName + "/" + "PfHFHadronEtFractionMinus_BXm1Filled", meHFHadF_Minus_BXm1Filled));
652  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfHFHadronEtFractionPlus_BXm2BXm1Filled", meHFHadF_Plus_BXm2BXm1Filled));
653  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfHFHadronEtFractionMinus_BXm2BXm1Filled", meHFHadF_Minus_BXm2BXm1Filled));
654 
655  meHFEMF_Plus = ibooker.book1D("PfHFEMEtFractionPlus", "HFEMEtFractionPlus", 50, 0, 1);
656  meHFEMF_Minus = ibooker.book1D("PfHFEMEtFractionMinus", "HFEMEtFractionMinus", 50, 0, 1);
658  ibooker.book1D("PfHFEMEtFractionPlus_BXm1Empty", "HFEMEtFractionPlus prev empty bunch", 50, 0, 1);
660  ibooker.book1D("PfHFEMEtFractionMinus_BXm1Empty", "HFEMEtFractionMinus prev empty bunch", 50, 0, 1);
661  //meHFEMF_Plus_BXm2BXm1Empty = ibooker.book1D("PfHFEMEtFractionPlus_BXm2BXm1Empty", "HFEMEtFractionPlus prev empty 2 bunches", 50, 0, 1);
662  //meHFEMF_Minus_BXm2BXm1Empty = ibooker.book1D("PfHFEMEtFractionMinus_BXm2BXm1Empty", "HFEMEtFractionMinus prev empty 2 bunches", 50, 0, 1);
664  ibooker.book1D("PfHFEMEtFractionPlus_BXm1Filled", "HFEMEtFractionPlus prev filled bunch", 50, 0, 1);
666  ibooker.book1D("PfHFEMEtFractionMinus_BXm1Filled", "HFEMEtFractionMinus prev filled bunch", 50, 0, 1);
667  //meHFEMF_Plus_BXm2BXm1Filled = ibooker.book1D("PfHFEMEtFractionPlus_BXm2BXm1Filled", "HFEMEtFractionPlus prev filled 2 bunches", 50, 0, 1);
668  //meHFEMF_Minus_BXm2BXm1Filled = ibooker.book1D("PfHFEMEtFractionMinus_BXm2BXm1Filled", "HFEMEtFractionMinus prev filled 2 bunches", 50, 0, 1);
669 
670  map_of_MEs.insert(
671  std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFEMEtFractionPlus", meHFEMF_Plus));
672  map_of_MEs.insert(
673  std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFEMEtFractionMinus", meHFEMF_Minus));
674  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFEMEtFractionPlus_BXm1Empty",
676  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFEMEtFractionMinus_BXm1Empty",
678  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfHFEMEtFractionPlus_BXm2BXm1Empty", meHFEMF_Plus_BXm2BXm1Empty));
679  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfHFEMEtFractionMinus_BXm2BXm1Empty", meHFEMF_Minus_BXm2BXm1Empty));
680  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFEMEtFractionPlus_BXm1Filled",
682  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFEMEtFractionMinus_BXm1Filled",
684  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfHFEMEtFractionPlus_BXm2BXm1Filled", meHFEMF_Plus_BXm2BXm1Filled));
685  //map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"PfHFEMEtFractionMinus_BXm2BXm1Filled", meHFEMF_Minus_BXm2BXm1Filled));
686  /*
687  meMETPhiChargedHadronsBarrel_BXm2BXm1Filled = ibooker.book1D("METPhiChargedHadronsBarrel_BXm2BXm1Filled", "METPhi_PFChargedHadronsBarrel prev two bunches filled", 50, -M_PI,M_PI);
688  meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Filled = ibooker.book1D("METPhiChargedHadronsEndcapPlus_BXm2BXm1Filled", "METPhi_PFChargedHadronsEndcapPlus prev two bunches filled", 50, -M_PI,M_PI);
689  meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Filled = ibooker.book1D("METPhiChargedHadronsEndcapMinus_BXm2BXm1Filled","METPhi_PFChargedHadronsEndcapMinus prev two bunches filled", 50, -M_PI,M_PI);
690  meMETPhiNeutralHadronsBarrel_BXm2BXm1Filled = ibooker.book1D("METPhiNeutralHadronsBarrel_BXm2BXm1Filled", "METPhi_PFNeutralHadronsBarrel prev two bunches filled", 50, -M_PI,M_PI);
691  meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Filled = ibooker.book1D("METPhiNeutralHadronsEndcapPlus_BXm2BXm1Filled", "METPhi_PFNeutralHadronsEndcapPlus prev two bunches filled", 50, -M_PI,M_PI);
692  meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Filled = ibooker.book1D("METPhiNeutralHadronsEndcapMinus_BXm2BXm1Filled","METPhi_PFNeutralHadronsEndcapMinus prev two bunches filled", 50, -M_PI,M_PI);
693  meMETPhiPhotonsBarrel_BXm2BXm1Filled = ibooker.book1D("METPhiPhotonsBarrel_BXm2BXm1Filled", "METPhi_PFPhotonsBarrel prev two bunches filled", 50, -M_PI,M_PI);
694  meMETPhiPhotonsEndcapPlus_BXm2BXm1Filled = ibooker.book1D("METPhiPhotonsEndcapPlus_BXm2BXm1Filled", "METPhi_PFPhotonsEndcapPlus prev two bunches filled", 50, -M_PI,M_PI);
695  meMETPhiPhotonsEndcapMinus_BXm2BXm1Filled = ibooker.book1D("METPhiPhotonsEndcapMinus_BXm2BXm1Filled", "METPhi_PFPhotonsEndcapMinus prev two bunches filled", 50, -M_PI,M_PI);
696  meMETPhiHFHadronsPlus_BXm2BXm1Filled = ibooker.book1D("METPhiHFHadronsPlus_BXm2BXm1Filled", "METPhi_PFHFHadronsPlus prev two bunches filled", 50, -M_PI,M_PI);
697  meMETPhiHFHadronsMinus_BXm2BXm1Filled = ibooker.book1D("METPhiHFHadronsMinus_BXm2BXm1Filled", "METPhi_PFHFHadronsMinus prev two bunches filled", 50, -M_PI,M_PI);
698  meMETPhiHFEGammasPlus_BXm2BXm1Filled = ibooker.book1D("METPhiHFEGammasPlus_BXm2BXm1Filled", "METPhi_PFHFEGammasPlus prev two bunches filled", 50, -M_PI,M_PI);
699  meMETPhiHFEGammasMinus_BXm2BXm1Filled = ibooker.book1D("METPhiHFEGammasMinus_BXm2BXm1Filled", "METPhi_PFHFEGammasMinus prev two bunches filled", 50, -M_PI,M_PI);
700 
701  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiChargedHadronsBarrel_BXm2BXm1Filled" ,meMETPhiChargedHadronsBarrel_BXm2BXm1Filled));
702  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiChargedHadronsEndcapPlus_BXm2BXm1Filled" ,meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Filled));
703  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiChargedHadronsEndcapMinus_BXm2BXm1Filled" ,meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Filled));
704  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiNeutralHadronsBarrel_BXm2BXm1Filled" ,meMETPhiNeutralHadronsBarrel_BXm2BXm1Filled));
705  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiNeutralHadronsEndcapPlus_BXm2BXm1Filled" ,meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Filled));
706  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiNeutralHadronsEndcapMinus_BXm2BXm1Filled" ,meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Filled));
707  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiPhotonsBarrel_BXm2BXm1Filled" ,meMETPhiPhotonsBarrel_BXm2BXm1Filled));
708  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiPhotonsEndcapPlus_BXm2BXm1Filled" ,meMETPhiPhotonsEndcapPlus_BXm2BXm1Filled));
709  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiPhotonsEndcapMinus_BXm2BXm1Filled" ,meMETPhiPhotonsEndcapMinus_BXm2BXm1Filled));
710  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiHFHadronsPlus_BXm2BXm1Filled" ,meMETPhiHFHadronsPlus_BXm2BXm1Filled));
711  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiHFHadronsMinus_BXm2BXm1Filled" ,meMETPhiHFHadronsMinus_BXm2BXm1Filled));
712  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiHFEGammasPlus_BXm2BXm1Filled" ,meMETPhiHFEGammasPlus_BXm2BXm1Filled));
713  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiHFEGammasMinus_BXm2BXm1Filled" ,meMETPhiHFEGammasMinus_BXm2BXm1Filled));
714 
715  meMETPhiChargedHadronsBarrel_BXm2BXm1Empty = ibooker.book1D("METPhiChargedHadronsBarrel_BXm2BXm1Empty", "METPhi_PFChargedHadronsBarrel prev two bunches empty", 50, -M_PI,M_PI);
716  meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Empty = ibooker.book1D("METPhiChargedHadronsEndcapPlus_BXm2BXm1Empty", "METPhi_PFChargedHadronsEndcapPlus prev two bunches empty", 50, -M_PI,M_PI);
717  meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Empty = ibooker.book1D("METPhiChargedHadronsEndcapMinus_BXm2BXm1Empty","METPhi_PFChargedHadronsEndcapMinus prev two bunches empty", 50, -M_PI,M_PI);
718  meMETPhiNeutralHadronsBarrel_BXm2BXm1Empty = ibooker.book1D("METPhiNeutralHadronsBarrel_BXm2BXm1Empty", "METPhi_PFNeutralHadronsBarrel prev two bunches empty", 50, -M_PI,M_PI);
719  meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Empty = ibooker.book1D("METPhiNeutralHadronsEndcapPlus_BXm2BXm1Empty", "METPhi_PFNeutralHadronsEndcapPlus prev two bunches empty", 50, -M_PI,M_PI);
720  meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Empty = ibooker.book1D("METPhiNeutralHadronsEndcapMinus_BXm2BXm1Empty","METPhi_PFNeutralHadronsEndcapMinus prev two bunches empty", 50, -M_PI,M_PI);
721  meMETPhiPhotonsBarrel_BXm2BXm1Empty = ibooker.book1D("METPhiPhotonsBarrel_BXm2BXm1Empty", "METPhi_PFPhotonsBarrel prev two bunches empty", 50, -M_PI,M_PI);
722  meMETPhiPhotonsEndcapPlus_BXm2BXm1Empty = ibooker.book1D("METPhiPhotonsEndcapPlus_BXm2BXm1Empty", "METPhi_PFPhotonsEndcapPlus prev two bunches empty", 50, -M_PI,M_PI);
723  meMETPhiPhotonsEndcapMinus_BXm2BXm1Empty = ibooker.book1D("METPhiPhotonsEndcapMinus_BXm2BXm1Empty", "METPhi_PFPhotonsEndcapMinus prev two bunches empty", 50, -M_PI,M_PI);
724  meMETPhiHFHadronsPlus_BXm2BXm1Empty = ibooker.book1D("METPhiHFHadronsPlus_BXm2BXm1Empty", "METPhi_PFHFHadronsPlus prev two bunches empty", 50, -M_PI,M_PI);
725  meMETPhiHFHadronsMinus_BXm2BXm1Empty = ibooker.book1D("METPhiHFHadronsMinus_BXm2BXm1Empty", "METPhi_PFHFHadronsMinus prev two bunches empty", 50, -M_PI,M_PI);
726  meMETPhiHFEGammasPlus_BXm2BXm1Empty = ibooker.book1D("METPhiHFEGammasPlus_BXm2BXm1Empty", "METPhi_PFHFEGammasPlus prev two bunches empty", 50, -M_PI,M_PI);
727  meMETPhiHFEGammasMinus_BXm2BXm1Empty = ibooker.book1D("METPhiHFEGammasMinus_BXm2BXm1Empty", "METPhi_PFHFEGammasMinus prev two bunches empty", 50, -M_PI,M_PI);
728 
729  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiChargedHadronsBarrel_BXm2BXm1Empty" ,meMETPhiChargedHadronsBarrel_BXm2BXm1Empty));
730  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiChargedHadronsEndcapPlus_BXm2BXm1Empty" ,meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Empty));
731  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiChargedHadronsEndcapMinus_BXm2BXm1Empty" ,meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Empty));
732  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiNeutralHadronsBarrel_BXm2BXm1Empty" ,meMETPhiNeutralHadronsBarrel_BXm2BXm1Empty));
733  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiNeutralHadronsEndcapPlus_BXm2BXm1Empty" ,meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Empty));
734  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiNeutralHadronsEndcapMinus_BXm2BXm1Empty" ,meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Empty));
735  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiPhotonsBarrel_BXm2BXm1Empty" ,meMETPhiPhotonsBarrel_BXm2BXm1Empty));
736  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiPhotonsEndcapPlus_BXm2BXm1Empty" ,meMETPhiPhotonsEndcapPlus_BXm2BXm1Empty));
737  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiPhotonsEndcapMinus_BXm2BXm1Empty" ,meMETPhiPhotonsEndcapMinus_BXm2BXm1Empty));
738  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiHFHadronsPlus_BXm2BXm1Empty" ,meMETPhiHFHadronsPlus_BXm2BXm1Empty));
739  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiHFHadronsMinus_BXm2BXm1Empty" ,meMETPhiHFHadronsMinus_BXm2BXm1Empty));
740  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiHFEGammasPlus_BXm2BXm1Empty" ,meMETPhiHFEGammasPlus_BXm2BXm1Empty));
741  map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+"/"+"METPhiHFEGammasMinus_BXm2BXm1Empty" ,meMETPhiHFEGammasMinus_BXm2BXm1Empty));
742  */
743  //histos where one previous bunch was empty/filled
745  ibooker.book1D("PfPhotonEtFraction_BXm1Empty", "photonEtFraction() prev empty bunch", 50, 0, 1);
747  ibooker.book1D("PfPhotonEtFraction_BXm1Filled", "photonEtFraction() prev filled bunch", 50, 0, 1);
749  "PfNeutralHadronEtFraction_BXm1Empty", "neutralHadronEtFraction() prev empty bunch", 50, 0, 1);
751  "PfNeutralHadronEtFraction_BXm1Filled", "neutralHadronEtFraction() prev filled bunch", 50, 0, 1);
753  "PfChargedHadronEtFraction_BXm1Empty", "chargedHadronEtFraction() prev empty bunch", 50, 0, 1);
755  "PfChargedHadronEtFraction_BXm1Filled", "chargedHadronEtFraction() prev filled bunch", 50, 0, 1);
756  meMET_BXm1Empty = ibooker.book1D("MET_BXm1Empty", "MET prev empty bunch", 200, 0, 1000);
757  meMET_BXm1Filled = ibooker.book1D("MET_BXm1Filled", "MET prev filled bunch", 200, 0, 1000);
758  meSumET_BXm1Empty = ibooker.book1D("SumET_BXm1Empty", "SumET prev empty bunch", 400, 0, 4000);
759  meSumET_BXm1Filled = ibooker.book1D("SumET_BXm1Filled", "SumET prev filled bunch", 400, 0, 4000);
760 
761  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfPhotonEtFraction_BXm1Empty",
763  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfPhotonEtFraction_BXm1Filled",
765  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfNeutralHadronEtFraction_BXm1Empty",
767  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfNeutralEtFraction_BXm1Filled",
769  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfChargedHadronEtFraction_BXm1Empty",
771  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfChargedEtFraction_BXm1Filled",
773  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MET_BXm1Empty", meMET_BXm1Empty));
774  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MET_BXm1Filled", meMET_BXm1Filled));
775  map_of_MEs.insert(
776  std::pair<std::string, MonitorElement*>(DirName + "/" + "SumET_BXm1Empty", meSumET_BXm1Empty));
777  map_of_MEs.insert(
778  std::pair<std::string, MonitorElement*>(DirName + "/" + "SumET_BXm1Filled", meSumET_BXm1Filled));
779 
781  "METPhiChargedHadronsBarrel_BXm1Filled", "METPhi_PFChargedHadronsBarrel prev bunch filled", 50, -M_PI, M_PI);
783  ibooker.book1D("METPhiChargedHadronsEndcapPlus_BXm1Filled",
784  "METPhi_PFChargedHadronsEndcapPlus prev bunch filled",
785  50,
786  -M_PI,
787  M_PI);
789  ibooker.book1D("METPhiChargedHadronsEndcapMinus_BXm1Filled",
790  "METPhi_PFChargedHadronsEndcapMinus prev bunch filled",
791  50,
792  -M_PI,
793  M_PI);
795  "METPhiNeutralHadronsBarrel_BXm1Filled", "METPhi_PFNeutralHadronsBarrel prev bunch filled", 50, -M_PI, M_PI);
797  ibooker.book1D("METPhiNeutralHadronsEndcapPlus_BXm1Filled",
798  "METPhi_PFNeutralHadronsEndcapPlus prev bunch filled",
799  50,
800  -M_PI,
801  M_PI);
803  ibooker.book1D("METPhiNeutralHadronsEndcapMinus_BXm1Filled",
804  "METPhi_PFNeutralHadronsEndcapMinus prev bunch filled",
805  50,
806  -M_PI,
807  M_PI);
809  "METPhiPhotonsBarrel_BXm1Filled", "METPhi_PFPhotonsBarrel prev bunch filled", 50, -M_PI, M_PI);
811  "METPhiPhotonsEndcapPlus_BXm1Filled", "METPhi_PFPhotonsEndcapPlus prev bunch filled", 50, -M_PI, M_PI);
813  "METPhiPhotonsEndcapMinus_BXm1Filled", "METPhi_PFPhotonsEndcapMinus prev bunch filled", 50, -M_PI, M_PI);
815  "METPhiHFHadronsPlus_BXm1Filled", "METPhi_PFHFHadronsPlus prev bunch filled", 50, -M_PI, M_PI);
817  "METPhiHFHadronsMinus_BXm1Filled", "METPhi_PFHFHadronsMinus prev bunch filled", 50, -M_PI, M_PI);
819  "METPhiHFEGammasPlus_BXm1Filled", "METPhi_PFHFEGammasPlus prev bunch filled", 50, -M_PI, M_PI);
821  "METPhiHFEGammasMinus_BXm1Filled", "METPhi_PFHFEGammasMinus prev bunch filled", 50, -M_PI, M_PI);
822 
823  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
824  DirName + "/" + "METPhiChargedHadronsBarrel_BXm1Filled", meMETPhiChargedHadronsBarrel_BXm1Filled));
825  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
826  DirName + "/" + "METPhiChargedHadronsEndcapPlus_BXm1Filled", meMETPhiChargedHadronsEndcapPlus_BXm1Filled));
827  map_of_MEs.insert(
828  std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiChargedHadronsEndcapMinus_BXm1Filled",
830  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
831  DirName + "/" + "METPhiNeutralHadronsBarrel_BXm1Filled", meMETPhiNeutralHadronsBarrel_BXm1Filled));
832  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
833  DirName + "/" + "METPhiNeutralHadronsEndcapPlus_BXm1Filled", meMETPhiNeutralHadronsEndcapPlus_BXm1Filled));
834  map_of_MEs.insert(
835  std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiNeutralHadronsEndcapMinus_BXm1Filled",
837  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiPhotonsBarrel_BXm1Filled",
839  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiPhotonsEndcapPlus_BXm1Filled",
841  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiPhotonsEndcapMinus_BXm1Filled",
843  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiHFHadronsPlus_BXm1Filled",
845  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiHFHadronsMinus_BXm1Filled",
847  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiHFEGammasPlus_BXm1Filled",
849  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiHFEGammasMinus_BXm1Filled",
851 
853  "METPhiChargedHadronsBarrel_BXm1Empty", "METPhi_PFChargedHadronsBarrel prev bunch empty", 50, -M_PI, M_PI);
855  ibooker.book1D("METPhiChargedHadronsEndcapPlus_BXm1Empty",
856  "METPhi_PFChargedHadronsEndcapPlus prev bunch empty",
857  50,
858  -M_PI,
859  M_PI);
861  ibooker.book1D("METPhiChargedHadronsEndcapMinus_BXm1Empty",
862  "METPhi_PFChargedHadronsEndcapMinus prev bunch empty",
863  50,
864  -M_PI,
865  M_PI);
867  "METPhiNeutralHadronsBarrel_BXm1Empty", "METPhi_PFNeutralHadronsBarrel prev bunch empty", 50, -M_PI, M_PI);
869  ibooker.book1D("METPhiNeutralHadronsEndcapPlus_BXm1Empty",
870  "METPhi_PFNeutralHadronsEndcapPlus prev bunch empty",
871  50,
872  -M_PI,
873  M_PI);
875  ibooker.book1D("METPhiNeutralHadronsEndcapMinus_BXm1Empty",
876  "METPhi_PFNeutralHadronsEndcapMinus prev bunch empty",
877  50,
878  -M_PI,
879  M_PI);
881  ibooker.book1D("METPhiPhotonsBarrel_BXm1Empty", "METPhi_PFPhotonsBarrel prev bunch empty", 50, -M_PI, M_PI);
883  "METPhiPhotonsEndcapPlus_BXm1Empty", "METPhi_PFPhotonsEndcapPlus prev bunch empty", 50, -M_PI, M_PI);
885  "METPhiPhotonsEndcapMinus_BXm1Empty", "METPhi_PFPhotonsEndcapMinus prev bunch empty", 50, -M_PI, M_PI);
887  ibooker.book1D("METPhiHFHadronsPlus_BXm1Empty", "METPhi_PFHFHadronsPlus prev bunch empty", 50, -M_PI, M_PI);
889  "METPhiHFHadronsMinus_BXm1Empty", "METPhi_PFHFHadronsMinus prev bunch empty", 50, -M_PI, M_PI);
891  ibooker.book1D("METPhiHFEGammasPlus_BXm1Empty", "METPhi_PFHFEGammasPlus prev bunch empty", 50, -M_PI, M_PI);
893  "METPhiHFEGammasMinus_BXm1Empty", "METPhi_PFHFEGammasMinus prev bunch empty", 50, -M_PI, M_PI);
894 
895  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
896  DirName + "/" + "METPhiChargedHadronsBarrel_BXm1Empty", meMETPhiChargedHadronsBarrel_BXm1Empty));
897  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
898  DirName + "/" + "METPhiChargedHadronsEndcapPlus_BXm1Empty", meMETPhiChargedHadronsEndcapPlus_BXm1Empty));
899  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
900  DirName + "/" + "METPhiChargedHadronsEndcapMinus_BXm1Empty", meMETPhiChargedHadronsEndcapMinus_BXm1Empty));
901  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
902  DirName + "/" + "METPhiNeutralHadronsBarrel_BXm1Empty", meMETPhiNeutralHadronsBarrel_BXm1Empty));
903  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
904  DirName + "/" + "METPhiNeutralHadronsEndcapPlus_BXm1Empty", meMETPhiNeutralHadronsEndcapPlus_BXm1Empty));
905  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
906  DirName + "/" + "METPhiNeutralHadronsEndcapMinus_BXm1Empty", meMETPhiNeutralHadronsEndcapMinus_BXm1Empty));
907  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiPhotonsBarrel_BXm1Empty",
909  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiPhotonsEndcapPlus_BXm1Empty",
911  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiPhotonsEndcapMinus_BXm1Empty",
913  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiHFHadronsPlus_BXm1Empty",
915  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiHFHadronsMinus_BXm1Empty",
917  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiHFEGammasPlus_BXm1Empty",
919  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiHFEGammasMinus_BXm1Empty",
921 
923  ibooker.book1D("METPhiChargedHadronsBarrel", "METPhi_PFChargedHadronsBarrel", 50, -M_PI, M_PI);
925  ibooker.book1D("METPhiChargedHadronsEndcapPlus", "METPhi_PFChargedHadronsEndcapPlus", 50, -M_PI, M_PI);
927  ibooker.book1D("METPhiChargedHadronsEndcapMinus", "METPhi_PFChargedHadronsEndcapMinus", 50, -M_PI, M_PI);
929  ibooker.book1D("METPhiNeutralHadronsBarrel", "METPhi_PFNeutralHadronsBarrel", 50, -M_PI, M_PI);
931  ibooker.book1D("METPhiNeutralHadronsEndcapPlus", "METPhi_PFNeutralHadronsEndcapPlus", 50, -M_PI, M_PI);
933  ibooker.book1D("METPhiNeutralHadronsEndcapMinus", "METPhi_PFNeutralHadronsEndcapMinus", 50, -M_PI, M_PI);
934  meMETPhiPhotonsBarrel = ibooker.book1D("METPhiPhotonsBarrel", "METPhi_PFPhotonsBarrel", 50, -M_PI, M_PI);
936  ibooker.book1D("METPhiPhotonsEndcapPlus", "METPhi_PFPhotonsEndcapPlus", 50, -M_PI, M_PI);
938  ibooker.book1D("METPhiPhotonsEndcapMinus", "METPhi_PFPhotonsEndcapMinus", 50, -M_PI, M_PI);
939  meMETPhiHFHadronsPlus = ibooker.book1D("METPhiHFHadronsPlus", "METPhi_PFHFHadronsPlus", 50, -M_PI, M_PI);
940  meMETPhiHFHadronsMinus = ibooker.book1D("METPhiHFHadronsMinus", "METPhi_PFHFHadronsMinus", 50, -M_PI, M_PI);
941  meMETPhiHFEGammasPlus = ibooker.book1D("METPhiHFEGammasPlus", "METPhi_PFHFEGammasPlus", 50, -M_PI, M_PI);
942  meMETPhiHFEGammasMinus = ibooker.book1D("METPhiHFEGammasMinus", "METPhi_PFHFEGammasMinus", 50, -M_PI, M_PI);
943 
944  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiChargedHadronsBarrel",
946  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiChargedHadronsEndcapPlus",
948  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiChargedHadronsEndcapMinus",
950  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiNeutralHadronsBarrel",
952  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiNeutralHadronsEndcapPlus",
954  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiNeutralHadronsEndcapMinus",
956  map_of_MEs.insert(
957  std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiPhotonsBarrel", meMETPhiPhotonsBarrel));
958  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiPhotonsEndcapPlus",
960  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiPhotonsEndcapMinus",
962  map_of_MEs.insert(
963  std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiHFHadronsPlus", meMETPhiHFHadronsPlus));
964  map_of_MEs.insert(
965  std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiHFHadronsMinus", meMETPhiHFHadronsMinus));
966  map_of_MEs.insert(
967  std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiHFEGammasPlus", meMETPhiHFEGammasPlus));
968  map_of_MEs.insert(
969  std::pair<std::string, MonitorElement*>(DirName + "/" + "METPhiHFEGammasMinus", meMETPhiHFEGammasMinus));
970  }
971 
972  if (fillPFCandPlots && fillCandidateMap_histos) {
973  if (!profilePFCand_x_.empty()) {
974  etaMinPFCand_.clear();
975  etaMaxPFCand_.clear();
976  typePFCand_.clear();
977  countsPFCand_.clear();
978  MExPFCand_.clear();
979  MEyPFCand_.clear();
980  profilePFCand_x_.clear();
981  profilePFCand_y_.clear();
982  profilePFCand_x_name_.clear();
983  profilePFCand_y_name_.clear();
984  }
985  for (std::vector<edm::ParameterSet>::const_iterator v = diagnosticsParameters_.begin();
986  v != diagnosticsParameters_.end();
987  v++) {
988  double etaMinPFCand = v->getParameter<double>("etaMin");
989  double etaMaxPFCand = v->getParameter<double>("etaMax");
990  int nMinPFCand = v->getParameter<int>("nMin");
991  int nMaxPFCand = v->getParameter<int>("nMax");
992  int nbinsPFCand = v->getParameter<double>("nbins");
993 
994  // etaNBins_.push_back(etaNBins);
995  etaMinPFCand_.push_back(etaMinPFCand);
996  etaMaxPFCand_.push_back(etaMaxPFCand);
997  typePFCand_.push_back(v->getParameter<int>("type"));
998  countsPFCand_.push_back(0);
999  MExPFCand_.push_back(0.);
1000  MEyPFCand_.push_back(0.);
1001 
1002  profilePFCand_x_.push_back(
1003  ibooker.bookProfile(std::string(v->getParameter<std::string>("name")).append("_Px_").c_str(),
1004  std::string(v->getParameter<std::string>("name")) + "Px",
1005  nbinsPFCand,
1006  nMinPFCand,
1007  nMaxPFCand,
1008  -300,
1009  300));
1010  profilePFCand_x_name_.push_back(std::string(v->getParameter<std::string>("name")).append("_Px_"));
1011  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
1013  profilePFCand_x_[profilePFCand_x_.size() - 1]));
1014  profilePFCand_y_.push_back(
1015  ibooker.bookProfile(std::string(v->getParameter<std::string>("name")).append("_Py_").c_str(),
1016  std::string(v->getParameter<std::string>("name")) + "Py",
1017  nbinsPFCand,
1018  nMinPFCand,
1019  nMaxPFCand,
1020  -300,
1021  300));
1022  profilePFCand_y_name_.push_back(std::string(v->getParameter<std::string>("name")).append("_Py_"));
1023  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(
1025  profilePFCand_y_[profilePFCand_y_.size() - 1]));
1026  }
1027  }
1028  }
1029  if (isMiniAODMet_) {
1030  if (fillPFCandPlots &&
1031  fillCandidateMap_histos) { //first bool internal checks for subdirectory filling, second bool given in cfg file, checks that we fill maps only in one module in total
1032  if (!profilePFCand_x_.empty()) {
1033  etaMinPFCand_.clear();
1034  etaMaxPFCand_.clear();
1035  typePFCand_.clear();
1036  countsPFCand_.clear();
1037  profilePFCand_x_.clear();
1038  profilePFCand_y_.clear();
1039  }
1040  for (std::vector<edm::ParameterSet>::const_iterator v = diagnosticsParameters_.begin();
1041  v != diagnosticsParameters_.end();
1042  v++) {
1043  double etaMinPFCand = v->getParameter<double>("etaMin");
1044  double etaMaxPFCand = v->getParameter<double>("etaMax");
1045 
1046  etaMinPFCand_.push_back(etaMinPFCand);
1047  etaMaxPFCand_.push_back(etaMaxPFCand);
1048  typePFCand_.push_back(v->getParameter<int>("type"));
1049  countsPFCand_.push_back(0);
1050  MExPFCand_.push_back(0.);
1051  MEyPFCand_.push_back(0.);
1052  }
1053  }
1054  }
1055 
1056  if (isPFMet_ || isMiniAODMet_) {
1057  mePhotonEtFraction = ibooker.book1D("PfPhotonEtFraction", "photonEtFraction()", 50, 0, 1);
1058  meNeutralHadronEtFraction = ibooker.book1D("PfNeutralHadronEtFraction", "neutralHadronEtFraction()", 50, 0, 1);
1059  meChargedHadronEtFraction = ibooker.book1D("PfChargedHadronEtFraction", "chargedHadronEtFraction()", 50, 0, 1);
1060  meHFHadronEtFraction = ibooker.book1D("PfHFHadronEtFraction", "HFHadronEtFraction()", 50, 0, 1);
1061  meHFEMEtFraction = ibooker.book1D("PfHFEMEtFraction", "HFEMEtFraction()", 50, 0, 1);
1062 
1063  map_of_MEs.insert(
1064  std::pair<std::string, MonitorElement*>(DirName + "/" + "PfPhotonEtFraction", mePhotonEtFraction));
1065  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfNeutralHadronEtFraction",
1067  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfChargedHadronEtFraction",
1069  map_of_MEs.insert(
1070  std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFHadronEtFraction", meHFHadronEtFraction));
1071  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFEMEtFraction", meHFEMEtFraction));
1072 
1074  ibooker.bookProfile("PfPhotonEtFraction_profile", "photonEtFraction()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1);
1076  "PfNeutralHadronEtFraction_profile", "neutralHadronEtFraction()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1);
1078  "PfChargedHadronEtFraction_profile", "chargedHadronEtFraction()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1);
1080  "PfHFHadronEtFraction_profile", "HFHadronEtFraction()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1);
1082  ibooker.bookProfile("PfHFEMEtFraction_profile", "HFEMEtFraction()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1);
1088 
1089  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfPhotonEtFraction_profile",
1091  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfNeutralHadronEtFraction_profile",
1093  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfChargedHadronEtFraction_profile",
1095  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFHadronEtFraction_profile",
1097  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFEMEtFraction_profile",
1099 
1100  mePhotonEt = ibooker.book1D("PfPhotonEt", "photonEt()", 50, 0, 1000);
1101  meNeutralHadronEt = ibooker.book1D("PfNeutralHadronEt", "neutralHadronEt()", 50, 0, 1000);
1102  meElectronEt = ibooker.book1D("PfElectronEt", "electronEt()", 50, 0, 100);
1103  meChargedHadronEt = ibooker.book1D("PfChargedHadronEt", "chargedHadronEt()", 50, 0, 2000);
1104  meMuonEt = ibooker.book1D("PfMuonEt", "muonEt()", 50, 0, 100);
1105  meHFHadronEt = ibooker.book1D("PfHFHadronEt", "HFHadronEt()", 50, 0, 2000);
1106  meHFEMEt = ibooker.book1D("PfHFEMEt", "HFEMEt()", 50, 0, 1000);
1107 
1108  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfPhotonEt", mePhotonEt));
1109  map_of_MEs.insert(
1110  std::pair<std::string, MonitorElement*>(DirName + "/" + "PfNeutralHadronEt", meNeutralHadronEt));
1111  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfElectronEt", meElectronEt));
1112  map_of_MEs.insert(
1113  std::pair<std::string, MonitorElement*>(DirName + "/" + "PfChargedHadronEt", meChargedHadronEt));
1114  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfMuonEt", meMuonEt));
1115  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFHadronEt", meHFHadronEt));
1116  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFEMEt", meHFEMEt));
1117 
1119  ibooker.bookProfile("PfPhotonEt_profile", "photonEt()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1000);
1121  "PfNeutralHadronEt_profile", "neutralHadronEt()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1000);
1123  "PfChargedHadronEt_profile", "chargedHadronEt()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1000);
1125  ibooker.bookProfile("PfHFHadronEt_profile", "HFHadronEt()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1000);
1126  meHFEMEt_profile = ibooker.bookProfile("PfHFEMEt_profile", "HFEMEt()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1000);
1127 
1128  mePhotonEt_profile->setAxisTitle("nvtx", 1);
1131  meHFHadronEt_profile->setAxisTitle("nvtx", 1);
1132  meHFEMEt_profile->setAxisTitle("nvtx", 1);
1133 
1134  map_of_MEs.insert(
1135  std::pair<std::string, MonitorElement*>(DirName + "/" + "PfPhotonEt_profile", mePhotonEt_profile));
1136  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfNeutralHadronEt_profile",
1138  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfChargedHadronEt_profile",
1140  map_of_MEs.insert(
1141  std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFHadronEt_profile", meHFHadronEt_profile));
1142  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "PfHFEMEt_profile", meHFEMEt_profile));
1143  }
1144 
1145  if (isCaloMet_) {
1146  if (fill_met_high_level_histo) { //now configurable in python file
1147  hMExLS = ibooker.book2D("MExLS", "MEx_LS", 200, -200, 200, 250, 0., 2500.);
1148  hMExLS->setAxisTitle("MEx [GeV]", 1);
1149  hMExLS->setAxisTitle("Lumi Section", 2);
1150  hMExLS->setOption("colz");
1151  hMEyLS = ibooker.book2D("MEyLS", "MEy_LS", 200, -200, 200, 250, 0., 2500.);
1152  hMEyLS->setAxisTitle("MEy [GeV]", 1);
1153  hMEyLS->setAxisTitle("Lumi Section", 2);
1154  hMEyLS->setOption("colz");
1155  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MExLS", hMExLS));
1156  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "MEyLS", hMEyLS));
1157  }
1158  }
1159 
1160  hMETRate = ibooker.book1D("METRate", "METRate", 200, 0, 1000);
1161  map_of_MEs.insert(std::pair<std::string, MonitorElement*>(DirName + "/" + "METRate", hMETRate));
1162 
1163  ibooker.setCurrentFolder("JetMET");
1164  lumisecME = ibooker.book1D("lumisec", "lumisec", 2501, -1., 2500.);
1165  map_of_MEs.insert(std::pair<std::string, MonitorElement*>("JetMET/lumisec", lumisecME));
1166  } //all non Z plots (restrict Z Plots only for resolution study)
1167 }
MonitorElement * meCHF_EndcapMinus_BXm1Filled
Definition: METAnalyzer.h:458
MonitorElement * meMETPhiNeutralHadronsEndcapMinus_BXm1Empty
Definition: METAnalyzer.h:409
MonitorElement * hMExLS
Definition: METAnalyzer.h:325
MonitorElement * meMETPhiNeutralHadronsEndcapMinus
Definition: METAnalyzer.h:544
MonitorElement * mePhF_EndcapMinus_BXm1Empty
Definition: METAnalyzer.h:484
MonitorElement * hSumET
Definition: METAnalyzer.h:323
MonitorElement * meMETPhiChargedHadronsEndcapPlus_BXm1Filled
Definition: METAnalyzer.h:426
MonitorElement * meNeutralHadronEtFraction
Definition: METAnalyzer.h:365
MonitorElement * meMETPhiHFHadronsPlus_BXm1Filled
Definition: METAnalyzer.h:434
MonitorElement * meNeutralHadronEtFraction_profile
Definition: METAnalyzer.h:565
MonitorElement * mePhF_EndcapMinus_BXm1Filled
Definition: METAnalyzer.h:490
MonitorElement * meMETPhiChargedHadronsEndcapPlus
Definition: METAnalyzer.h:540
MonitorElement * meHFHadF_Plus_BXm1Filled
Definition: METAnalyzer.h:501
MonitorElement * meNHF_EndcapPlus_BXm1Empty
Definition: METAnalyzer.h:467
MonitorElement * hMEy
Definition: METAnalyzer.h:307
MonitorElement * meMETPhiHFEGammasPlus
Definition: METAnalyzer.h:550
MonitorElement * hCaloMETPhi020
Definition: METAnalyzer.h:332
MonitorElement * mePhotonEt
Definition: METAnalyzer.h:364
std::vector< edm::ParameterSet > diagnosticsParameters_
Definition: METAnalyzer.h:254
MonitorElement * meChargedHadronEtFraction_profile
Definition: METAnalyzer.h:567
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:36
MonitorElement * meMETPhiPhotonsEndcapPlus_BXm1Empty
Definition: METAnalyzer.h:411
std::vector< int > typePFCand_
Definition: METAnalyzer.h:537
MonitorElement * meZJets_u_perp_ZPt_150_290
Definition: METAnalyzer.h:589
MonitorElement * meMETPhiHFHadronsMinus_BXm1Empty
Definition: METAnalyzer.h:414
MonitorElement * meMET_BXm1Filled
Definition: METAnalyzer.h:422
MonitorElement * meZJets_u_perp_ZPt_75_150
Definition: METAnalyzer.h:588
MonitorElement * hCaloHadEtInHF
Definition: METAnalyzer.h:343
std::vector< double > MExPFCand_
Definition: METAnalyzer.h:536
virtual void setOption(const char *option)
MonitorElement * meHFHadF_Minus_BXm1Empty
Definition: METAnalyzer.h:498
MonitorElement * meZJets_u_perp_ZPt_0_15
Definition: METAnalyzer.h:584
bool isCaloMet_
Definition: METAnalyzer.h:594
MonitorElement * meSumET_BXm1Empty
Definition: METAnalyzer.h:402
MonitorElement * meZJets_u_par_ZPt_15_30
Definition: METAnalyzer.h:576
MonitorElement * meChargedHadronEtFraction_BXm1Empty
Definition: METAnalyzer.h:400
MonitorElement * hMEx
Definition: METAnalyzer.h:306
std::vector< std::string > profilePFCand_y_name_
Definition: METAnalyzer.h:535
std::vector< MonitorElement * > profilePFCand_y_
Definition: METAnalyzer.h:534
MonitorElement * meZJets_u_par
Definition: METAnalyzer.h:574
MonitorElement * hCaloHadEtInHE
Definition: METAnalyzer.h:342
MonitorElement * hMET_eeBadScFilter
Definition: METAnalyzer.h:315
MonitorElement * meMETPhiPhotonsEndcapPlus
Definition: METAnalyzer.h:546
MonitorElement * meZJets_u_par_ZPt_75_150
Definition: METAnalyzer.h:579
MonitorElement * meNeutralHadronEtFraction_BXm1Empty
Definition: METAnalyzer.h:399
MonitorElement * meMETPhiChargedHadronsBarrel_BXm1Empty
Definition: METAnalyzer.h:404
bool fillCandidateMap_histos
Definition: METAnalyzer.h:599
MonitorElement * meHFEMF_Minus_BXm1Empty
Definition: METAnalyzer.h:509
std::vector< double > etaMaxPFCand_
Definition: METAnalyzer.h:536
MonitorElement * meZJets_u_perp_ZPt_30_55
Definition: METAnalyzer.h:586
MonitorElement * hCaloEtFractionHadronic
Definition: METAnalyzer.h:333
MonitorElement * hMEyLS
Definition: METAnalyzer.h:326
MonitorElement * meHFHadF_Minus
Definition: METAnalyzer.h:496
MonitorElement * meMETPhiHFEGammasPlus_BXm1Filled
Definition: METAnalyzer.h:436
MonitorElement * mePhotonEtFraction_BXm1Empty
Definition: METAnalyzer.h:398
double nPVMin_
Definition: METAnalyzer.h:259
MonitorElement * meHFHadronEtFraction
Definition: METAnalyzer.h:371
MonitorElement * meMET_BXm1Empty
Definition: METAnalyzer.h:401
MonitorElement * meCHF_EndcapMinus_BXm1Empty
Definition: METAnalyzer.h:452
MonitorElement * meNHF_EndcapPlus
Definition: METAnalyzer.h:464
MonitorElement * meMETPhiPhotonsEndcapMinus_BXm1Empty
Definition: METAnalyzer.h:412
MonitorElement * hMET_logx
Definition: METAnalyzer.h:328
MonitorElement * hCaloEmEtInHF
Definition: METAnalyzer.h:344
MonitorElement * meHFEMEtFraction_profile
Definition: METAnalyzer.h:571
MonitorElement * mePhF_EndcapPlus
Definition: METAnalyzer.h:480
MonitorElement * hCaloHadEtInHO
Definition: METAnalyzer.h:341
MonitorElement * meHFEMF_Plus_BXm1Filled
Definition: METAnalyzer.h:512
MonitorElement * meChargedHadronEtFraction
Definition: METAnalyzer.h:368
MonitorElement * meMETPhiPhotonsBarrel_BXm1Empty
Definition: METAnalyzer.h:410
MonitorElement * mePhF_Barrel_BXm1Empty
Definition: METAnalyzer.h:482
MonitorElement * meMEx_profile
Definition: METAnalyzer.h:558
MonitorElement * meNHF_Barrel
Definition: METAnalyzer.h:463
MonitorElement * hMET
Definition: METAnalyzer.h:310
MonitorElement * meZJets_u_par_ZPt_290
Definition: METAnalyzer.h:581
MonitorElement * hMET_2
Definition: METAnalyzer.h:311
MonitorElement * hMET_HcalStripHaloFilter
Definition: METAnalyzer.h:320
MonitorElement * meCHF_EndcapMinus
Definition: METAnalyzer.h:449
MonitorElement * meMETPhiHFHadronsPlus_BXm1Empty
Definition: METAnalyzer.h:413
MonitorElement * mePhF_Barrel_BXm1Filled
Definition: METAnalyzer.h:488
MonitorElement * meCHF_EndcapPlus_BXm1Filled
Definition: METAnalyzer.h:457
MonitorElement * meZJets_u_par_ZPt_55_75
Definition: METAnalyzer.h:578
MonitorElement * meMETPhiNeutralHadronsEndcapMinus_BXm1Filled
Definition: METAnalyzer.h:430
MonitorElement * mePhF_EndcapPlus_BXm1Filled
Definition: METAnalyzer.h:489
MonitorElement * meZJets_u_perp
Definition: METAnalyzer.h:583
MonitorElement * meZJets_u_par_ZPt_0_15
Definition: METAnalyzer.h:575
MonitorElement * meMETPhiNeutralHadronsBarrel_BXm1Empty
Definition: METAnalyzer.h:407
MonitorElement * lumisecME
Definition: METAnalyzer.h:304
MonitorElement * meNeutralHadronEtFraction_BXm1Filled
Definition: METAnalyzer.h:420
MonitorElement * meNHF_Barrel_BXm1Filled
Definition: METAnalyzer.h:472
MonitorElement * meMETPhiNeutralHadronsEndcapPlus_BXm1Empty
Definition: METAnalyzer.h:408
bool fill_met_high_level_histo
Definition: METAnalyzer.h:598
MonitorElement * hMETPhi
Definition: METAnalyzer.h:322
MonitorElement * hCaloEmEtInEE
Definition: METAnalyzer.h:345
MonitorElement * hMET_HBHEIsoNoiseFilter
Definition: METAnalyzer.h:318
MonitorElement * mePhF_EndcapMinus
Definition: METAnalyzer.h:481
MonitorElement * meZJets_u_perp_ZPt_55_75
Definition: METAnalyzer.h:587
MonitorElement * meMETPhiHFEGammasMinus
Definition: METAnalyzer.h:551
MonitorElement * meMuonEt
Definition: METAnalyzer.h:370
MonitorElement * meHFEMEt_profile
Definition: METAnalyzer.h:572
MonitorElement * bookProfile(TString const &name, TString const &title, int nchX, double lowX, double highX, int, double lowY, double highY, char const *option="s", FUNC onbooking=NOOP())
Definition: DQMStore.h:399
MonitorElement * mePhotonEtFraction_BXm1Filled
Definition: METAnalyzer.h:419
MonitorElement * hSumET_logx
Definition: METAnalyzer.h:329
MonitorElement * meNHF_EndcapPlus_BXm1Filled
Definition: METAnalyzer.h:473
MonitorElement * hMET_HBHENoiseFilter
Definition: METAnalyzer.h:313
MonitorElement * meMETPhiPhotonsEndcapMinus_BXm1Filled
Definition: METAnalyzer.h:433
MonitorElement * meZJets_u_par_ZPt_150_290
Definition: METAnalyzer.h:580
MonitorElement * meCHF_Barrel_BXm1Filled
Definition: METAnalyzer.h:456
MonitorElement * meMETPhiHFHadronsMinus_BXm1Filled
Definition: METAnalyzer.h:435
MonitorElement * meZJets_u_perp_ZPt_290
Definition: METAnalyzer.h:590
MonitorElement * meHFEMF_Minus
Definition: METAnalyzer.h:507
MonitorElement * hCaloEmEtFraction
Definition: METAnalyzer.h:334
MonitorElement * meMETPhiChargedHadronsBarrel
Definition: METAnalyzer.h:539
MonitorElement * meNHF_Barrel_BXm1Empty
Definition: METAnalyzer.h:466
MonitorElement * meChargedHadronEt
Definition: METAnalyzer.h:369
MonitorElement * meMETPhiChargedHadronsEndcapMinus_BXm1Filled
Definition: METAnalyzer.h:427
MonitorElement * hMETSig
Definition: METAnalyzer.h:309
UseScope< MonitorElementData::Scope::LUMI > UseLumiScope
Definition: DQMStore.h:540
MonitorElement * meChargedHadronEt_profile
Definition: METAnalyzer.h:568
MonitorElement * meCHF_Barrel_BXm1Empty
Definition: METAnalyzer.h:450
MonitorElement * meMETPhiNeutralHadronsEndcapPlus_BXm1Filled
Definition: METAnalyzer.h:429
std::vector< double > MEyPFCand_
Definition: METAnalyzer.h:536
MonitorElement * mePhotonEtFraction
Definition: METAnalyzer.h:363
#define M_PI
MonitorElement * hMET_EcalDeadCellBoundaryFilter
Definition: METAnalyzer.h:317
MonitorElement * mePhotonEt_profile
Definition: METAnalyzer.h:564
MonitorElement * meCHF_EndcapPlus
Definition: METAnalyzer.h:448
MonitorElement * meZJets_u_perp_ZPt_15_30
Definition: METAnalyzer.h:585
MonitorElement * meZJets_u_par_ZPt_30_55
Definition: METAnalyzer.h:577
MonitorElement * meMETPhiHFEGammasMinus_BXm1Empty
Definition: METAnalyzer.h:416
MonitorElement * meElectronEt
Definition: METAnalyzer.h:367
MonitorElement * meMET_profile
Definition: METAnalyzer.h:560
MonitorElement * meMETPhiChargedHadronsEndcapMinus
Definition: METAnalyzer.h:541
MonitorElement * meHFHadronEt
Definition: METAnalyzer.h:372
MonitorElement * hCaloEmEtInEB
Definition: METAnalyzer.h:346
MonitorElement * meMETPhiPhotonsBarrel
Definition: METAnalyzer.h:545
MonitorElement * hCaloHadEtInHB
Definition: METAnalyzer.h:340
MonitorElement * meHFHadF_Plus_BXm1Empty
Definition: METAnalyzer.h:497
MonitorElement * meMETPhiPhotonsBarrel_BXm1Filled
Definition: METAnalyzer.h:431
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
Definition: DQMStore.h:212
double nPVMax_
Definition: METAnalyzer.h:260
MonitorElement * meHFHadF_Minus_BXm1Filled
Definition: METAnalyzer.h:502
MonitorElement * meHFHadronEtFraction_profile
Definition: METAnalyzer.h:569
MonitorElement * meNHF_EndcapMinus_BXm1Empty
Definition: METAnalyzer.h:468
MonitorElement * hMET_CSCTightHalo2015Filter
Definition: METAnalyzer.h:319
MonitorElement * meHFEMEtFraction
Definition: METAnalyzer.h:373
MonitorElement * hMET_CSCTightHaloFilter
Definition: METAnalyzer.h:314
MonitorElement * meHFEMF_Minus_BXm1Filled
Definition: METAnalyzer.h:513
MonitorElement * meMETPhiChargedHadronsEndcapMinus_BXm1Empty
Definition: METAnalyzer.h:406
MonitorElement * hCaloEmEtFraction020
Definition: METAnalyzer.h:338
MonitorElement * meHFEMF_Plus_BXm1Empty
Definition: METAnalyzer.h:508
MonitorElement * mePhF_EndcapPlus_BXm1Empty
Definition: METAnalyzer.h:483
std::vector< int > countsPFCand_
Definition: METAnalyzer.h:537
MonitorElement * meMETPhiHFHadronsPlus
Definition: METAnalyzer.h:548
MonitorElement * hMET_EcalDeadCellTriggerFilter
Definition: METAnalyzer.h:316
MonitorElement * meHFEMEt
Definition: METAnalyzer.h:374
std::vector< double > etaMinPFCand_
Definition: METAnalyzer.h:536
MonitorElement * meChargedHadronEtFraction_BXm1Filled
Definition: METAnalyzer.h:421
MonitorElement * meMETPhiHFEGammasMinus_BXm1Filled
Definition: METAnalyzer.h:437
MonitorElement * meMEy_profile
Definition: METAnalyzer.h:559
MonitorElement * meMETPhiPhotonsEndcapPlus_BXm1Filled
Definition: METAnalyzer.h:432
MonitorElement * meHFEMF_Plus
Definition: METAnalyzer.h:506
std::vector< std::string > profilePFCand_x_name_
Definition: METAnalyzer.h:535
MonitorElement * meSumET_profile
Definition: METAnalyzer.h:561
MonitorElement * meMETPhiHFEGammasPlus_BXm1Empty
Definition: METAnalyzer.h:415
MonitorElement * meMETPhiNeutralHadronsBarrel
Definition: METAnalyzer.h:542
MonitorElement * meCHF_Barrel
Definition: METAnalyzer.h:447
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
bool isMiniAODMet_
Definition: METAnalyzer.h:596
MonitorElement * meHFHadronEt_profile
Definition: METAnalyzer.h:570
MonitorElement * meMETPhiPhotonsEndcapMinus
Definition: METAnalyzer.h:547
MonitorElement * hMETRate
Definition: METAnalyzer.h:251
std::vector< MonitorElement * > profilePFCand_x_
Definition: METAnalyzer.h:534
MonitorElement * meNeutralHadronEt_profile
Definition: METAnalyzer.h:566
MonitorElement * meHFHadF_Plus
Definition: METAnalyzer.h:495
MonitorElement * meCHF_EndcapPlus_BXm1Empty
Definition: METAnalyzer.h:451
MonitorElement * mePhF_Barrel
Definition: METAnalyzer.h:479
MonitorElement * mePhotonEtFraction_profile
Definition: METAnalyzer.h:563
MonitorElement * meMETPhiChargedHadronsEndcapPlus_BXm1Empty
Definition: METAnalyzer.h:405
MonitorElement * meMETPhiNeutralHadronsBarrel_BXm1Filled
Definition: METAnalyzer.h:428
MonitorElement * meMETPhiHFHadronsMinus
Definition: METAnalyzer.h:549
MonitorElement * meMETPhiChargedHadronsBarrel_BXm1Filled
Definition: METAnalyzer.h:425
MonitorElement * meNHF_EndcapMinus
Definition: METAnalyzer.h:465
MonitorElement * meSumET_BXm1Filled
Definition: METAnalyzer.h:423
MonitorElement * meNHF_EndcapMinus_BXm1Filled
Definition: METAnalyzer.h:474
MonitorElement * meMETPhiNeutralHadronsEndcapPlus
Definition: METAnalyzer.h:543
MonitorElement * meNeutralHadronEt
Definition: METAnalyzer.h:366
virtual void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)

◆ dqmBeginRun()

void METAnalyzer::dqmBeginRun ( const edm::Run iRun,
const edm::EventSetup iSetup 
)
overridevirtual

Initialize run-based parameters.

Reimplemented from DQMOneEDAnalyzer<>.

Definition at line 1170 of file METAnalyzer.cc.

References gather_cfg::cout, newFWLiteAna::found, edm::EventSetup::getData(), mps_fire::i, optionsL1T::menu, cond::persistency::search(), electronDataDiscovery::search2(), and AlCaHLTBitMon_QueryRunRegistry::string.

1170  {
1171  const L1GtTriggerMenu* menu = &iSetup.getData(l1gtTrigMenuToken_);
1172  for (CItAlgo techTrig = menu->gtTechnicalTriggerMap().begin(); techTrig != menu->gtTechnicalTriggerMap().end();
1173  ++techTrig) {
1174  if ((techTrig->second).algoName() == m_l1algoname_) {
1175  m_bitAlgTechTrig_ = (techTrig->second).algoBitNumber();
1176  break;
1177  }
1178  }
1179 
1180  // std::cout << "Run " << iRun.run() << " hltconfig.init "
1181  // << hltConfig_.init(iRun,iSetup,triggerResultsLabel_.process(),changed_) << " length: "<<hltConfig_.triggerNames().size()<<" changed "<<changed_<<std::endl;
1182  bool changed(true);
1183  if (hltConfig_.init(iRun, iSetup, triggerResultsLabel_.process(), changed)) {
1184  if (changed) {
1185  //hltConfig_.dump("ProcessName");
1186  //hltConfig_.dump("GlobalTag");
1187  //hltConfig_.dump("TableName");
1188  // hltConfig_.dump("Streams");
1189  // hltConfig_.dump("Datasets");
1190  // hltConfig_.dump("PrescaleTable");
1191  // hltConfig_.dump("ProcessPSet");
1192  }
1193  } else {
1194  if (verbose_)
1195  std::cout << "HLTEventAnalyzerAOD::analyze:"
1196  << " config extraction failure with process name " << triggerResultsLabel_.process() << std::endl;
1197  }
1198 
1199  triggerSelectedSubFolders_ = parameters.getParameter<edm::VParameterSet>("triggerSelectedSubFolders");
1200  for (std::vector<GenericTriggerEventFlag*>::const_iterator it = triggerFolderEventFlag_.begin();
1201  it != triggerFolderEventFlag_.end();
1202  it++) {
1203  int pos = it - triggerFolderEventFlag_.begin();
1204  if ((*it)->on()) {
1205  (*it)->initRun(iRun, iSetup);
1206  if (triggerSelectedSubFolders_[pos].exists(std::string("hltDBKey"))) {
1207  if ((*it)->expressionsFromDB((*it)->hltDBKey(), iSetup)[0] != "CONFIG_ERROR")
1208  triggerFolderExpr_[pos] = (*it)->expressionsFromDB((*it)->hltDBKey(), iSetup);
1209  }
1210  }
1211  }
1212  if (isMiniAODMet_) {
1213  bool changed_filter = true;
1214  std::vector<int> initializeFilter(8, -1); //we have 8 filters at the moment
1215  miniaodFilterIndex_ = initializeFilter;
1216  if (FilterhltConfig_.init(iRun, iSetup, METFilterMiniAODLabel_.process(), changed_filter)) {
1217  miniaodfilterdec = 0;
1218  for (unsigned int i = 0; i < FilterhltConfig_.size(); i++) {
1220  5); //actual label of filter, the first 5 items are Flag_, so stripped off
1222  HBHENoiseStringMiniAOD; //all filters end with DQM, which is not in the flag --> ONLY not for HBHEFilters
1223  std::size_t found = search2.find(search);
1224  if (found != std::string::npos) {
1225  miniaodFilterIndex_[0] = i;
1226  }
1227  search2 = CSCHaloResultTag_.label().substr(0, CSCHaloResultTag_.label().size() - 3);
1228  found = search2.find(search);
1229  if (found != std::string::npos) {
1230  miniaodFilterIndex_[1] = i;
1231  }
1232  search2 = eeBadScFilterTag_.label().substr(0, eeBadScFilterTag_.label().size() - 3);
1233  found = search2.find(search);
1234  if (found != std::string::npos) {
1235  miniaodFilterIndex_[2] = i;
1236  }
1238  found = search2.find(search);
1239  if (found != std::string::npos) {
1240  miniaodFilterIndex_[3] = i;
1241  }
1242  search2 = CSCHalo2015ResultTag_.label().substr(0, CSCHalo2015ResultTag_.label().size() - 3);
1243  found = search2.find(search);
1244  if (found != std::string::npos) {
1245  miniaodFilterIndex_[4] = i;
1246  }
1248  found = search2.find(search);
1249  if (found != std::string::npos) {
1250  miniaodFilterIndex_[5] = i;
1251  }
1253  found = search2.find(search);
1254  if (found != std::string::npos) {
1255  miniaodFilterIndex_[6] = i;
1256  }
1257  search2 = HcalStripHaloTag_.label().substr(0, HcalStripHaloTag_.label().size() - 3);
1258  found = search2.find(search);
1259  if (found != std::string::npos) {
1260  miniaodFilterIndex_[7] = i;
1261  }
1262  }
1263  } else if (FilterhltConfig_.init(iRun, iSetup, METFilterMiniAODLabel2_.process(), changed_filter)) {
1264  miniaodfilterdec = 1;
1265  for (unsigned int i = 0; i < FilterhltConfig_.size(); i++) {
1267  5); //actual label of filter, the first 5 items are Flag_, so stripped off
1269  HBHENoiseStringMiniAOD; //all filters end with DQM, which is not in the flag --> ONLY not for HBHEFilters
1270  std::size_t found = search2.find(search);
1271  if (found != std::string::npos) {
1272  miniaodFilterIndex_[0] = i;
1273  }
1274  search2 = CSCHaloResultTag_.label().substr(0, CSCHaloResultTag_.label().size() - 3);
1275  found = search2.find(search);
1276  if (found != std::string::npos) {
1277  miniaodFilterIndex_[1] = i;
1278  }
1279  search2 = eeBadScFilterTag_.label().substr(0, eeBadScFilterTag_.label().size() - 3);
1280  found = search2.find(search);
1281  if (found != std::string::npos) {
1282  miniaodFilterIndex_[2] = i;
1283  }
1285  found = search2.find(search);
1286  if (found != std::string::npos) {
1287  miniaodFilterIndex_[3] = i;
1288  }
1289  search2 = CSCHalo2015ResultTag_.label().substr(0, CSCHalo2015ResultTag_.label().size() - 3);
1290  found = search2.find(search);
1291  if (found != std::string::npos) {
1292  miniaodFilterIndex_[4] = i;
1293  }
1295  found = search2.find(search);
1296  if (found != std::string::npos) {
1297  miniaodFilterIndex_[5] = i;
1298  }
1300  found = search2.find(search);
1301  if (found != std::string::npos) {
1302  miniaodFilterIndex_[6] = i;
1303  }
1304  search2 = HcalStripHaloTag_.label().substr(0, HcalStripHaloTag_.label().size() - 3);
1305  found = search2.find(search);
1306  if (found != std::string::npos) {
1307  miniaodFilterIndex_[7] = i;
1308  }
1309  }
1310  } else {
1311  edm::LogWarning("MiniAOD METAN Filter HLT OBject version")
1312  << "nothing found with both RECO and reRECO label" << std::endl;
1313  }
1314  }
1315 }
const std::string & triggerName(unsigned int triggerIndex) const
edm::InputTag CSCHaloResultTag_
Definition: METAnalyzer.h:182
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
T const & getData(const ESGetToken< T, R > &iToken) const noexcept(false)
Definition: EventSetup.h:119
HLTConfigProvider hltConfig_
Definition: METAnalyzer.h:212
std::vector< GenericTriggerEventFlag * > triggerFolderEventFlag_
Definition: METAnalyzer.h:223
std::vector< T >::const_iterator search(const cond::Time_t &val, const std::vector< T > &container)
Definition: IOVProxy.cc:21
std::vector< ParameterSet > VParameterSet
Definition: ParameterSet.h:34
HLTConfigProvider FilterhltConfig_
Definition: METAnalyzer.h:213
edm::ESGetToken< L1GtTriggerMenu, L1GtTriggerMenuRcd > l1gtTrigMenuToken_
Definition: METAnalyzer.h:202
edm::InputTag EcalDeadCellTriggerTag_
Definition: METAnalyzer.h:186
std::string const & label() const
Definition: InputTag.h:36
std::string HBHENoiseStringMiniAOD
Definition: METAnalyzer.h:217
AlgorithmMap::const_iterator CItAlgo
iterators through map containing the algorithms
std::string HBHEIsoNoiseStringMiniAOD
Definition: METAnalyzer.h:218
std::vector< int > miniaodFilterIndex_
Definition: METAnalyzer.h:175
std::vector< std::vector< std::string > > triggerFolderExpr_
Definition: METAnalyzer.h:224
unsigned int size() const
number of trigger paths in trigger table
edm::InputTag CSCHalo2015ResultTag_
Definition: METAnalyzer.h:184
edm::InputTag eeBadScFilterTag_
Definition: METAnalyzer.h:188
edm::InputTag HcalStripHaloTag_
Definition: METAnalyzer.h:192
std::string m_l1algoname_
Definition: METAnalyzer.h:207
bool init(const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed)
d&#39;tor
edm::InputTag triggerResultsLabel_
Definition: METAnalyzer.h:214
edm::ParameterSet parameters
Definition: METAnalyzer.h:150
edm::InputTag EcalDeadCellBoundaryTag_
Definition: METAnalyzer.h:190
edm::InputTag METFilterMiniAODLabel2_
Definition: METAnalyzer.h:172
edm::VParameterSet triggerSelectedSubFolders_
Definition: METAnalyzer.h:222
int miniaodfilterdec
Definition: METAnalyzer.h:176
edm::InputTag METFilterMiniAODLabel_
Definition: METAnalyzer.h:170
Log< level::Warning, false > LogWarning
std::string const & process() const
Definition: InputTag.h:40
bool isMiniAODMet_
Definition: METAnalyzer.h:596
int m_bitAlgTechTrig_
Definition: METAnalyzer.h:208

◆ dqmEndRun()

void METAnalyzer::dqmEndRun ( const edm::Run iRun,
const edm::EventSetup iSetup 
)
overridevirtual

Finish up a run.

Reimplemented from DQMOneEDAnalyzer<>.

Definition at line 1318 of file METAnalyzer.cc.

References TrackerOfflineValidation_Dqm_cff::dirName, fed_dqm_sourceclient-live_cfg::DirName, dqm::legacy::MonitorElement::getRootObject(), dqm::legacy::MonitorElement::getTH1F(), mps_fire::i, and AlCaHLTBitMon_QueryRunRegistry::string.

1318  {
1319  //
1320  //--- Check the time length of the Run from the lumi section plots
1321 
1322  TH1F* tlumisec;
1323 
1324  MonitorElement* meLumiSec = map_dijet_MEs["aaa"];
1325  meLumiSec = map_dijet_MEs["JetMET/lumisec"];
1326 
1327  int totlsec = 0;
1328  int totlssecsum = 0;
1329  double totltime = 0.;
1330  if (meLumiSec && meLumiSec->getRootObject()) {
1331  tlumisec = meLumiSec->getTH1F();
1332  //check overflow bin (if we have more than 2500 LS in a run)
1333  //lumisec is filled every time the analyze section is processed
1334  //we know an LS is present only once in a run: normalize how many events we had on average
1335  //if lumi fluctuates strongly might be unreliable for overflow bin though
1336  for (int i = 0; i < (tlumisec->GetNbinsX()); i++) {
1337  if (tlumisec->GetBinContent(i) != 0) {
1338  totlsec += 1;
1339  totlssecsum += tlumisec->GetBinContent(i);
1340  }
1341  }
1342  int num_per_ls = (double)totlssecsum / (double)totlsec;
1343  totlsec = totlsec + tlumisec->GetBinContent(tlumisec->GetNbinsX() + 1) / (double)num_per_ls;
1344  totltime = double(totlsec * 90); // one lumi sec ~ 90 (sec)
1345  }
1346 
1347  if (totltime == 0.)
1348  totltime = 1.;
1349 
1351  //dbe_->setCurrentFolder(dirName);
1352 
1353  //below is the original METAnalyzer formulation
1354 
1355  for (std::vector<std::string>::const_iterator ic = folderNames_.begin(); ic != folderNames_.end(); ic++) {
1357  DirName = dirName + *ic;
1358  makeRatePlot(DirName, totltime);
1359  for (std::vector<GenericTriggerEventFlag*>::const_iterator it = triggerFolderEventFlag_.begin();
1360  it != triggerFolderEventFlag_.end();
1361  it++) {
1362  int pos = it - triggerFolderEventFlag_.begin();
1363  if ((*it)->on()) {
1364  makeRatePlot(DirName + "/" + triggerFolderLabels_[pos], totltime);
1365  }
1366  }
1367  }
1368 }
std::vector< GenericTriggerEventFlag * > triggerFolderEventFlag_
Definition: METAnalyzer.h:223
std::map< std::string, MonitorElement * > map_dijet_MEs
Definition: METAnalyzer.h:592
std::vector< std::string > triggerFolderLabels_
Definition: METAnalyzer.h:225
std::string FolderName_
Definition: METAnalyzer.h:155
std::string const & label() const
Definition: InputTag.h:36
void makeRatePlot(std::string, double)
edm::InputTag metCollectionLabel_
Definition: METAnalyzer.h:157
std::vector< std::string > folderNames_
Definition: METAnalyzer.h:295
virtual TH1F * getTH1F() const
TObject * getRootObject() const override

◆ fillMESet()

void METAnalyzer::fillMESet ( const edm::Event ,
std::string  ,
const reco::MET ,
const pat::MET ,
const reco::PFMET ,
const reco::CaloMET ,
const reco::Candidate::PolarLorentzVector ,
std::map< std::string, MonitorElement *> &  ,
std::vector< bool >  ,
std::vector< bool >   
)

Definition at line 2018 of file METAnalyzer.cc.

References fed_dqm_sourceclient-live_cfg::DirName, mps_fire::i, iEvent, BTaggingMonitor_cfi::met, and AlCaHLTBitMon_QueryRunRegistry::string.

2027  {
2028  bool bLumiSecPlot = fill_met_high_level_histo;
2029  bool fillPFCandidatePlots = false;
2030  if (DirName.find("Cleaned") != std::string::npos) {
2031  fillPFCandidatePlots = true;
2033  DirName,
2034  std::string(""),
2035  met,
2036  patmet,
2037  pfmet,
2038  calomet,
2039  zCand,
2040  map_of_MEs,
2041  bLumiSecPlot,
2042  fillPFCandidatePlots,
2043  techTriggerCase,
2044  METFilterDecision);
2045  for (unsigned int i = 0; i < triggerFolderLabels_.size(); i++) {
2046  fillPFCandidatePlots = false;
2047  if (triggerFolderDecisions_[i]) {
2049  DirName,
2051  met,
2052  patmet,
2053  pfmet,
2054  calomet,
2055  zCand,
2056  map_of_MEs,
2057  bLumiSecPlot,
2058  fillPFCandidatePlots,
2059  techTriggerCase,
2060  METFilterDecision);
2061  }
2062  }
2063  } else if (DirName.find("DiJet") != std::string::npos) {
2065  DirName,
2066  std::string(""),
2067  met,
2068  patmet,
2069  pfmet,
2070  calomet,
2071  zCand,
2072  map_of_MEs,
2073  bLumiSecPlot,
2074  fillPFCandidatePlots,
2075  techTriggerCase,
2076  METFilterDecision);
2077  for (unsigned int i = 0; i < triggerFolderLabels_.size(); i++) {
2080  DirName,
2082  met,
2083  patmet,
2084  pfmet,
2085  calomet,
2086  zCand,
2087  map_of_MEs,
2088  bLumiSecPlot,
2089  fillPFCandidatePlots,
2090  techTriggerCase,
2091  METFilterDecision);
2092  }
2093  } else if (DirName.find("ZJets") != std::string::npos) {
2095  DirName,
2096  std::string(""),
2097  met,
2098  patmet,
2099  pfmet,
2100  calomet,
2101  zCand,
2102  map_of_MEs,
2103  bLumiSecPlot,
2104  fillPFCandidatePlots,
2105  techTriggerCase,
2106  METFilterDecision);
2107  } else {
2109  DirName,
2110  std::string(""),
2111  met,
2112  patmet,
2113  pfmet,
2114  calomet,
2115  zCand,
2116  map_of_MEs,
2117  bLumiSecPlot,
2118  fillPFCandidatePlots,
2119  techTriggerCase,
2120  METFilterDecision);
2121  }
2122 }
std::vector< int > triggerFolderDecisions_
Definition: METAnalyzer.h:226
std::vector< std::string > triggerFolderLabels_
Definition: METAnalyzer.h:225
int iEvent
Definition: GenABIO.cc:224
bool fill_met_high_level_histo
Definition: METAnalyzer.h:598
void fillMonitorElement(const edm::Event &, std::string, std::string, const reco::MET &, const pat::MET *, const reco::PFMET *, const reco::CaloMET *, const reco::Candidate::PolarLorentzVector &, std::map< std::string, MonitorElement *> &, bool, bool, std::vector< bool >, std::vector< bool >)

◆ fillMonitorElement()

void METAnalyzer::fillMonitorElement ( const edm::Event ,
std::string  ,
std::string  ,
const reco::MET ,
const pat::MET ,
const reco::PFMET ,
const reco::CaloMET ,
const reco::Candidate::PolarLorentzVector ,
std::map< std::string, MonitorElement *> &  ,
bool  ,
bool  ,
std::vector< bool >  ,
std::vector< bool >   
)

Definition at line 2125 of file METAnalyzer.cc.

References HltBtagPostValidation_cff::c, pat::MET::ChargedEMEtFraction(), pat::MET::ChargedHadEtFraction(), reco::PFMET::chargedHadronEt(), reco::PFMET::chargedHadronEtFraction(), fed_dqm_sourceclient-live_cfg::DirName, reco::PFMET::electronEt(), reco::CaloMET::emEtFraction(), reco::CaloMET::emEtInEB(), reco::CaloMET::emEtInEE(), reco::CaloMET::emEtInHF(), reco::CaloMET::etFractionHadronic(), HcalObjRepresent::Fill(), reco::CaloMET::hadEtInHB(), reco::CaloMET::hadEtInHE(), reco::CaloMET::hadEtInHF(), reco::CaloMET::hadEtInHO(), reco::PFMET::HFEMEt(), reco::PFMET::HFEMEtFraction(), reco::PFMET::HFHadronEt(), reco::PFMET::HFHadronEtFraction(), mps_fire::i, iEvent, dqmiolumiharvest::j, BTaggingMonitor_cfi::met, reco::PFMET::muonEt(), pat::MET::MuonEtFraction(), pat::MET::NeutralEMFraction(), pat::MET::NeutralHadEtFraction(), reco::PFMET::neutralHadronEt(), reco::PFMET::neutralHadronEtFraction(), pfLinker_cff::particleFlow, reco::PFMET::photonEt(), reco::PFMET::photonEtFraction(), reco::LeafCandidate::pt(), mathSSE::sqrt(), reco::MET::sumEt(), pat::MET::Type6EtFraction(), and pat::MET::Type7EtFraction().

2137  {
2138  bool do_only_Z_histograms = false;
2139  if (DirName.find("ZJets") != std::string::npos) { //do Z plots only
2140  do_only_Z_histograms = true;
2141  //\vec{p}_{T}^{Z}+vec{u}_{T}+\vec{MET}=0
2142 
2143  double u_x = -met.px() - zCand.Px();
2144  double u_y = -met.py() - zCand.Py();
2145 
2146  //protection for VERY special case where Z-Pt==0
2147  double u_par = 0;
2148  double u_perp = sqrt(u_x * u_x + u_y * u_y);
2149  double e_Z_x = 0;
2150  double e_Z_y = 0;
2151  if (zCand.Pt() != 0) {
2152  e_Z_x = zCand.Px() / zCand.Pt();
2153  e_Z_y = zCand.Py() / zCand.Pt();
2154  }
2155  u_par = u_x * e_Z_x + u_y * e_Z_y;
2156  u_perp = -e_Z_y * u_x + e_Z_x * u_y;
2157 
2158  meZJets_u_par = map_of_MEs[DirName + "/" + "u_parallel_Z_inc"];
2160  meZJets_u_par->Fill(u_par);
2161  if (zCand.Pt() < 15) {
2162  meZJets_u_par_ZPt_0_15 = map_of_MEs[DirName + "/" + "u_parallel_ZPt_0_15"];
2164  meZJets_u_par_ZPt_0_15->Fill(u_par);
2165  } else if (zCand.Pt() < 30) {
2166  meZJets_u_par_ZPt_15_30 = map_of_MEs[DirName + "/" + "u_parallel_ZPt_15_30"];
2168  meZJets_u_par_ZPt_15_30->Fill(u_par);
2169  } else if (zCand.Pt() < 55) {
2170  meZJets_u_par_ZPt_30_55 = map_of_MEs[DirName + "/" + "u_parallel_ZPt_30_55"];
2172  meZJets_u_par_ZPt_30_55->Fill(u_par);
2173  } else if (zCand.Pt() < 75) {
2174  meZJets_u_par_ZPt_55_75 = map_of_MEs[DirName + "/" + "u_parallel_ZPt_55_75"];
2176  meZJets_u_par_ZPt_55_75->Fill(u_par);
2177  } else if (zCand.Pt() < 150) {
2178  meZJets_u_par_ZPt_75_150 = map_of_MEs[DirName + "/" + "u_parallel_ZPt_75_150"];
2181  } else if (zCand.Pt() < 290) {
2182  meZJets_u_par_ZPt_150_290 = map_of_MEs[DirName + "/" + "u_parallel_ZPt_150_290"];
2185  } else {
2186  meZJets_u_par_ZPt_290 = map_of_MEs[DirName + "/" + "u_parallel_ZPt_290"];
2188  meZJets_u_par_ZPt_290->Fill(u_par);
2189  }
2190 
2191  meZJets_u_perp = map_of_MEs[DirName + "/" + "u_perp_Z_inc"];
2193  meZJets_u_perp->Fill(u_perp);
2194  if (zCand.Pt() < 15) {
2195  meZJets_u_perp_ZPt_0_15 = map_of_MEs[DirName + "/" + "u_perp_ZPt_0_15"];
2197  meZJets_u_perp_ZPt_0_15->Fill(u_perp);
2198  } else if (zCand.Pt() < 30) {
2199  meZJets_u_perp_ZPt_15_30 = map_of_MEs[DirName + "/" + "u_perp_ZPt_15_30"];
2201  meZJets_u_perp_ZPt_15_30->Fill(u_perp);
2202  } else if (zCand.Pt() < 55) {
2203  meZJets_u_perp_ZPt_30_55 = map_of_MEs[DirName + "/" + "u_perp_ZPt_30_55"];
2205  meZJets_u_perp_ZPt_30_55->Fill(u_perp);
2206  } else if (zCand.Pt() < 75) {
2207  meZJets_u_perp_ZPt_55_75 = map_of_MEs[DirName + "/" + "u_perp_ZPt_55_75"];
2209  meZJets_u_perp_ZPt_55_75->Fill(u_perp);
2210  } else if (zCand.Pt() < 150) {
2211  meZJets_u_perp_ZPt_75_150 = map_of_MEs[DirName + "/" + "u_perp_ZPt_75_150"];
2214  } else if (zCand.Pt() < 290) {
2215  meZJets_u_perp_ZPt_150_290 = map_of_MEs[DirName + "/" + "u_perp_ZPt_150_290"];
2218  } else {
2219  meZJets_u_perp_ZPt_290 = map_of_MEs[DirName + "/" + "u_perp_ZPt_290"];
2221  meZJets_u_perp_ZPt_290->Fill(u_perp);
2222  }
2223  }
2224  if (!do_only_Z_histograms) {
2225  // Reconstructed MET Information
2226  double SumET = met.sumEt();
2227  double METSig = met.mEtSig();
2228  //double Ez = met.e_longitudinal();
2229  double MET = met.pt();
2230  double MEx = met.px();
2231  double MEy = met.py();
2232  double METPhi = met.phi();
2233  //
2234  int myLuminosityBlock;
2235  myLuminosityBlock = iEvent.luminosityBlock();
2236  //
2237 
2238  if (!subFolderName.empty()) {
2239  DirName = DirName + "/" + subFolderName;
2240  }
2241 
2242  hMEx = map_of_MEs[DirName + "/" + "MEx"];
2243  if (hMEx && hMEx->getRootObject())
2244  hMEx->Fill(MEx);
2245  hMEy = map_of_MEs[DirName + "/" + "MEy"];
2246  if (hMEy && hMEy->getRootObject())
2247  hMEy->Fill(MEy);
2248  hMET = map_of_MEs[DirName + "/" + "MET"];
2249  if (hMET && hMET->getRootObject())
2250  hMET->Fill(MET);
2251  hMET_2 = map_of_MEs[DirName + "/" + "MET_2"];
2252  if (hMET_2 && hMET_2->getRootObject())
2253  hMET_2->Fill(MET);
2254 
2255  //hMET_HBHENoiseFilter = ibooker.book1D("MET_HBHENoiseFilter", "MET_HBHENoiseFiltered", 200, 0, 1000);
2256  //hMET_CSCTightHaloFilter = ibooker.book1D("MET_CSCTightHaloFilter", "MET_CSCTightHaloFiltered", 200, 0, 1000);
2257  //hMET_eeBadScFilter = ibooker.book1D("MET_eeBadScFilter", "MET_eeBadScFiltered", 200, 0, 1000);
2258  //hMET_HBHEIsoNoiseFilter = ibooker.book1D("MET_HBHEIsoNoiseFilter", "MET_HBHEIsoNoiseFiltered", 200, 0, 1000);
2259  //hMET_CSCTightHalo2015Filter = ibooker.book1D("MET_CSCTightHalo2015Filter", "MET_CSCTightHalo2015Filtered", 200, 0, 1000);
2260  //hMET_EcalDeadCellTriggerFilter = ibooker.book1D("MET_EcalDeadCellTriggerFilter", "MET_EcalDeadCellTriggerFiltered", 200, 0, 1000);
2261  //hMET_EcalDeadCellBoundaryFilter = ibooker.book1D("MET_EcalDeadCellBoundaryFilter", "MET_EcalDeadCellBoundaryFiltered", 200, 0, 1000);
2262  //hMET_HcalStripHaloFilter = ibooker.book1D("MET_HcalStripHaloFilter", "MET_HcalStripHaloFiltered", 200, 0, 1000);
2263 
2264  bool HBHENoiseFilterResult = false;
2265  bool CSCTightHaloFilterResult = false;
2266  bool eeBadScFilterResult = false;
2267  bool HBHEIsoNoiseFilterResult = false;
2268  bool CSCTightHalo2015FilterResult = false;
2269  bool EcalDeadCellTriggerFilterResult = false;
2270  bool EcalDeadCellBoundaryFilterResult = false;
2271  bool HcalStripHaloFilterResult = false;
2272  HBHENoiseFilterResult = METFilterDecision[0];
2273  if (HBHENoiseFilterResult) {
2274  hMET_HBHENoiseFilter = map_of_MEs[DirName + "/" + "MET_HBHENoiseFilter"];
2277  }
2278  CSCTightHaloFilterResult = METFilterDecision[1];
2279  if (CSCTightHaloFilterResult) {
2280  hMET_CSCTightHaloFilter = map_of_MEs[DirName + "/" + "MET_CSCTightHaloFilter"];
2283  }
2284  eeBadScFilterResult = METFilterDecision[2];
2285  if (eeBadScFilterResult) {
2286  hMET_eeBadScFilter = map_of_MEs[DirName + "/" + "MET_eeBadScFilter"];
2289  }
2290  HBHEIsoNoiseFilterResult = METFilterDecision[3];
2291  if (HBHEIsoNoiseFilterResult) {
2292  hMET_HBHEIsoNoiseFilter = map_of_MEs[DirName + "/" + "MET_HBHEIsoNoiseFilter"];
2295  }
2296  CSCTightHalo2015FilterResult = METFilterDecision[4];
2297  if (CSCTightHalo2015FilterResult) {
2298  hMET_CSCTightHalo2015Filter = map_of_MEs[DirName + "/" + "MET_CSCTightHalo2015Filter"];
2301  }
2302  EcalDeadCellTriggerFilterResult = METFilterDecision[5];
2303  if (EcalDeadCellTriggerFilterResult) {
2304  hMET_EcalDeadCellTriggerFilter = map_of_MEs[DirName + "/" + "MET_EcalDeadCellTriggerFilter"];
2307  }
2308  EcalDeadCellBoundaryFilterResult = METFilterDecision[6];
2309  if (EcalDeadCellBoundaryFilterResult) {
2310  hMET_EcalDeadCellBoundaryFilter = map_of_MEs[DirName + "/" + "MET_EcalDeadCellBoundaryFilter"];
2313  }
2314  HcalStripHaloFilterResult = METFilterDecision[7];
2315  if (HcalStripHaloFilterResult) {
2316  hMET_HcalStripHaloFilter = map_of_MEs[DirName + "/" + "MET_HcalStripHaloFilter"];
2319  }
2320  hMETPhi = map_of_MEs[DirName + "/" + "METPhi"];
2321  if (hMETPhi && hMETPhi->getRootObject())
2322  hMETPhi->Fill(METPhi);
2323  hSumET = map_of_MEs[DirName + "/" + "SumET"];
2324  if (hSumET && hSumET->getRootObject())
2325  hSumET->Fill(SumET);
2326  hMETSig = map_of_MEs[DirName + "/" + "METSig"];
2327  if (hMETSig && hMETSig->getRootObject())
2328  hMETSig->Fill(METSig);
2329  hMET_logx = map_of_MEs[DirName + "/" + "MET_logx"];
2330  if (hMET_logx && hMET_logx->getRootObject())
2331  hMET_logx->Fill(log10(MET));
2332  hSumET_logx = map_of_MEs[DirName + "/" + "SumET_logx"];
2334  hSumET_logx->Fill(log10(SumET));
2335 
2336  // Fill NPV profiles
2337  //--------------------------------------------------------------------------
2338  meMEx_profile = map_of_MEs[DirName + "/MEx_profile"];
2339  meMEy_profile = map_of_MEs[DirName + "/MEy_profile"];
2340  meMET_profile = map_of_MEs[DirName + "/MET_profile"];
2341  meSumET_profile = map_of_MEs[DirName + "/SumET_profile"];
2342 
2344  meMEx_profile->Fill(numPV_, MEx);
2346  meMEy_profile->Fill(numPV_, MEy);
2350  meSumET_profile->Fill(numPV_, SumET);
2351 
2352  if (isCaloMet_) {
2353  //const reco::CaloMETCollection *calometcol = calometcoll.product();
2354  //const reco::CaloMET *calomet;
2355  //calomet = &(calometcol->front());
2356 
2357  double caloEtFractionHadronic = calomet->etFractionHadronic();
2358  double caloEmEtFraction = calomet->emEtFraction();
2359 
2360  double caloHadEtInHB = calomet->hadEtInHB();
2361  double caloHadEtInHO = calomet->hadEtInHO();
2362  double caloHadEtInHE = calomet->hadEtInHE();
2363  double caloHadEtInHF = calomet->hadEtInHF();
2364  double caloEmEtInEB = calomet->emEtInEB();
2365  double caloEmEtInEE = calomet->emEtInEE();
2366  double caloEmEtInHF = calomet->emEtInHF();
2367 
2368  hCaloHadEtInHB = map_of_MEs[DirName + "/" + "CaloHadEtInHB"];
2370  hCaloHadEtInHB->Fill(caloHadEtInHB);
2371  hCaloHadEtInHO = map_of_MEs[DirName + "/" + "CaloHadEtInHO"];
2373  hCaloHadEtInHO->Fill(caloHadEtInHO);
2374  hCaloHadEtInHE = map_of_MEs[DirName + "/" + "CaloHadEtInHE"];
2376  hCaloHadEtInHE->Fill(caloHadEtInHE);
2377  hCaloHadEtInHF = map_of_MEs[DirName + "/" + "CaloHadEtInHF"];
2379  hCaloHadEtInHF->Fill(caloHadEtInHF);
2380  hCaloEmEtInEB = map_of_MEs[DirName + "/" + "CaloEmEtInEB"];
2382  hCaloEmEtInEB->Fill(caloEmEtInEB);
2383  hCaloEmEtInEE = map_of_MEs[DirName + "/" + "CaloEmEtInEE"];
2385  hCaloEmEtInEE->Fill(caloEmEtInEE);
2386  hCaloEmEtInHF = map_of_MEs[DirName + "/" + "CaloEmEtInHF"];
2388  hCaloEmEtInHF->Fill(caloEmEtInHF);
2389 
2390  hCaloMETPhi020 = map_of_MEs[DirName + "/" + "CaloMETPhi020"];
2391  if (MET > 20. && hCaloMETPhi020 && hCaloMETPhi020->getRootObject()) {
2392  hCaloMETPhi020->Fill(METPhi);
2393  }
2394 
2395  hCaloEtFractionHadronic = map_of_MEs[DirName + "/" + "CaloEtFractionHadronic"];
2397  hCaloEtFractionHadronic->Fill(caloEtFractionHadronic);
2398  hCaloEmEtFraction = map_of_MEs[DirName + "/" + "CaloEmEtFraction"];
2400  hCaloEmEtFraction->Fill(caloEmEtFraction);
2401  hCaloEmEtFraction020 = map_of_MEs[DirName + "/" + "CaloEmEtFraction020"];
2403  hCaloEmEtFraction020->Fill(caloEmEtFraction);
2404  }
2405  if (isPFMet_) {
2406  if (fillPFCandidatePlots && fillCandidateMap_histos) {
2407  for (unsigned int i = 0; i < countsPFCand_.size(); i++) {
2408  countsPFCand_[i] = 0;
2409  MExPFCand_[i] = 0.;
2410  MEyPFCand_[i] = 0.;
2411  }
2412 
2413  // typedef std::vector<reco::PFCandidate> pfCand;
2415  iEvent.getByToken(pflowToken_, particleFlow);
2416 
2417  float pt_sum_CHF_Barrel = 0;
2418  float pt_sum_CHF_Endcap_plus = 0;
2419  float pt_sum_CHF_Endcap_minus = 0;
2420  float pt_sum_NHF_Barrel = 0;
2421  float pt_sum_NHF_Endcap_plus = 0;
2422  float pt_sum_NHF_Endcap_minus = 0;
2423  float pt_sum_PhF_Barrel = 0;
2424  float pt_sum_PhF_Endcap_plus = 0;
2425  float pt_sum_PhF_Endcap_minus = 0;
2426  float pt_sum_HFH_plus = 0;
2427  float pt_sum_HFH_minus = 0;
2428  float pt_sum_HFE_plus = 0;
2429  float pt_sum_HFE_minus = 0;
2430 
2431  float px_chargedHadronsBarrel = 0;
2432  float py_chargedHadronsBarrel = 0;
2433  float px_chargedHadronsEndcapPlus = 0;
2434  float py_chargedHadronsEndcapPlus = 0;
2435  float px_chargedHadronsEndcapMinus = 0;
2436  float py_chargedHadronsEndcapMinus = 0;
2437  float px_neutralHadronsBarrel = 0;
2438  float py_neutralHadronsBarrel = 0;
2439  float px_neutralHadronsEndcapPlus = 0;
2440  float py_neutralHadronsEndcapPlus = 0;
2441  float px_neutralHadronsEndcapMinus = 0;
2442  float py_neutralHadronsEndcapMinus = 0;
2443  float px_PhotonsBarrel = 0;
2444  float py_PhotonsBarrel = 0;
2445  float px_PhotonsEndcapPlus = 0;
2446  float py_PhotonsEndcapPlus = 0;
2447  float px_PhotonsEndcapMinus = 0;
2448  float py_PhotonsEndcapMinus = 0;
2449  float px_HFHadronsPlus = 0;
2450  float py_HFHadronsPlus = 0;
2451  float px_HFHadronsMinus = 0;
2452  float py_HFHadronsMinus = 0;
2453  float px_HFEGammasPlus = 0;
2454  float py_HFEGammasPlus = 0;
2455  float px_HFEGammasMinus = 0;
2456  float py_HFEGammasMinus = 0;
2457  for (unsigned int i = 0; i < particleFlow->size(); i++) {
2458  const reco::PFCandidate& c = particleFlow->at(i);
2459  if (c.particleId() == 1) { //charged hadrons
2460  //endcap minus
2461  if (c.eta() > (-3.0) && c.eta() < (-1.392)) {
2462  px_chargedHadronsEndcapMinus -= c.px();
2463  py_chargedHadronsEndcapMinus -= c.py();
2464  pt_sum_CHF_Endcap_minus += c.et();
2465  } else if (c.eta() >= (-1.392) && c.eta() <= 1.392) { //barrel
2466  px_chargedHadronsBarrel -= c.px();
2467  py_chargedHadronsBarrel -= c.py();
2468  pt_sum_CHF_Barrel += c.et();
2469  } else if (c.eta() > 1.392 && c.eta() < 3.0) { //endcap plus
2470  px_chargedHadronsEndcapPlus -= c.px();
2471  py_chargedHadronsEndcapPlus -= c.py();
2472  pt_sum_CHF_Endcap_plus += c.et();
2473  }
2474  }
2475  if (c.particleId() == 5) { //neutral hadrons
2476  //endcap minus
2477  if (c.eta() > (-3.0) && c.eta() < (-1.392)) {
2478  px_neutralHadronsEndcapMinus -= c.px();
2479  py_neutralHadronsEndcapMinus -= c.py();
2480  pt_sum_NHF_Endcap_minus += c.et();
2481  } else if (c.eta() >= (-1.392) && c.eta() <= 1.392) {
2482  px_neutralHadronsBarrel -= c.px();
2483  py_neutralHadronsBarrel -= c.py();
2484  pt_sum_NHF_Barrel += c.et();
2485  } else if (c.eta() > 1.392 && c.eta() < 3.0) {
2486  px_neutralHadronsEndcapPlus -= c.px();
2487  py_neutralHadronsEndcapPlus -= c.py();
2488  pt_sum_NHF_Endcap_plus += c.et();
2489  }
2490  }
2491  if (c.particleId() == 4) { //photons
2492  //endcap minus
2493  if (c.eta() > (-3.0) && c.eta() < (-1.479)) {
2494  px_PhotonsEndcapMinus -= c.px();
2495  py_PhotonsEndcapMinus -= c.py();
2496  pt_sum_PhF_Endcap_minus += c.et();
2497  } else if (c.eta() >= (-1.479) && c.eta() <= 1.479) {
2498  px_PhotonsBarrel -= c.px();
2499  py_PhotonsBarrel -= c.py();
2500  pt_sum_PhF_Barrel += c.et();
2501  } else if (c.eta() > 1.479 && c.eta() < 3.0) {
2502  px_PhotonsEndcapPlus -= c.px();
2503  py_PhotonsEndcapPlus -= c.py();
2504  pt_sum_PhF_Endcap_plus += c.et();
2505  }
2506  }
2507  if (c.particleId() == 6) { //HFHadrons
2508  //forward minus
2509  if (c.eta() > (-5.20) && c.eta() < -2.901376) {
2510  pt_sum_HFH_minus += c.et();
2511  px_HFHadronsMinus -= c.px();
2512  py_HFHadronsMinus -= c.py();
2513  } else if (c.eta() > 2.901376 && c.eta() < 5.20) { //forward plus
2514  px_HFHadronsPlus -= c.px();
2515  py_HFHadronsPlus -= c.py();
2516  pt_sum_HFH_plus += c.et();
2517  }
2518  }
2519  if (c.particleId() == 7) { //HFEGammas
2520  //forward minus
2521  if (c.eta() > (-5.20) && c.eta() < -2.901376) {
2522  pt_sum_HFE_minus += c.et();
2523  px_HFEGammasMinus -= c.px();
2524  py_HFEGammasMinus -= c.py();
2525  } else if (c.eta() > 2.901376 && c.eta() < 5.20) { //forward plus
2526  px_HFEGammasPlus -= c.px();
2527  py_HFEGammasPlus -= c.py();
2528  pt_sum_HFE_plus += c.et();
2529  }
2530  }
2531  for (unsigned int j = 0; j < typePFCand_.size(); j++) {
2532  if (c.particleId() == typePFCand_[j]) {
2533  //second check for endcap, if inside barrel Max and Min symmetric around 0
2534  if (((c.eta() > etaMinPFCand_[j]) && (c.eta() < etaMaxPFCand_[j])) ||
2535  ((c.eta() > (-etaMaxPFCand_[j])) && (c.eta() < (-etaMinPFCand_[j])))) {
2536  countsPFCand_[j] += 1;
2537  MExPFCand_[j] -= c.px();
2538  MEyPFCand_[j] -= c.py();
2539  }
2540  }
2541  }
2542  }
2543 
2544  for (unsigned int j = 0; j < countsPFCand_.size(); j++) {
2545  profilePFCand_x_[j] = map_of_MEs[DirName + "/" + profilePFCand_x_name_[j]];
2546  if (profilePFCand_x_[j] && profilePFCand_x_[j]->getRootObject())
2548  profilePFCand_y_[j] = map_of_MEs[DirName + "/" + profilePFCand_y_name_[j]];
2549  if (profilePFCand_y_[j] && profilePFCand_y_[j]->getRootObject())
2551  }
2552  meCHF_Barrel = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionBarrel"];
2554  meCHF_Barrel->Fill(pt_sum_CHF_Barrel / pfmet->sumEt());
2555  meCHF_EndcapPlus = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionEndcapPlus"];
2557  meCHF_EndcapPlus->Fill(pt_sum_CHF_Endcap_plus / pfmet->sumEt());
2558  meCHF_EndcapMinus = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionEndcapMinus"];
2560  meCHF_EndcapMinus->Fill(pt_sum_CHF_Endcap_minus / pfmet->sumEt());
2561  meNHF_Barrel = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionBarrel"];
2563  meNHF_Barrel->Fill(pt_sum_NHF_Barrel / pfmet->sumEt());
2564  meNHF_EndcapPlus = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionEndcapPlus"];
2566  meNHF_EndcapPlus->Fill(pt_sum_NHF_Endcap_plus / pfmet->sumEt());
2567  meNHF_EndcapMinus = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionEndcapMinus"];
2569  meNHF_EndcapMinus->Fill(pt_sum_NHF_Endcap_minus / pfmet->sumEt());
2570  mePhF_Barrel = map_of_MEs[DirName + "/" + "PfPhotonEtFractionBarrel"];
2572  mePhF_Barrel->Fill(pt_sum_PhF_Barrel / pfmet->sumEt());
2573  mePhF_EndcapPlus = map_of_MEs[DirName + "/" + "PfPhotonEtFractionEndcapPlus"];
2575  mePhF_EndcapPlus->Fill(pt_sum_PhF_Endcap_plus / pfmet->sumEt());
2576  mePhF_EndcapMinus = map_of_MEs[DirName + "/" + "PfPhotonEtFractionEndcapMinus"];
2578  mePhF_EndcapMinus->Fill(pt_sum_PhF_Endcap_minus / pfmet->sumEt());
2579  meHFHadF_Plus = map_of_MEs[DirName + "/" + "PfHFHadronEtFractionPlus"];
2581  meHFHadF_Plus->Fill(pt_sum_HFH_plus / pfmet->sumEt());
2582  meHFHadF_Minus = map_of_MEs[DirName + "/" + "PfHFHadronEtFractionMinus"];
2584  meHFHadF_Minus->Fill(pt_sum_HFH_minus / pfmet->sumEt());
2585  meHFEMF_Plus = map_of_MEs[DirName + "/" + "PfHFEMEtFractionPlus"];
2587  meHFEMF_Plus->Fill(pt_sum_HFE_plus / pfmet->sumEt());
2588  meHFEMF_Minus = map_of_MEs[DirName + "/" + "PfHFEMEtFractionMinus"];
2590  meHFEMF_Minus->Fill(pt_sum_HFE_minus / pfmet->sumEt());
2591  //sanity check if we have any type of the respective species in the events
2592  //else don't fill phi, as else we have a results of a biased peak at 0
2593  //if pt_sum of species part is 0, obviously that would be the case
2594  if (pt_sum_CHF_Barrel) {
2595  meMETPhiChargedHadronsBarrel = map_of_MEs[DirName + "/" + "METPhiChargedHadronsBarrel"];
2597  meMETPhiChargedHadronsBarrel->Fill(atan2(py_chargedHadronsBarrel, px_chargedHadronsBarrel));
2598  }
2599  if (pt_sum_CHF_Endcap_plus) {
2600  meMETPhiChargedHadronsEndcapPlus = map_of_MEs[DirName + "/" + "METPhiChargedHadronsEndcapPlus"];
2602  meMETPhiChargedHadronsEndcapPlus->Fill(atan2(py_chargedHadronsEndcapPlus, px_chargedHadronsEndcapPlus));
2603  }
2604  if (pt_sum_CHF_Endcap_minus) {
2605  meMETPhiChargedHadronsEndcapMinus = map_of_MEs[DirName + "/" + "METPhiChargedHadronsEndcapMinus"];
2607  meMETPhiChargedHadronsEndcapMinus->Fill(atan2(py_chargedHadronsEndcapMinus, px_chargedHadronsEndcapMinus));
2608  }
2609  if (pt_sum_NHF_Barrel) {
2610  meMETPhiNeutralHadronsBarrel = map_of_MEs[DirName + "/" + "METPhiNeutralHadronsBarrel"];
2612  meMETPhiNeutralHadronsBarrel->Fill(atan2(py_neutralHadronsBarrel, px_neutralHadronsBarrel));
2613  }
2614  if (pt_sum_NHF_Endcap_plus) {
2615  meMETPhiNeutralHadronsEndcapPlus = map_of_MEs[DirName + "/" + "METPhiNeutralHadronsEndcapPlus"];
2617  meMETPhiNeutralHadronsEndcapPlus->Fill(atan2(py_neutralHadronsEndcapPlus, px_neutralHadronsEndcapPlus));
2618  }
2619  if (pt_sum_NHF_Endcap_minus) {
2620  meMETPhiNeutralHadronsEndcapMinus = map_of_MEs[DirName + "/" + "METPhiNeutralHadronsEndcapMinus"];
2622  meMETPhiNeutralHadronsEndcapMinus->Fill(atan2(py_neutralHadronsEndcapMinus, px_neutralHadronsEndcapMinus));
2623  }
2624  if (pt_sum_PhF_Barrel) {
2625  meMETPhiPhotonsBarrel = map_of_MEs[DirName + "/" + "METPhiPhotonsBarrel"];
2627  meMETPhiPhotonsBarrel->Fill(atan2(py_PhotonsBarrel, px_PhotonsBarrel));
2628  }
2629  if (pt_sum_PhF_Endcap_plus) {
2630  meMETPhiPhotonsEndcapPlus = map_of_MEs[DirName + "/" + "METPhiPhotonsEndcapPlus"];
2632  meMETPhiPhotonsEndcapPlus->Fill(atan2(py_PhotonsEndcapPlus, px_PhotonsEndcapPlus));
2633  }
2634  if (pt_sum_PhF_Endcap_minus) {
2635  meMETPhiPhotonsEndcapMinus = map_of_MEs[DirName + "/" + "METPhiPhotonsEndcapMinus"];
2637  meMETPhiPhotonsEndcapMinus->Fill(atan2(py_PhotonsEndcapMinus, px_PhotonsEndcapMinus));
2638  }
2639  if (pt_sum_HFH_plus) {
2640  meMETPhiHFHadronsPlus = map_of_MEs[DirName + "/" + "METPhiHFHadronsPlus"];
2642  meMETPhiHFHadronsPlus->Fill(atan2(py_HFHadronsPlus, px_HFHadronsPlus));
2643  }
2644  if (pt_sum_HFH_minus) {
2645  meMETPhiHFHadronsMinus = map_of_MEs[DirName + "/" + "METPhiHFHadronsMinus"];
2647  meMETPhiHFHadronsMinus->Fill(atan2(py_HFHadronsMinus, px_HFHadronsMinus));
2648  }
2649  if (pt_sum_HFE_plus) {
2650  meMETPhiHFEGammasPlus = map_of_MEs[DirName + "/" + "METPhiHFEGammasPlus"];
2652  meMETPhiHFEGammasPlus->Fill(atan2(py_HFEGammasPlus, px_HFEGammasPlus));
2653  }
2654  if (pt_sum_HFE_minus) {
2655  meMETPhiHFEGammasMinus = map_of_MEs[DirName + "/" + "METPhiHFEGammasMinus"];
2657  meMETPhiHFEGammasMinus->Fill(atan2(py_HFEGammasMinus, px_HFEGammasMinus));
2658  }
2659  //fill other diagnostic plots based on trigger decision
2660  /*if(techTriggerCase[0]){//techTriggerResultBx0 && techTriggerResultBxM2 && techTriggerResultBxM1 -> both previous bunches filled
2661  meCHF_Barrel_BXm2BXm1Filled=map_of_MEs[DirName+"/"+"PfChargedHadronEtFractionBarrel_BXm2BXm1Filled"]; if(meCHF_Barrel_BXm2BXm1Filled && meCHF_Barrel_BXm2BXm1Filled->getRootObject()) meCHF_Barrel_BXm2BXm1Filled->Fill(pt_sum_CHF_Barrel/pfmet->sumEt());
2662  meCHF_EndcapPlus_BXm2BXm1Filled=map_of_MEs[DirName+"/"+"PfChargedHadronEtFractionEndcapPlus_BXm2BXm1Filled"]; if(meCHF_EndcapPlus_BXm2BXm1Filled && meCHF_EndcapPlus_BXm2BXm1Filled->getRootObject()) meCHF_EndcapPlus_BXm2BXm1Filled->Fill(pt_sum_CHF_Endcap_plus/pfmet->sumEt());
2663  meCHF_EndcapMinus_BXm2BXm1Filled=map_of_MEs[DirName+"/"+"PfChargedHadronEtFractionEndcapMinus_BXm2BXm1Filled"]; if(meCHF_EndcapMinus_BXm2BXm1Filled && meCHF_EndcapMinus_BXm2BXm1Filled->getRootObject()) meCHF_EndcapMinus_BXm2BXm1Filled->Fill(pt_sum_CHF_Endcap_minus/pfmet->sumEt());
2664  meNHF_Barrel_BXm2BXm1Filled=map_of_MEs[DirName+"/"+"PfNeutralHadronEtFractionBarrel_BXm2BXm1Filled"]; if(meNHF_Barrel_BXm2BXm1Filled && meNHF_Barrel_BXm2BXm1Filled->getRootObject()) meNHF_Barrel_BXm2BXm1Filled->Fill(pt_sum_NHF_Barrel/pfmet->sumEt());
2665  meNHF_EndcapPlus_BXm2BXm1Filled=map_of_MEs[DirName+"/"+"PfNeutralHadronEtFractionEndcapPlus_BXm2BXm1Filled"]; if(meNHF_EndcapPlus_BXm2BXm1Filled && meNHF_EndcapPlus_BXm2BXm1Filled->getRootObject()) meNHF_EndcapPlus_BXm2BXm1Filled->Fill(pt_sum_NHF_Endcap_plus/pfmet->sumEt());
2666  meNHF_EndcapMinus_BXm2BXm1Filled=map_of_MEs[DirName+"/"+"PfNeutralHadronEtFractionEndcapMinus_BXm2BXm1Filled"]; if(meNHF_EndcapMinus_BXm2BXm1Filled && meNHF_EndcapMinus_BXm2BXm1Filled->getRootObject()) meNHF_EndcapMinus_BXm2BXm1Filled->Fill(pt_sum_NHF_Endcap_minus/pfmet->sumEt());
2667  mePhF_Barrel_BXm2BXm1Filled=map_of_MEs[DirName+"/"+"PfPhotonEtFractionBarrel_BXm2BXm1Filled"]; if(mePhF_Barrel_BXm2BXm1Filled && mePhF_Barrel_BXm2BXm1Filled->getRootObject()) mePhF_Barrel_BXm2BXm1Filled->Fill(pt_sum_PhF_Barrel/pfmet->sumEt());
2668  mePhF_EndcapPlus_BXm2BXm1Filled=map_of_MEs[DirName+"/"+"PfPhotonEtFractionEndcapPlus_BXm2BXm1Filled"]; if(mePhF_EndcapPlus_BXm2BXm1Filled && mePhF_EndcapPlus_BXm2BXm1Filled->getRootObject()) mePhF_EndcapPlus_BXm2BXm1Filled->Fill(pt_sum_PhF_Endcap_plus/pfmet->sumEt());
2669  mePhF_EndcapMinus_BXm2BXm1Filled=map_of_MEs[DirName+"/"+"PfPhotonEtFractionEndcapMinus_BXm2BXm1Filled"]; if(mePhF_EndcapMinus_BXm2BXm1Filled && mePhF_EndcapMinus_BXm2BXm1Filled->getRootObject()) mePhF_EndcapMinus_BXm2BXm1Filled->Fill(pt_sum_PhF_Endcap_minus/pfmet->sumEt());
2670  meHFHadF_Plus_BXm2BXm1Filled=map_of_MEs[DirName+"/"+"PfHFHadronEtFractionPlus_BXm2BXm1Filled"]; if(meHFHadF_Plus_BXm2BXm1Filled && meHFHadF_Plus_BXm2BXm1Filled->getRootObject()) meHFHadF_Plus_BXm2BXm1Filled->Fill(pt_sum_HFH_plus/pfmet->sumEt());
2671  meHFHadF_Minus_BXm2BXm1Filled=map_of_MEs[DirName+"/"+"PfHFHadronEtFractionMinus_BXm2BXm1Filled"]; if(meHFHadF_Minus_BXm2BXm1Filled && meHFHadF_Minus_BXm2BXm1Filled->getRootObject()) meHFHadF_Minus_BXm2BXm1Filled->Fill(pt_sum_HFH_minus/pfmet->sumEt());
2672  meHFEMF_Plus_BXm2BXm1Filled=map_of_MEs[DirName+"/"+"PfHFEMEtFractionPlus_BXm2BXm1Filled"]; if(meHFEMF_Plus_BXm2BXm1Filled && meHFEMF_Plus_BXm2BXm1Filled->getRootObject()) meHFEMF_Plus_BXm2BXm1Filled->Fill(pt_sum_HFE_plus/pfmet->sumEt());
2673  meHFEMF_Minus_BXm2BXm1Filled=map_of_MEs[DirName+"/"+"PfHFEMEtFractionMinus_BXm2BXm1Filled"]; if(meHFEMF_Minus_BXm2BXm1Filled && meHFEMF_Minus_BXm2BXm1Filled->getRootObject()) meHFEMF_Minus_BXm2BXm1Filled->Fill(pt_sum_HFE_minus/pfmet->sumEt());
2674  mePhotonEtFraction_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"PfPhotonEtFraction_BXm2BXm1Filled"]; if ( mePhotonEtFraction_BXm2BXm1Filled && mePhotonEtFraction_BXm2BXm1Filled ->getRootObject()) mePhotonEtFraction_BXm2BXm1Filled ->Fill(pfmet->photonEtFraction());
2675  meNeutralHadronEtFraction_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"PfNeutralHadronEtFraction_BXm2BXm1Filled"]; if ( meNeutralHadronEtFraction_BXm2BXm1Filled && meNeutralHadronEtFraction_BXm2BXm1Filled ->getRootObject()) meNeutralHadronEtFraction_BXm2BXm1Filled ->Fill(pfmet->neutralHadronEtFraction());
2676  meChargedHadronEtFraction_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"PfChargedHadronEtFraction_BXm2BXm1Filled"]; if ( meChargedHadronEtFraction_BXm2BXm1Filled && meChargedHadronEtFraction_BXm2BXm1Filled ->getRootObject()) meChargedHadronEtFraction_BXm2BXm1Filled ->Fill(pfmet->chargedHadronEtFraction());
2677  meMET_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"MET_BXm2BXm1Filled"]; if ( meMET_BXm2BXm1Filled && meMET_BXm2BXm1Filled ->getRootObject()) meMET_BXm2BXm1Filled ->Fill(pfmet->pt());
2678  meSumET_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"SumET_BXm2BXm1Filled"]; if ( meSumET_BXm2BXm1Filled && meSumET_BXm2BXm1Filled ->getRootObject()) meSumET_BXm2BXm1Filled ->Fill(pfmet->sumEt());
2679  if(pt_sum_CHF_Barrel){
2680  meMETPhiChargedHadronsBarrel_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiChargedHadronsBarrel_BXm2BXm1Filled"];if(meMETPhiChargedHadronsBarrel_BXm2BXm1Filled && meMETPhiChargedHadronsBarrel_BXm2BXm1Filled ->getRootObject())meMETPhiChargedHadronsBarrel_BXm2BXm1Filled->Fill(atan2(py_chargedHadronsBarrel,px_chargedHadronsBarrel));
2681  }
2682  if(pt_sum_CHF_Endcap_plus){
2683  meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiChargedHadronsEndcapPlus_BXm2BXm1Filled"];if(meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Filled && meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Filled ->getRootObject())meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Filled->Fill(atan2(py_chargedHadronsEndcapPlus,px_chargedHadronsEndcapPlus));
2684  }
2685  if(pt_sum_CHF_Endcap_minus){
2686  meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiChargedHadronsEndcapMinus_BXm2BXm1Filled"];if(meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Filled && meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Filled ->getRootObject())meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Filled->Fill(atan2(py_chargedHadronsEndcapMinus,px_chargedHadronsEndcapMinus));
2687  }
2688  if(pt_sum_NHF_Barrel){
2689  meMETPhiNeutralHadronsBarrel_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiNeutralHadronsBarrel_BXm2BXm1Filled"];if(meMETPhiNeutralHadronsBarrel_BXm2BXm1Filled && meMETPhiNeutralHadronsBarrel_BXm2BXm1Filled ->getRootObject())meMETPhiNeutralHadronsBarrel_BXm2BXm1Filled->Fill(atan2(py_neutralHadronsBarrel,px_neutralHadronsBarrel));
2690  }
2691  if(pt_sum_NHF_Endcap_plus){
2692  meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiNeutralHadronsEndcapPlus_BXm2BXm1Filled"];if(meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Filled && meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Filled ->getRootObject())meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Filled->Fill(atan2(py_neutralHadronsEndcapPlus,px_neutralHadronsEndcapPlus));
2693  }
2694  if(pt_sum_NHF_Endcap_minus){
2695  meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiNeutralHadronsEndcapMinus_BXm2BXm1Filled"];if(meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Filled && meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Filled ->getRootObject())meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Filled->Fill(atan2(py_neutralHadronsEndcapMinus,px_neutralHadronsEndcapMinus));
2696  }
2697  if(pt_sum_PhF_Barrel){
2698  meMETPhiPhotonsBarrel_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiPhotonsBarrel_BXm2BXm1Filled"];if(meMETPhiPhotonsBarrel_BXm2BXm1Filled && meMETPhiPhotonsBarrel_BXm2BXm1Filled ->getRootObject())meMETPhiPhotonsBarrel_BXm2BXm1Filled->Fill(atan2(py_PhotonsBarrel,px_PhotonsBarrel));
2699  }
2700  if(pt_sum_PhF_Endcap_plus){
2701  meMETPhiPhotonsEndcapPlus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiPhotonsEndcapPlus_BXm2BXm1Filled"];if(meMETPhiPhotonsEndcapPlus_BXm2BXm1Filled && meMETPhiPhotonsEndcapPlus_BXm2BXm1Filled ->getRootObject())meMETPhiPhotonsEndcapPlus_BXm2BXm1Filled->Fill(atan2(py_PhotonsEndcapPlus,px_PhotonsEndcapPlus));
2702  }
2703  if(pt_sum_PhF_Endcap_minus){
2704  meMETPhiPhotonsEndcapMinus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiPhotonsEndcapMinus_BXm2BXm1Filled"];if(meMETPhiPhotonsEndcapMinus_BXm2BXm1Filled && meMETPhiPhotonsEndcapMinus_BXm2BXm1Filled ->getRootObject())meMETPhiPhotonsEndcapMinus_BXm2BXm1Filled->Fill(atan2(py_PhotonsEndcapMinus,px_PhotonsEndcapMinus));
2705  }
2706  if(pt_sum_HFH_plus){
2707  meMETPhiHFHadronsPlus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiHFHadronsPlus_BXm2BXm1Filled"];if(meMETPhiHFHadronsPlus_BXm2BXm1Filled && meMETPhiHFHadronsPlus_BXm2BXm1Filled ->getRootObject())meMETPhiHFHadronsPlus_BXm2BXm1Filled->Fill(atan2(py_HFHadronsPlus,px_HFHadronsPlus));
2708  }
2709  if(pt_sum_HFH_minus){
2710  meMETPhiHFHadronsMinus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiHFHadronsMinus_BXm2BXm1Filled"];if(meMETPhiHFHadronsMinus_BXm2BXm1Filled && meMETPhiHFHadronsMinus_BXm2BXm1Filled ->getRootObject())meMETPhiHFHadronsMinus_BXm2BXm1Filled->Fill(atan2(py_HFHadronsMinus,px_HFHadronsMinus));
2711  }
2712  if(pt_sum_HFE_plus){
2713  meMETPhiHFEGammasPlus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiHFEGammasPlus_BXm2BXm1Filled"];if(meMETPhiHFEGammasPlus_BXm2BXm1Filled && meMETPhiHFEGammasPlus_BXm2BXm1Filled ->getRootObject())meMETPhiHFEGammasPlus_BXm2BXm1Filled->Fill(atan2(py_HFEGammasPlus,px_HFEGammasPlus));
2714  }
2715  if(pt_sum_HFE_minus){
2716  meMETPhiHFEGammasMinus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiHFEGammasMinus_BXm2BXm1Filled"];if(meMETPhiHFEGammasMinus_BXm2BXm1Filled && meMETPhiHFEGammasMinus_BXm2BXm1Filled ->getRootObject())meMETPhiHFEGammasMinus_BXm2BXm1Filled->Fill(atan2(py_HFEGammasMinus,px_HFEGammasMinus));
2717  }
2718  }*/
2719  if (techTriggerCase[1]) { //techTriggerResultBx0 && techTriggerResultBxM1 -> previous bunch filled
2720  meCHF_Barrel_BXm1Filled = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionBarrel_BXm1Filled"];
2722  meCHF_Barrel_BXm1Filled->Fill(pt_sum_CHF_Barrel / pfmet->sumEt());
2723  meCHF_EndcapPlus_BXm1Filled = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionEndcapPlus_BXm1Filled"];
2725  meCHF_EndcapPlus_BXm1Filled->Fill(pt_sum_CHF_Endcap_plus / pfmet->sumEt());
2726  meCHF_EndcapMinus_BXm1Filled = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionEndcapMinus_BXm1Filled"];
2728  meCHF_EndcapMinus_BXm1Filled->Fill(pt_sum_CHF_Endcap_minus / pfmet->sumEt());
2729  meNHF_Barrel_BXm1Filled = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionBarrel_BXm1Filled"];
2731  meNHF_Barrel_BXm1Filled->Fill(pt_sum_NHF_Barrel / pfmet->sumEt());
2732  meNHF_EndcapPlus_BXm1Filled = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionEndcapPlus_BXm1Filled"];
2734  meNHF_EndcapPlus_BXm1Filled->Fill(pt_sum_NHF_Endcap_plus / pfmet->sumEt());
2735  meNHF_EndcapMinus_BXm1Filled = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionEndcapMinus_BXm1Filled"];
2737  meNHF_EndcapMinus_BXm1Filled->Fill(pt_sum_NHF_Endcap_minus / pfmet->sumEt());
2738  mePhF_Barrel_BXm1Filled = map_of_MEs[DirName + "/" + "PfPhotonEtFractionBarrel_BXm1Filled"];
2740  mePhF_Barrel_BXm1Filled->Fill(pt_sum_PhF_Barrel / pfmet->sumEt());
2741  mePhF_EndcapPlus_BXm1Filled = map_of_MEs[DirName + "/" + "PfPhotonEtFractionEndcapPlus_BXm1Filled"];
2743  mePhF_EndcapPlus_BXm1Filled->Fill(pt_sum_PhF_Endcap_plus / pfmet->sumEt());
2744  mePhF_EndcapMinus_BXm1Filled = map_of_MEs[DirName + "/" + "PfPhotonEtFractionEndcapMinus_BXm1Filled"];
2746  mePhF_EndcapMinus_BXm1Filled->Fill(pt_sum_PhF_Endcap_minus / pfmet->sumEt());
2747  meHFHadF_Plus_BXm1Filled = map_of_MEs[DirName + "/" + "PfHFHadronEtFractionPlus_BXm1Filled"];
2749  meHFHadF_Plus_BXm1Filled->Fill(pt_sum_HFH_plus / pfmet->sumEt());
2750  meHFHadF_Minus_BXm1Filled = map_of_MEs[DirName + "/" + "PfHFHadronEtFractionMinus_BXm1Filled"];
2752  meHFHadF_Minus_BXm1Filled->Fill(pt_sum_HFH_minus / pfmet->sumEt());
2753  meHFEMF_Plus_BXm1Filled = map_of_MEs[DirName + "/" + "PfHFEMEtFractionPlus_BXm1Filled"];
2755  meHFEMF_Plus_BXm1Filled->Fill(pt_sum_HFE_plus / pfmet->sumEt());
2756  meHFEMF_Minus_BXm1Filled = map_of_MEs[DirName + "/" + "PfHFEMEtFractionMinus_BXm1Filled"];
2758  meHFEMF_Minus_BXm1Filled->Fill(pt_sum_HFE_minus / pfmet->sumEt());
2759  mePhotonEtFraction_BXm1Filled = map_of_MEs[DirName + "/" + "PfPhotonEtFraction_BXm1Filled"];
2761  mePhotonEtFraction_BXm1Filled->Fill(pfmet->photonEtFraction());
2762  meNeutralHadronEtFraction_BXm1Filled = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFraction_BXm1Filled"];
2764  meNeutralHadronEtFraction_BXm1Filled->Fill(pfmet->neutralHadronEtFraction());
2765  meChargedHadronEtFraction_BXm1Filled = map_of_MEs[DirName + "/" + "PfChargedHadronEtFraction_BXm1Filled"];
2767  meChargedHadronEtFraction_BXm1Filled->Fill(pfmet->chargedHadronEtFraction());
2768  meMET_BXm1Filled = map_of_MEs[DirName + "/" + "MET_BXm1Filled"];
2770  meMET_BXm1Filled->Fill(pfmet->pt());
2771  meSumET_BXm1Filled = map_of_MEs[DirName + "/" + "SumET_BXm1Filled"];
2773  meSumET_BXm1Filled->Fill(pfmet->sumEt());
2774  if (pt_sum_CHF_Barrel) {
2776  map_of_MEs[DirName + "/" + "METPhiChargedHadronsBarrel_BXm1Filled"];
2778  meMETPhiChargedHadronsBarrel_BXm1Filled->Fill(atan2(py_chargedHadronsBarrel, px_chargedHadronsBarrel));
2779  }
2780  if (pt_sum_CHF_Endcap_plus) {
2782  map_of_MEs[DirName + "/" + "METPhiChargedHadronsEndcapPlus_BXm1Filled"];
2786  atan2(py_chargedHadronsEndcapPlus, px_chargedHadronsEndcapPlus));
2787  }
2788  if (pt_sum_CHF_Endcap_minus) {
2790  map_of_MEs[DirName + "/" + "METPhiChargedHadronsEndcapMinus_BXm1Filled"];
2794  atan2(py_chargedHadronsEndcapMinus, px_chargedHadronsEndcapMinus));
2795  }
2796  if (pt_sum_NHF_Barrel) {
2798  map_of_MEs[DirName + "/" + "METPhiNeutralHadronsBarrel_BXm1Filled"];
2800  meMETPhiNeutralHadronsBarrel_BXm1Filled->Fill(atan2(py_neutralHadronsBarrel, px_neutralHadronsBarrel));
2801  }
2802  if (pt_sum_NHF_Endcap_plus) {
2804  map_of_MEs[DirName + "/" + "METPhiNeutralHadronsEndcapPlus_BXm1Filled"];
2808  atan2(py_neutralHadronsEndcapPlus, px_neutralHadronsEndcapPlus));
2809  }
2810  if (pt_sum_NHF_Endcap_minus) {
2812  map_of_MEs[DirName + "/" + "METPhiNeutralHadronsEndcapMinus_BXm1Filled"];
2816  atan2(py_neutralHadronsEndcapMinus, px_neutralHadronsEndcapMinus));
2817  }
2818  if (pt_sum_PhF_Barrel) {
2819  meMETPhiPhotonsBarrel_BXm1Filled = map_of_MEs[DirName + "/" + "METPhiPhotonsBarrel_BXm1Filled"];
2821  meMETPhiPhotonsBarrel_BXm1Filled->Fill(atan2(py_PhotonsBarrel, px_PhotonsBarrel));
2822  }
2823  if (pt_sum_PhF_Endcap_plus) {
2824  meMETPhiPhotonsEndcapPlus_BXm1Filled = map_of_MEs[DirName + "/" + "METPhiPhotonsEndcapPlus_BXm1Filled"];
2826  meMETPhiPhotonsEndcapPlus_BXm1Filled->Fill(atan2(py_PhotonsEndcapPlus, px_PhotonsEndcapPlus));
2827  }
2828  if (pt_sum_PhF_Endcap_minus) {
2829  meMETPhiPhotonsEndcapMinus_BXm1Filled = map_of_MEs[DirName + "/" + "METPhiPhotonsEndcapMinus_BXm1Filled"];
2831  meMETPhiPhotonsEndcapMinus_BXm1Filled->Fill(atan2(py_PhotonsEndcapMinus, px_PhotonsEndcapMinus));
2832  }
2833  if (pt_sum_HFH_plus) {
2834  meMETPhiHFHadronsPlus_BXm1Filled = map_of_MEs[DirName + "/" + "METPhiHFHadronsPlus_BXm1Filled"];
2836  meMETPhiHFHadronsPlus_BXm1Filled->Fill(atan2(py_HFHadronsPlus, px_HFHadronsPlus));
2837  }
2838  if (pt_sum_HFH_minus) {
2839  meMETPhiHFHadronsMinus_BXm1Filled = map_of_MEs[DirName + "/" + "METPhiHFHadronsMinus_BXm1Filled"];
2841  meMETPhiHFHadronsMinus_BXm1Filled->Fill(atan2(py_HFHadronsMinus, px_HFHadronsMinus));
2842  }
2843  if (pt_sum_HFE_plus) {
2844  meMETPhiHFEGammasPlus_BXm1Filled = map_of_MEs[DirName + "/" + "METPhiHFEGammasPlus_BXm1Filled"];
2846  meMETPhiHFEGammasPlus_BXm1Filled->Fill(atan2(py_HFEGammasPlus, px_HFEGammasPlus));
2847  }
2848  if (pt_sum_HFE_minus) {
2849  meMETPhiHFEGammasMinus_BXm1Filled = map_of_MEs[DirName + "/" + "METPhiHFEGammasMinus_BXm1Filled"];
2851  meMETPhiHFEGammasMinus_BXm1Filled->Fill(atan2(py_HFEGammasMinus, px_HFEGammasMinus));
2852  }
2853  }
2854  /*if(techTriggerCase[3]){//techTriggerResultBx0 && !techTriggerResultBxM2 && !techTriggerResultBxM1 ->previous two bunches empty
2855  meCHF_Barrel_BXm2BXm1Empty=map_of_MEs[DirName+"/"+"PfChargedHadronEtFractionBarrel_BXm2BXm1Empty"]; if(meCHF_Barrel_BXm2BXm1Empty && meCHF_Barrel_BXm2BXm1Empty->getRootObject()) meCHF_Barrel_BXm2BXm1Empty->Fill(pt_sum_CHF_Barrel/pfmet->sumEt());
2856  meCHF_EndcapPlus_BXm2BXm1Empty=map_of_MEs[DirName+"/"+"PfChargedHadronEtFractionEndcapPlus_BXm2BXm1Empty"]; if(meCHF_EndcapPlus_BXm2BXm1Empty && meCHF_EndcapPlus_BXm2BXm1Empty->getRootObject()) meCHF_EndcapPlus_BXm2BXm1Empty->Fill(pt_sum_CHF_Endcap_plus/pfmet->sumEt());
2857  meCHF_EndcapMinus_BXm2BXm1Empty=map_of_MEs[DirName+"/"+"PfChargedHadronEtFractionEndcapMinus_BXm2BXm1Empty"]; if(meCHF_EndcapMinus_BXm2BXm1Empty && meCHF_EndcapMinus_BXm2BXm1Empty->getRootObject()) meCHF_EndcapMinus_BXm2BXm1Empty->Fill(pt_sum_CHF_Endcap_minus/pfmet->sumEt());
2858  meNHF_Barrel_BXm2BXm1Empty=map_of_MEs[DirName+"/"+"PfNeutralHadronEtFractionBarrel_BXm2BXm1Empty"]; if(meNHF_Barrel_BXm2BXm1Empty && meNHF_Barrel_BXm2BXm1Empty->getRootObject()) meNHF_Barrel_BXm2BXm1Empty->Fill(pt_sum_NHF_Barrel/pfmet->sumEt());
2859  meNHF_EndcapPlus_BXm2BXm1Empty=map_of_MEs[DirName+"/"+"PfNeutralHadronEtFractionEndcapPlus_BXm2BXm1Empty"]; if(meNHF_EndcapPlus_BXm2BXm1Empty && meNHF_EndcapPlus_BXm2BXm1Empty->getRootObject()) meNHF_EndcapPlus_BXm2BXm1Empty->Fill(pt_sum_NHF_Endcap_plus/pfmet->sumEt());
2860  meNHF_EndcapMinus_BXm2BXm1Empty=map_of_MEs[DirName+"/"+"PfNeutralHadronEtFractionEndcapMinus_BXm2BXm1Empty"]; if(meNHF_EndcapMinus_BXm2BXm1Empty && meNHF_EndcapMinus_BXm2BXm1Empty->getRootObject()) meNHF_EndcapMinus_BXm2BXm1Empty->Fill(pt_sum_NHF_Endcap_minus/pfmet->sumEt());
2861  mePhF_Barrel_BXm2BXm1Empty=map_of_MEs[DirName+"/"+"PfPhotonEtFractionBarrel_BXm2BXm1Empty"]; if(mePhF_Barrel_BXm2BXm1Empty && mePhF_Barrel_BXm2BXm1Empty->getRootObject()) mePhF_Barrel_BXm2BXm1Empty->Fill(pt_sum_PhF_Barrel/pfmet->sumEt());
2862  mePhF_EndcapPlus_BXm2BXm1Empty=map_of_MEs[DirName+"/"+"PfPhotonEtFractionEndcapPlus_BXm2BXm1Empty"]; if(mePhF_EndcapPlus_BXm2BXm1Empty && mePhF_EndcapPlus_BXm2BXm1Empty->getRootObject()) mePhF_EndcapPlus_BXm2BXm1Empty->Fill(pt_sum_PhF_Endcap_plus/pfmet->sumEt());
2863  mePhF_EndcapMinus_BXm2BXm1Empty=map_of_MEs[DirName+"/"+"PfPhotonEtFractionEndcapMinus_BXm2BXm1Empty"]; if(mePhF_EndcapMinus_BXm2BXm1Empty && mePhF_EndcapMinus_BXm2BXm1Empty->getRootObject()) mePhF_EndcapMinus_BXm2BXm1Empty->Fill(pt_sum_PhF_Endcap_minus/pfmet->sumEt());
2864  meHFHadF_Plus_BXm2BXm1Empty=map_of_MEs[DirName+"/"+"PfHFHadronEtFractionPlus_BXm2BXm1Empty"]; if(meHFHadF_Plus_BXm2BXm1Empty && meHFHadF_Plus_BXm2BXm1Empty->getRootObject()) meHFHadF_Plus_BXm2BXm1Empty->Fill(pt_sum_HFH_plus/pfmet->sumEt());
2865  meHFHadF_Minus_BXm2BXm1Empty=map_of_MEs[DirName+"/"+"PfHFHadronEtFractionMinus_BXm2BXm1Empty"]; if(meHFHadF_Minus_BXm2BXm1Empty && meHFHadF_Minus_BXm2BXm1Empty->getRootObject()) meHFHadF_Minus_BXm2BXm1Empty->Fill(pt_sum_HFH_minus/pfmet->sumEt());
2866  meHFEMF_Plus_BXm2BXm1Empty=map_of_MEs[DirName+"/"+"PfHFEMEtFractionPlus_BXm2BXm1Empty"]; if(meHFEMF_Plus_BXm2BXm1Empty && meHFEMF_Plus_BXm2BXm1Empty->getRootObject()) meHFEMF_Plus_BXm2BXm1Empty->Fill(pt_sum_HFE_plus/pfmet->sumEt());
2867  meHFEMF_Minus_BXm2BXm1Empty=map_of_MEs[DirName+"/"+"PfHFEMEtFractionMinus_BXm2BXm1Empty"]; if(meHFEMF_Minus_BXm2BXm1Empty && meHFEMF_Minus_BXm2BXm1Empty->getRootObject()) meHFEMF_Minus_BXm2BXm1Empty->Fill(pt_sum_HFE_minus/pfmet->sumEt());
2868  mePhotonEtFraction_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"PfPhotonEtFraction_BXm2BXm1Empty"]; if ( mePhotonEtFraction_BXm2BXm1Empty && mePhotonEtFraction_BXm2BXm1Empty ->getRootObject()) mePhotonEtFraction_BXm2BXm1Empty ->Fill(pfmet->photonEtFraction());
2869  meNeutralHadronEtFraction_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"PfNeutralHadronEtFraction_BXm2BXm1Empty"]; if ( meNeutralHadronEtFraction_BXm2BXm1Empty && meNeutralHadronEtFraction_BXm2BXm1Empty ->getRootObject()) meNeutralHadronEtFraction_BXm2BXm1Empty ->Fill(pfmet->neutralHadronEtFraction());
2870  meChargedHadronEtFraction_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"PfChargedHadronEtFraction_BXm2BXm1Empty"]; if ( meChargedHadronEtFraction_BXm2BXm1Empty && meChargedHadronEtFraction_BXm2BXm1Empty ->getRootObject()) meChargedHadronEtFraction_BXm2BXm1Empty ->Fill(pfmet->chargedHadronEtFraction());
2871  meMET_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"MET_BXm2BXm1Empty"]; if ( meMET_BXm2BXm1Empty && meMET_BXm2BXm1Empty ->getRootObject()) meMET_BXm2BXm1Empty ->Fill(pfmet->pt());
2872  meSumET_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"SumET_BXm2BXm1Empty"]; if ( meSumET_BXm2BXm1Empty && meSumET_BXm2BXm1Empty ->getRootObject()) meSumET_BXm2BXm1Empty ->Fill(pfmet->sumEt());
2873  if(pt_sum_CHF_Barrel){
2874  meMETPhiChargedHadronsBarrel_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiChargedHadronsBarrel_BXm2BXm1Empty"];if(meMETPhiChargedHadronsBarrel_BXm2BXm1Empty && meMETPhiChargedHadronsBarrel_BXm2BXm1Empty ->getRootObject())meMETPhiChargedHadronsBarrel_BXm2BXm1Empty->Fill(atan2(py_chargedHadronsBarrel,px_chargedHadronsBarrel));
2875  }
2876  if(pt_sum_CHF_Endcap_plus){
2877  meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiChargedHadronsEndcapPlus_BXm2BXm1Empty"];if(meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Empty && meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Empty ->getRootObject())meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Empty->Fill(atan2(py_chargedHadronsEndcapPlus,px_chargedHadronsEndcapPlus));
2878  }
2879  if(pt_sum_CHF_Endcap_minus){
2880  meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiChargedHadronsEndcapMinus_BXm2BXm1Empty"];if(meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Empty && meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Empty ->getRootObject())meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Empty->Fill(atan2(py_chargedHadronsEndcapMinus,px_chargedHadronsEndcapMinus));
2881  }
2882  if(pt_sum_NHF_Barrel){
2883  meMETPhiNeutralHadronsBarrel_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiNeutralHadronsBarrel_BXm2BXm1Empty"];if(meMETPhiNeutralHadronsBarrel_BXm2BXm1Empty && meMETPhiNeutralHadronsBarrel_BXm2BXm1Empty ->getRootObject())meMETPhiNeutralHadronsBarrel_BXm2BXm1Empty->Fill(atan2(py_neutralHadronsBarrel,px_neutralHadronsBarrel));
2884  }
2885  if(pt_sum_NHF_Endcap_plus){
2886  meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiNeutralHadronsEndcapPlus_BXm2BXm1Empty"];if(meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Empty && meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Empty ->getRootObject())meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Empty->Fill(atan2(py_neutralHadronsEndcapPlus,px_neutralHadronsEndcapPlus));
2887  }
2888  if(pt_sum_NHF_Endcap_minus){
2889  meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiNeutralHadronsEndcapMinus_BXm2BXm1Empty"];if(meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Empty && meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Empty ->getRootObject())meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Empty->Fill(atan2(py_neutralHadronsEndcapMinus,px_neutralHadronsEndcapMinus));
2890  }
2891  if(pt_sum_PhF_Barrel){
2892  meMETPhiPhotonsBarrel_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiPhotonsBarrel_BXm2BXm1Empty"];if(meMETPhiPhotonsBarrel_BXm2BXm1Empty && meMETPhiPhotonsBarrel_BXm2BXm1Empty ->getRootObject())meMETPhiPhotonsBarrel_BXm2BXm1Empty->Fill(atan2(py_PhotonsBarrel,px_PhotonsBarrel));
2893  }
2894  if(pt_sum_PhF_Endcap_plus){
2895  meMETPhiPhotonsEndcapPlus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiPhotonsEndcapPlus_BXm2BXm1Empty"];if(meMETPhiPhotonsEndcapPlus_BXm2BXm1Empty && meMETPhiPhotonsEndcapPlus_BXm2BXm1Empty ->getRootObject())meMETPhiPhotonsEndcapPlus_BXm2BXm1Empty->Fill(atan2(py_PhotonsEndcapPlus,px_PhotonsEndcapPlus));
2896  }
2897  if(pt_sum_PhF_Endcap_minus){
2898  meMETPhiPhotonsEndcapMinus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiPhotonsEndcapMinus_BXm2BXm1Empty"];if(meMETPhiPhotonsEndcapMinus_BXm2BXm1Empty && meMETPhiPhotonsEndcapMinus_BXm2BXm1Empty ->getRootObject())meMETPhiPhotonsEndcapMinus_BXm2BXm1Empty->Fill(atan2(py_PhotonsEndcapMinus,px_PhotonsEndcapMinus));
2899  }
2900  if(pt_sum_HFH_plus){
2901  meMETPhiHFHadronsPlus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiHFHadronsPlus_BXm2BXm1Empty"];if(meMETPhiHFHadronsPlus_BXm2BXm1Empty && meMETPhiHFHadronsPlus_BXm2BXm1Empty ->getRootObject())meMETPhiHFHadronsPlus_BXm2BXm1Empty->Fill(atan2(py_HFHadronsPlus,px_HFHadronsPlus));
2902  }
2903  if(pt_sum_HFH_minus){
2904  meMETPhiHFHadronsMinus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiHFHadronsMinus_BXm2BXm1Empty"];if(meMETPhiHFHadronsMinus_BXm2BXm1Empty && meMETPhiHFHadronsMinus_BXm2BXm1Empty ->getRootObject())meMETPhiHFHadronsMinus_BXm2BXm1Empty->Fill(atan2(py_HFHadronsMinus,px_HFHadronsMinus));
2905  }
2906  if(pt_sum_HFE_plus){
2907  meMETPhiHFEGammasPlus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiHFEGammasPlus_BXm2BXm1Empty"];if(meMETPhiHFEGammasPlus_BXm2BXm1Empty && meMETPhiHFEGammasPlus_BXm2BXm1Empty ->getRootObject())meMETPhiHFEGammasPlus_BXm2BXm1Empty->Fill(atan2(py_HFEGammasPlus,px_HFEGammasPlus));
2908  }
2909  if(pt_sum_HFE_minus){
2910  meMETPhiHFEGammasMinus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiHFEGammasMinus_BXm2BXm1Empty"];if(meMETPhiHFEGammasMinus_BXm2BXm1Empty && meMETPhiHFEGammasMinus_BXm2BXm1Empty ->getRootObject())meMETPhiHFEGammasMinus_BXm2BXm1Empty->Fill(atan2(py_HFEGammasMinus,px_HFEGammasMinus));
2911  }
2912  }*/
2913  if (techTriggerCase[2]) { //techTriggerResultBx0 && !techTriggerResultBxM1 --> previous bunch empty
2914  meCHF_Barrel_BXm1Empty = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionBarrel_BXm1Empty"];
2916  meCHF_Barrel_BXm1Empty->Fill(pt_sum_CHF_Barrel / pfmet->sumEt());
2917  meCHF_EndcapPlus_BXm1Empty = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionEndcapPlus_BXm1Empty"];
2919  meCHF_EndcapPlus_BXm1Empty->Fill(pt_sum_CHF_Endcap_plus / pfmet->sumEt());
2920  meCHF_EndcapMinus_BXm1Empty = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionEndcapMinus_BXm1Empty"];
2922  meCHF_EndcapMinus_BXm1Empty->Fill(pt_sum_CHF_Endcap_minus / pfmet->sumEt());
2923  meNHF_Barrel_BXm1Empty = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionBarrel_BXm1Empty"];
2925  meNHF_Barrel_BXm1Empty->Fill(pt_sum_NHF_Barrel / pfmet->sumEt());
2926  meNHF_EndcapPlus_BXm1Empty = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionEndcapPlus_BXm1Empty"];
2928  meNHF_EndcapPlus_BXm1Empty->Fill(pt_sum_NHF_Endcap_plus / pfmet->sumEt());
2929  meNHF_EndcapMinus_BXm1Empty = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionEndcapMinus_BXm1Empty"];
2931  meNHF_EndcapMinus_BXm1Empty->Fill(pt_sum_NHF_Endcap_minus / pfmet->sumEt());
2932  mePhF_Barrel_BXm1Empty = map_of_MEs[DirName + "/" + "PfPhotonEtFractionBarrel_BXm1Empty"];
2934  mePhF_Barrel_BXm1Empty->Fill(pt_sum_PhF_Barrel / pfmet->sumEt());
2935  mePhF_EndcapPlus_BXm1Empty = map_of_MEs[DirName + "/" + "PfPhotonEtFractionEndcapPlus_BXm1Empty"];
2937  mePhF_EndcapPlus_BXm1Empty->Fill(pt_sum_PhF_Endcap_plus / pfmet->sumEt());
2938  mePhF_EndcapMinus_BXm1Empty = map_of_MEs[DirName + "/" + "PfPhotonEtFractionEndcapMinus_BXm1Empty"];
2940  mePhF_EndcapMinus_BXm1Empty->Fill(pt_sum_PhF_Endcap_minus / pfmet->sumEt());
2941  meHFHadF_Plus_BXm1Empty = map_of_MEs[DirName + "/" + "PfHFHadronEtFractionPlus_BXm1Empty"];
2943  meHFHadF_Plus_BXm1Empty->Fill(pt_sum_HFH_plus / pfmet->sumEt());
2944  meHFHadF_Minus_BXm1Empty = map_of_MEs[DirName + "/" + "PfHFHadronEtFractionMinus_BXm1Empty"];
2946  meHFHadF_Minus_BXm1Empty->Fill(pt_sum_HFH_minus / pfmet->sumEt());
2947  meHFEMF_Plus_BXm1Empty = map_of_MEs[DirName + "/" + "PfHFEMEtFractionPlus_BXm1Empty"];
2949  meHFEMF_Plus_BXm1Empty->Fill(pt_sum_HFE_plus / pfmet->sumEt());
2950  meHFEMF_Minus_BXm1Empty = map_of_MEs[DirName + "/" + "PfHFEMEtFractionMinus_BXm1Empty"];
2952  meHFEMF_Minus_BXm1Empty->Fill(pt_sum_HFE_minus / pfmet->sumEt());
2953  mePhotonEtFraction_BXm1Empty = map_of_MEs[DirName + "/" + "PfPhotonEtFraction_BXm1Empty"];
2955  mePhotonEtFraction_BXm1Empty->Fill(pfmet->photonEtFraction());
2956  meNeutralHadronEtFraction_BXm1Empty = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFraction_BXm1Empty"];
2958  meNeutralHadronEtFraction_BXm1Empty->Fill(pfmet->neutralHadronEtFraction());
2959  meChargedHadronEtFraction_BXm1Empty = map_of_MEs[DirName + "/" + "PfChargedHadronEtFraction_BXm1Empty"];
2961  meChargedHadronEtFraction_BXm1Empty->Fill(pfmet->chargedHadronEtFraction());
2962  meMET_BXm1Empty = map_of_MEs[DirName + "/" + "MET_BXm1Empty"];
2964  meMET_BXm1Empty->Fill(pfmet->pt());
2965  meSumET_BXm1Empty = map_of_MEs[DirName + "/" + "SumET_BXm1Empty"];
2967  meSumET_BXm1Empty->Fill(pfmet->sumEt());
2968  if (pt_sum_CHF_Barrel) {
2969  meMETPhiChargedHadronsBarrel_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiChargedHadronsBarrel_BXm1Empty"];
2971  meMETPhiChargedHadronsBarrel_BXm1Empty->Fill(atan2(py_chargedHadronsBarrel, px_chargedHadronsBarrel));
2972  }
2973  if (pt_sum_CHF_Endcap_plus) {
2975  map_of_MEs[DirName + "/" + "METPhiChargedHadronsEndcapPlus_BXm1Empty"];
2979  atan2(py_chargedHadronsEndcapPlus, px_chargedHadronsEndcapPlus));
2980  }
2981  if (pt_sum_CHF_Endcap_minus) {
2983  map_of_MEs[DirName + "/" + "METPhiChargedHadronsEndcapMinus_BXm1Empty"];
2987  atan2(py_chargedHadronsEndcapMinus, px_chargedHadronsEndcapMinus));
2988  }
2989  if (pt_sum_NHF_Barrel) {
2990  meMETPhiNeutralHadronsBarrel_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiNeutralHadronsBarrel_BXm1Empty"];
2992  meMETPhiNeutralHadronsBarrel_BXm1Empty->Fill(atan2(py_neutralHadronsBarrel, px_neutralHadronsBarrel));
2993  }
2994  if (pt_sum_NHF_Endcap_plus) {
2996  map_of_MEs[DirName + "/" + "METPhiNeutralHadronsEndcapPlus_BXm1Empty"];
3000  atan2(py_neutralHadronsEndcapPlus, px_neutralHadronsEndcapPlus));
3001  }
3002  if (pt_sum_NHF_Endcap_minus) {
3004  map_of_MEs[DirName + "/" + "METPhiNeutralHadronsEndcapMinus_BXm1Empty"];
3008  atan2(py_neutralHadronsEndcapMinus, px_neutralHadronsEndcapMinus));
3009  }
3010  if (pt_sum_PhF_Barrel) {
3011  meMETPhiPhotonsBarrel_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiPhotonsBarrel_BXm1Empty"];
3013  meMETPhiPhotonsBarrel_BXm1Empty->Fill(atan2(py_PhotonsBarrel, px_PhotonsBarrel));
3014  }
3015  if (pt_sum_PhF_Endcap_plus) {
3016  meMETPhiPhotonsEndcapPlus_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiPhotonsEndcapPlus_BXm1Empty"];
3018  meMETPhiPhotonsEndcapPlus_BXm1Empty->Fill(atan2(py_PhotonsEndcapPlus, px_PhotonsEndcapPlus));
3019  }
3020  if (pt_sum_PhF_Endcap_minus) {
3021  meMETPhiPhotonsEndcapMinus_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiPhotonsEndcapMinus_BXm1Empty"];
3023  meMETPhiPhotonsEndcapMinus_BXm1Empty->Fill(atan2(py_PhotonsEndcapMinus, px_PhotonsEndcapMinus));
3024  }
3025  if (pt_sum_HFH_plus) {
3026  meMETPhiHFHadronsPlus_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiHFHadronsPlus_BXm1Empty"];
3028  meMETPhiHFHadronsPlus_BXm1Empty->Fill(atan2(py_HFHadronsPlus, px_HFHadronsPlus));
3029  }
3030  if (pt_sum_HFH_minus) {
3031  meMETPhiHFHadronsMinus_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiHFHadronsMinus_BXm1Empty"];
3033  meMETPhiHFHadronsMinus_BXm1Empty->Fill(atan2(py_HFHadronsMinus, px_HFHadronsMinus));
3034  }
3035  if (pt_sum_HFE_plus) {
3036  meMETPhiHFEGammasPlus_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiHFEGammasPlus_BXm1Empty"];
3038  meMETPhiHFEGammasPlus_BXm1Empty->Fill(atan2(py_HFEGammasPlus, px_HFEGammasPlus));
3039  }
3040  if (pt_sum_HFE_minus) {
3041  meMETPhiHFEGammasMinus_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiHFEGammasMinus_BXm1Empty"];
3043  meMETPhiHFEGammasMinus_BXm1Empty->Fill(atan2(py_HFEGammasMinus, px_HFEGammasMinus));
3044  }
3045  }
3046 
3047  } //fill candidate plots only then
3048 
3049  // PFMET getters
3050  //----------------------------------------------------------------------------
3051  double pfPhotonEtFraction = pfmet->photonEtFraction();
3052  double pfPhotonEt = pfmet->photonEt();
3053  double pfNeutralHadronEtFraction = pfmet->neutralHadronEtFraction();
3054  double pfNeutralHadronEt = pfmet->neutralHadronEt();
3055  double pfElectronEt = pfmet->electronEt();
3056  double pfChargedHadronEtFraction = pfmet->chargedHadronEtFraction();
3057  double pfChargedHadronEt = pfmet->chargedHadronEt();
3058  double pfMuonEt = pfmet->muonEt();
3059  double pfHFHadronEtFraction = pfmet->HFHadronEtFraction();
3060  double pfHFHadronEt = pfmet->HFHadronEt();
3061  double pfHFEMEtFraction = pfmet->HFEMEtFraction();
3062  double pfHFEMEt = pfmet->HFEMEt();
3063  mePhotonEtFraction = map_of_MEs[DirName + "/PfPhotonEtFraction"];
3064  mePhotonEt = map_of_MEs[DirName + "/PfPhotonEt"];
3065  meNeutralHadronEtFraction = map_of_MEs[DirName + "/PfNeutralHadronEtFraction"];
3066  meNeutralHadronEt = map_of_MEs[DirName + "/PfNeutralHadronEt"];
3067  meElectronEt = map_of_MEs[DirName + "/PfElectronEt"];
3068  meChargedHadronEtFraction = map_of_MEs[DirName + "/PfChargedHadronEtFraction"];
3069  meChargedHadronEt = map_of_MEs[DirName + "/PfChargedHadronEt"];
3070  meMuonEt = map_of_MEs[DirName + "/PfMuonEt"];
3071  meHFHadronEtFraction = map_of_MEs[DirName + "/PfHFHadronEtFraction"];
3072  meHFHadronEt = map_of_MEs[DirName + "/PfHFHadronEt"];
3073  meHFEMEtFraction = map_of_MEs[DirName + "/PfHFEMEtFraction"];
3074  meHFEMEt = map_of_MEs[DirName + "/PfHFEMEt"];
3075 
3077  mePhotonEtFraction->Fill(pfPhotonEtFraction);
3079  mePhotonEt->Fill(pfPhotonEt);
3081  meNeutralHadronEtFraction->Fill(pfNeutralHadronEtFraction);
3083  meNeutralHadronEt->Fill(pfNeutralHadronEt);
3085  meElectronEt->Fill(pfElectronEt);
3087  meChargedHadronEtFraction->Fill(pfChargedHadronEtFraction);
3089  meChargedHadronEt->Fill(pfChargedHadronEt);
3090  if (meMuonEt && meMuonEt->getRootObject())
3091  meMuonEt->Fill(pfMuonEt);
3093  meHFHadronEtFraction->Fill(pfHFHadronEtFraction);
3095  meHFHadronEt->Fill(pfHFHadronEt);
3097  meHFEMEtFraction->Fill(pfHFEMEtFraction);
3098  if (meHFEMEt && meHFEMEt->getRootObject())
3099  meHFEMEt->Fill(pfHFEMEt);
3100 
3101  //NPV profiles
3102 
3103  mePhotonEtFraction_profile = map_of_MEs[DirName + "/PfPhotonEtFraction_profile"];
3104  mePhotonEt_profile = map_of_MEs[DirName + "/PfPhotonEt_profile"];
3105  meNeutralHadronEtFraction_profile = map_of_MEs[DirName + "/PfNeutralHadronEtFraction_profile"];
3106  meNeutralHadronEt_profile = map_of_MEs[DirName + "/PfNeutralHadronEt_profile"];
3107  meChargedHadronEtFraction_profile = map_of_MEs[DirName + "/PfChargedHadronEtFraction_profile"];
3108  meChargedHadronEt_profile = map_of_MEs[DirName + "/PfChargedHadronEt_profile"];
3109  meHFHadronEtFraction_profile = map_of_MEs[DirName + "/PfHFHadronEtFraction_profile"];
3110  meHFHadronEt_profile = map_of_MEs[DirName + "/PfHFHadronEt_profile"];
3111  meHFEMEtFraction_profile = map_of_MEs[DirName + "/PfHFEMEtFraction_profile"];
3112  meHFEMEt_profile = map_of_MEs[DirName + "/PfHFEMEt_profile"];
3113 
3115  mePhotonEtFraction_profile->Fill(numPV_, pfPhotonEtFraction);
3117  mePhotonEt_profile->Fill(numPV_, pfPhotonEt);
3119  meNeutralHadronEtFraction_profile->Fill(numPV_, pfNeutralHadronEtFraction);
3121  meNeutralHadronEt_profile->Fill(numPV_, pfNeutralHadronEt);
3123  meChargedHadronEtFraction_profile->Fill(numPV_, pfChargedHadronEtFraction);
3125  meChargedHadronEt_profile->Fill(numPV_, pfChargedHadronEt);
3127  meHFHadronEtFraction_profile->Fill(numPV_, pfHFHadronEtFraction);
3129  meHFHadronEt_profile->Fill(numPV_, pfHFHadronEt);
3131  meHFEMEtFraction_profile->Fill(numPV_, pfHFEMEtFraction);
3133  meHFEMEt_profile->Fill(numPV_, pfHFEMEt);
3134  }
3135 
3136  if (isMiniAODMet_) {
3137  mePhotonEtFraction = map_of_MEs[DirName + "/PfPhotonEtFraction"];
3138  meNeutralHadronEtFraction = map_of_MEs[DirName + "/PfNeutralHadronEtFraction"];
3139  meChargedHadronEtFraction = map_of_MEs[DirName + "/PfChargedHadronEtFraction"];
3140  meHFHadronEtFraction = map_of_MEs[DirName + "/PfHFHadronEtFraction"];
3141  meHFEMEtFraction = map_of_MEs[DirName + "/PfHFEMEtFraction"];
3142 
3144  mePhotonEtFraction->Fill(patmet->NeutralEMFraction());
3146  meNeutralHadronEtFraction->Fill(patmet->NeutralHadEtFraction());
3148  meChargedHadronEtFraction->Fill(patmet->ChargedHadEtFraction());
3150  meHFHadronEtFraction->Fill(patmet->Type6EtFraction()); //HFHadrons
3152  meHFEMEtFraction->Fill(patmet->Type7EtFraction());
3153 
3154  //NPV profiles
3155  mePhotonEtFraction_profile = map_of_MEs[DirName + "/PfPhotonEtFraction_profile"];
3156  meNeutralHadronEtFraction_profile = map_of_MEs[DirName + "/PfNeutralHadronEtFraction_profile"];
3157  meChargedHadronEtFraction_profile = map_of_MEs[DirName + "/PfChargedHadronEtFraction_profile"];
3158  meHFHadronEtFraction_profile = map_of_MEs[DirName + "/PfHFHadronEtFraction_profile"];
3159  meHFEMEtFraction_profile = map_of_MEs[DirName + "/PfHFEMEtFraction_profile"];
3160 
3162  mePhotonEtFraction_profile->Fill(numPV_, patmet->NeutralEMFraction());
3164  meNeutralHadronEtFraction_profile->Fill(numPV_, patmet->NeutralHadEtFraction());
3166  meChargedHadronEtFraction_profile->Fill(numPV_, patmet->ChargedHadEtFraction());
3168  meHFHadronEtFraction_profile->Fill(numPV_, patmet->Type6EtFraction());
3170  meHFEMEtFraction_profile->Fill(numPV_, patmet->Type7EtFraction());
3171 
3172  mePhotonEt = map_of_MEs[DirName + "/PfPhotonEt"];
3173  meNeutralHadronEt = map_of_MEs[DirName + "/PfNeutralHadronEt"];
3174  meChargedHadronEt = map_of_MEs[DirName + "/PfChargedHadronEt"];
3175  meHFHadronEt = map_of_MEs[DirName + "/PfHFHadronEt"];
3176  meHFEMEt = map_of_MEs[DirName + "/PfHFEMEt"];
3177  meMuonEt = map_of_MEs[DirName + "/PfMuonEt"];
3178  meElectronEt = map_of_MEs[DirName + "/PfElectronEt"];
3179 
3181  mePhotonEt->Fill(patmet->NeutralEMFraction() * patmet->sumEt());
3183  meNeutralHadronEt->Fill(patmet->NeutralHadEtFraction() * patmet->sumEt());
3185  meChargedHadronEt->Fill(patmet->ChargedHadEtFraction() * patmet->sumEt());
3187  meHFHadronEt->Fill(patmet->Type6EtFraction() * patmet->sumEt()); //HFHadrons
3188  if (meHFEMEt && meHFEMEt->getRootObject())
3189  meHFEMEt->Fill(patmet->Type7EtFraction() * patmet->sumEt());
3190  if (meMuonEt && meMuonEt->getRootObject())
3191  meMuonEt->Fill(patmet->MuonEtFraction() * patmet->sumEt());
3193  meElectronEt->Fill(patmet->ChargedEMEtFraction() * patmet->sumEt());
3194 
3195  //NPV profiles
3196  mePhotonEt_profile = map_of_MEs[DirName + "/PfPhotonEt_profile"];
3197  meNeutralHadronEt_profile = map_of_MEs[DirName + "/PfNeutralHadronEt_profile"];
3198  meChargedHadronEt_profile = map_of_MEs[DirName + "/PfChargedHadronEt_profile"];
3199  meHFHadronEt_profile = map_of_MEs[DirName + "/PfHFHadronEt_profile"];
3200  meHFEMEt_profile = map_of_MEs[DirName + "/PfHFEMEt_profile"];
3201 
3203  mePhotonEt_profile->Fill(numPV_, patmet->NeutralEMFraction() * patmet->sumEt());
3205  meNeutralHadronEt_profile->Fill(numPV_, patmet->NeutralHadEtFraction() * patmet->sumEt());
3207  meChargedHadronEt_profile->Fill(numPV_, patmet->ChargedHadEtFraction() * patmet->sumEt());
3209  meHFHadronEt_profile->Fill(numPV_, patmet->Type6EtFraction() * patmet->sumEt());
3211  meHFEMEt_profile->Fill(numPV_, patmet->Type7EtFraction() * patmet->sumEt());
3212  }
3213 
3214  if (isCaloMet_) {
3215  //if (bLumiSecPlot){//get from config level
3217  hMExLS = map_of_MEs[DirName + "/" + "MExLS"];
3218  if (hMExLS && hMExLS->getRootObject())
3219  hMExLS->Fill(MEx, myLuminosityBlock);
3220  hMEyLS = map_of_MEs[DirName + "/" + "MEyLS"];
3221  if (hMEyLS && hMEyLS->getRootObject())
3222  hMEyLS->Fill(MEy, myLuminosityBlock);
3223  }
3224  }
3225  } //check if we only wanna do Z plots
3226 }
MonitorElement * meCHF_EndcapMinus_BXm1Filled
Definition: METAnalyzer.h:458
MonitorElement * meMETPhiNeutralHadronsEndcapMinus_BXm1Empty
Definition: METAnalyzer.h:409
MonitorElement * hMExLS
Definition: METAnalyzer.h:325
MonitorElement * meMETPhiNeutralHadronsEndcapMinus
Definition: METAnalyzer.h:544
MonitorElement * mePhF_EndcapMinus_BXm1Empty
Definition: METAnalyzer.h:484
MonitorElement * hSumET
Definition: METAnalyzer.h:323
MonitorElement * meMETPhiChargedHadronsEndcapPlus_BXm1Filled
Definition: METAnalyzer.h:426
MonitorElement * meNeutralHadronEtFraction
Definition: METAnalyzer.h:365
MonitorElement * meMETPhiHFHadronsPlus_BXm1Filled
Definition: METAnalyzer.h:434
MonitorElement * meNeutralHadronEtFraction_profile
Definition: METAnalyzer.h:565
MonitorElement * mePhF_EndcapMinus_BXm1Filled
Definition: METAnalyzer.h:490
MonitorElement * meMETPhiChargedHadronsEndcapPlus
Definition: METAnalyzer.h:540
MonitorElement * meHFHadF_Plus_BXm1Filled
Definition: METAnalyzer.h:501
MonitorElement * meNHF_EndcapPlus_BXm1Empty
Definition: METAnalyzer.h:467
MonitorElement * hMEy
Definition: METAnalyzer.h:307
MonitorElement * meMETPhiHFEGammasPlus
Definition: METAnalyzer.h:550
MonitorElement * hCaloMETPhi020
Definition: METAnalyzer.h:332
MonitorElement * mePhotonEt
Definition: METAnalyzer.h:364
MonitorElement * meChargedHadronEtFraction_profile
Definition: METAnalyzer.h:567
MonitorElement * meMETPhiPhotonsEndcapPlus_BXm1Empty
Definition: METAnalyzer.h:411
std::vector< int > typePFCand_
Definition: METAnalyzer.h:537
MonitorElement * meZJets_u_perp_ZPt_150_290
Definition: METAnalyzer.h:589
MonitorElement * meMETPhiHFHadronsMinus_BXm1Empty
Definition: METAnalyzer.h:414
MonitorElement * meMET_BXm1Filled
Definition: METAnalyzer.h:422
MonitorElement * meZJets_u_perp_ZPt_75_150
Definition: METAnalyzer.h:588
MonitorElement * hCaloHadEtInHF
Definition: METAnalyzer.h:343
std::vector< double > MExPFCand_
Definition: METAnalyzer.h:536
MonitorElement * meHFHadF_Minus_BXm1Empty
Definition: METAnalyzer.h:498
MonitorElement * meZJets_u_perp_ZPt_0_15
Definition: METAnalyzer.h:584
bool isCaloMet_
Definition: METAnalyzer.h:594
MonitorElement * meSumET_BXm1Empty
Definition: METAnalyzer.h:402
MonitorElement * meZJets_u_par_ZPt_15_30
Definition: METAnalyzer.h:576
MonitorElement * meChargedHadronEtFraction_BXm1Empty
Definition: METAnalyzer.h:400
MonitorElement * hMEx
Definition: METAnalyzer.h:306
std::vector< std::string > profilePFCand_y_name_
Definition: METAnalyzer.h:535
std::vector< MonitorElement * > profilePFCand_y_
Definition: METAnalyzer.h:534
MonitorElement * meZJets_u_par
Definition: METAnalyzer.h:574
MonitorElement * hCaloHadEtInHE
Definition: METAnalyzer.h:342
MonitorElement * hMET_eeBadScFilter
Definition: METAnalyzer.h:315
MonitorElement * meMETPhiPhotonsEndcapPlus
Definition: METAnalyzer.h:546
MonitorElement * meZJets_u_par_ZPt_75_150
Definition: METAnalyzer.h:579
MonitorElement * meNeutralHadronEtFraction_BXm1Empty
Definition: METAnalyzer.h:399
MonitorElement * meMETPhiChargedHadronsBarrel_BXm1Empty
Definition: METAnalyzer.h:404
bool fillCandidateMap_histos
Definition: METAnalyzer.h:599
MonitorElement * meHFEMF_Minus_BXm1Empty
Definition: METAnalyzer.h:509
std::vector< double > etaMaxPFCand_
Definition: METAnalyzer.h:536
MonitorElement * meZJets_u_perp_ZPt_30_55
Definition: METAnalyzer.h:586
MonitorElement * hCaloEtFractionHadronic
Definition: METAnalyzer.h:333
MonitorElement * hMEyLS
Definition: METAnalyzer.h:326
MonitorElement * meHFHadF_Minus
Definition: METAnalyzer.h:496
MonitorElement * meMETPhiHFEGammasPlus_BXm1Filled
Definition: METAnalyzer.h:436
MonitorElement * mePhotonEtFraction_BXm1Empty
Definition: METAnalyzer.h:398
MonitorElement * meHFHadronEtFraction
Definition: METAnalyzer.h:371
MonitorElement * meMET_BXm1Empty
Definition: METAnalyzer.h:401
MonitorElement * meCHF_EndcapMinus_BXm1Empty
Definition: METAnalyzer.h:452
MonitorElement * meNHF_EndcapPlus
Definition: METAnalyzer.h:464
MonitorElement * meMETPhiPhotonsEndcapMinus_BXm1Empty
Definition: METAnalyzer.h:412
MonitorElement * hMET_logx
Definition: METAnalyzer.h:328
MonitorElement * hCaloEmEtInHF
Definition: METAnalyzer.h:344
MonitorElement * meHFEMEtFraction_profile
Definition: METAnalyzer.h:571
MonitorElement * mePhF_EndcapPlus
Definition: METAnalyzer.h:480
MonitorElement * hCaloHadEtInHO
Definition: METAnalyzer.h:341
MonitorElement * meHFEMF_Plus_BXm1Filled
Definition: METAnalyzer.h:512
MonitorElement * meChargedHadronEtFraction
Definition: METAnalyzer.h:368
MonitorElement * meMETPhiPhotonsBarrel_BXm1Empty
Definition: METAnalyzer.h:410
MonitorElement * mePhF_Barrel_BXm1Empty
Definition: METAnalyzer.h:482
MonitorElement * meMEx_profile
Definition: METAnalyzer.h:558
MonitorElement * meNHF_Barrel
Definition: METAnalyzer.h:463
MonitorElement * hMET
Definition: METAnalyzer.h:310
MonitorElement * meZJets_u_par_ZPt_290
Definition: METAnalyzer.h:581
MonitorElement * hMET_2
Definition: METAnalyzer.h:311
MonitorElement * hMET_HcalStripHaloFilter
Definition: METAnalyzer.h:320
MonitorElement * meCHF_EndcapMinus
Definition: METAnalyzer.h:449
MonitorElement * meMETPhiHFHadronsPlus_BXm1Empty
Definition: METAnalyzer.h:413
MonitorElement * mePhF_Barrel_BXm1Filled
Definition: METAnalyzer.h:488
MonitorElement * meCHF_EndcapPlus_BXm1Filled
Definition: METAnalyzer.h:457
void Fill(long long x)
MonitorElement * meZJets_u_par_ZPt_55_75
Definition: METAnalyzer.h:578
MonitorElement * meMETPhiNeutralHadronsEndcapMinus_BXm1Filled
Definition: METAnalyzer.h:430
MonitorElement * mePhF_EndcapPlus_BXm1Filled
Definition: METAnalyzer.h:489
MonitorElement * meZJets_u_perp
Definition: METAnalyzer.h:583
MonitorElement * meZJets_u_par_ZPt_0_15
Definition: METAnalyzer.h:575
MonitorElement * meMETPhiNeutralHadronsBarrel_BXm1Empty
Definition: METAnalyzer.h:407
int iEvent
Definition: GenABIO.cc:224
MonitorElement * meNeutralHadronEtFraction_BXm1Filled
Definition: METAnalyzer.h:420
MonitorElement * meNHF_Barrel_BXm1Filled
Definition: METAnalyzer.h:472
MonitorElement * meMETPhiNeutralHadronsEndcapPlus_BXm1Empty
Definition: METAnalyzer.h:408
bool fill_met_high_level_histo
Definition: METAnalyzer.h:598
MonitorElement * hMETPhi
Definition: METAnalyzer.h:322
MonitorElement * hCaloEmEtInEE
Definition: METAnalyzer.h:345
MonitorElement * hMET_HBHEIsoNoiseFilter
Definition: METAnalyzer.h:318
MonitorElement * mePhF_EndcapMinus
Definition: METAnalyzer.h:481
MonitorElement * meZJets_u_perp_ZPt_55_75
Definition: METAnalyzer.h:587
MonitorElement * meMETPhiHFEGammasMinus
Definition: METAnalyzer.h:551
MonitorElement * meMuonEt
Definition: METAnalyzer.h:370
MonitorElement * meHFEMEt_profile
Definition: METAnalyzer.h:572
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
Definition: MET.h:41
MonitorElement * mePhotonEtFraction_BXm1Filled
Definition: METAnalyzer.h:419
MonitorElement * hSumET_logx
Definition: METAnalyzer.h:329
T sqrt(T t)
Definition: SSEVec.h:19
MonitorElement * meNHF_EndcapPlus_BXm1Filled
Definition: METAnalyzer.h:473
MonitorElement * hMET_HBHENoiseFilter
Definition: METAnalyzer.h:313
MonitorElement * meMETPhiPhotonsEndcapMinus_BXm1Filled
Definition: METAnalyzer.h:433
MonitorElement * meZJets_u_par_ZPt_150_290
Definition: METAnalyzer.h:580
MonitorElement * meCHF_Barrel_BXm1Filled
Definition: METAnalyzer.h:456
MonitorElement * meMETPhiHFHadronsMinus_BXm1Filled
Definition: METAnalyzer.h:435
MonitorElement * meZJets_u_perp_ZPt_290
Definition: METAnalyzer.h:590
MonitorElement * meHFEMF_Minus
Definition: METAnalyzer.h:507
MonitorElement * hCaloEmEtFraction
Definition: METAnalyzer.h:334
MonitorElement * meMETPhiChargedHadronsBarrel
Definition: METAnalyzer.h:539
MonitorElement * meNHF_Barrel_BXm1Empty
Definition: METAnalyzer.h:466
MonitorElement * meChargedHadronEt
Definition: METAnalyzer.h:369
MonitorElement * meMETPhiChargedHadronsEndcapMinus_BXm1Filled
Definition: METAnalyzer.h:427
MonitorElement * hMETSig
Definition: METAnalyzer.h:309
MonitorElement * meChargedHadronEt_profile
Definition: METAnalyzer.h:568
MonitorElement * meCHF_Barrel_BXm1Empty
Definition: METAnalyzer.h:450
MonitorElement * meMETPhiNeutralHadronsEndcapPlus_BXm1Filled
Definition: METAnalyzer.h:429
std::vector< double > MEyPFCand_
Definition: METAnalyzer.h:536
MonitorElement * mePhotonEtFraction
Definition: METAnalyzer.h:363
MonitorElement * hMET_EcalDeadCellBoundaryFilter
Definition: METAnalyzer.h:317
MonitorElement * mePhotonEt_profile
Definition: METAnalyzer.h:564
MonitorElement * meCHF_EndcapPlus
Definition: METAnalyzer.h:448
MonitorElement * meZJets_u_perp_ZPt_15_30
Definition: METAnalyzer.h:585
virtual TObject const * getRootObject() const
MonitorElement * meZJets_u_par_ZPt_30_55
Definition: METAnalyzer.h:577
MonitorElement * meMETPhiHFEGammasMinus_BXm1Empty
Definition: METAnalyzer.h:416
MonitorElement * meElectronEt
Definition: METAnalyzer.h:367
MonitorElement * meMET_profile
Definition: METAnalyzer.h:560
MonitorElement * meMETPhiChargedHadronsEndcapMinus
Definition: METAnalyzer.h:541
MonitorElement * meHFHadronEt
Definition: METAnalyzer.h:372
MonitorElement * hCaloEmEtInEB
Definition: METAnalyzer.h:346
MonitorElement * meMETPhiPhotonsBarrel
Definition: METAnalyzer.h:545
MonitorElement * hCaloHadEtInHB
Definition: METAnalyzer.h:340
MonitorElement * meHFHadF_Plus_BXm1Empty
Definition: METAnalyzer.h:497
MonitorElement * meMETPhiPhotonsBarrel_BXm1Filled
Definition: METAnalyzer.h:431
edm::EDGetTokenT< std::vector< reco::PFCandidate > > pflowToken_
Definition: METAnalyzer.h:553
MonitorElement * meHFHadF_Minus_BXm1Filled
Definition: METAnalyzer.h:502
MonitorElement * meHFHadronEtFraction_profile
Definition: METAnalyzer.h:569
MonitorElement * meNHF_EndcapMinus_BXm1Empty
Definition: METAnalyzer.h:468
MonitorElement * hMET_CSCTightHalo2015Filter
Definition: METAnalyzer.h:319
MonitorElement * meHFEMEtFraction
Definition: METAnalyzer.h:373
MonitorElement * hMET_CSCTightHaloFilter
Definition: METAnalyzer.h:314
MonitorElement * meHFEMF_Minus_BXm1Filled
Definition: METAnalyzer.h:513
MonitorElement * meMETPhiChargedHadronsEndcapMinus_BXm1Empty
Definition: METAnalyzer.h:406
MonitorElement * hCaloEmEtFraction020
Definition: METAnalyzer.h:338
MonitorElement * meHFEMF_Plus_BXm1Empty
Definition: METAnalyzer.h:508
Particle reconstructed by the particle flow algorithm.
Definition: PFCandidate.h:41
MonitorElement * mePhF_EndcapPlus_BXm1Empty
Definition: METAnalyzer.h:483
std::vector< int > countsPFCand_
Definition: METAnalyzer.h:537
MonitorElement * meMETPhiHFHadronsPlus
Definition: METAnalyzer.h:548
MonitorElement * hMET_EcalDeadCellTriggerFilter
Definition: METAnalyzer.h:316
MonitorElement * meHFEMEt
Definition: METAnalyzer.h:374
std::vector< double > etaMinPFCand_
Definition: METAnalyzer.h:536
MonitorElement * meChargedHadronEtFraction_BXm1Filled
Definition: METAnalyzer.h:421
MonitorElement * meMETPhiHFEGammasMinus_BXm1Filled
Definition: METAnalyzer.h:437
MonitorElement * meMEy_profile
Definition: METAnalyzer.h:559
MonitorElement * meMETPhiPhotonsEndcapPlus_BXm1Filled
Definition: METAnalyzer.h:432
MonitorElement * meHFEMF_Plus
Definition: METAnalyzer.h:506
std::vector< std::string > profilePFCand_x_name_
Definition: METAnalyzer.h:535
MonitorElement * meSumET_profile
Definition: METAnalyzer.h:561
MonitorElement * meMETPhiHFEGammasPlus_BXm1Empty
Definition: METAnalyzer.h:415
MonitorElement * meMETPhiNeutralHadronsBarrel
Definition: METAnalyzer.h:542
MonitorElement * meCHF_Barrel
Definition: METAnalyzer.h:447
bool isMiniAODMet_
Definition: METAnalyzer.h:596
MonitorElement * meHFHadronEt_profile
Definition: METAnalyzer.h:570
MonitorElement * meMETPhiPhotonsEndcapMinus
Definition: METAnalyzer.h:547
std::vector< MonitorElement * > profilePFCand_x_
Definition: METAnalyzer.h:534
MonitorElement * meNeutralHadronEt_profile
Definition: METAnalyzer.h:566
MonitorElement * meHFHadF_Plus
Definition: METAnalyzer.h:495
MonitorElement * meCHF_EndcapPlus_BXm1Empty
Definition: METAnalyzer.h:451
MonitorElement * mePhF_Barrel
Definition: METAnalyzer.h:479
MonitorElement * mePhotonEtFraction_profile
Definition: METAnalyzer.h:563
MonitorElement * meMETPhiChargedHadronsEndcapPlus_BXm1Empty
Definition: METAnalyzer.h:405
MonitorElement * meMETPhiNeutralHadronsBarrel_BXm1Filled
Definition: METAnalyzer.h:428
MonitorElement * meMETPhiHFHadronsMinus
Definition: METAnalyzer.h:549
MonitorElement * meMETPhiChargedHadronsBarrel_BXm1Filled
Definition: METAnalyzer.h:425
MonitorElement * meNHF_EndcapMinus
Definition: METAnalyzer.h:465
MonitorElement * meSumET_BXm1Filled
Definition: METAnalyzer.h:423
MonitorElement * meNHF_EndcapMinus_BXm1Filled
Definition: METAnalyzer.h:474
MonitorElement * meMETPhiNeutralHadronsEndcapPlus
Definition: METAnalyzer.h:543
MonitorElement * meNeutralHadronEt
Definition: METAnalyzer.h:366

◆ makeRatePlot()

void METAnalyzer::makeRatePlot ( std::string  DirName,
double  totltime 
)

Definition at line 1371 of file METAnalyzer.cc.

References fed_dqm_sourceclient-live_cfg::DirName, dqm::legacy::MonitorElement::getRootObject(), dqm::legacy::MonitorElement::getTH1F(), mps_fire::i, and dqm::impl::MonitorElement::setBinContent().

1371  {
1372  //dbe_->setCurrentFolder(DirName);
1373  MonitorElement* meMET = map_dijet_MEs[DirName + "/" + "MET"];
1374  MonitorElement* mMETRate = map_dijet_MEs[DirName + "/" + "METRate"];
1375 
1376  TH1F* tMET;
1377  TH1F* tMETRate;
1378 
1379  if (meMET && mMETRate) {
1380  if (meMET->getRootObject() && mMETRate->getRootObject()) {
1381  tMET = meMET->getTH1F();
1382 
1383  // Integral plot & convert number of events to rate (hz)
1384  tMETRate = (TH1F*)tMET->Clone("METRateHist");
1385  for (int i = tMETRate->GetNbinsX() - 1; i >= 0; i--) {
1386  tMETRate->SetBinContent(i + 1, tMETRate->GetBinContent(i + 2) + tMET->GetBinContent(i + 1));
1387  }
1388  for (int i = 0; i < tMETRate->GetNbinsX(); i++) {
1389  tMETRate->SetBinContent(i + 1, tMETRate->GetBinContent(i + 1) / double(totltime));
1390  mMETRate->setBinContent(i + 1, tMETRate->GetBinContent(i + 1));
1391  }
1392  }
1393  }
1394 }
std::map< std::string, MonitorElement * > map_dijet_MEs
Definition: METAnalyzer.h:592
virtual void setBinContent(int binx, double content)
set content of bin (1-D)
virtual TH1F * getTH1F() const
TObject * getRootObject() const override

Member Data Documentation

◆ beamSpot_

math::XYZPoint METAnalyzer::beamSpot_
private

Definition at line 297 of file METAnalyzer.h.

◆ bypassAllDCSChecks_

bool METAnalyzer::bypassAllDCSChecks_
private

Definition at line 266 of file METAnalyzer.h.

◆ bypassAllPVChecks_

bool METAnalyzer::bypassAllPVChecks_
private

Definition at line 265 of file METAnalyzer.h.

◆ caloJetsToken_

edm::EDGetTokenT<reco::CaloJetCollection> METAnalyzer::caloJetsToken_
private

Definition at line 165 of file METAnalyzer.h.

◆ caloMetToken_

edm::EDGetTokenT<reco::CaloMETCollection> METAnalyzer::caloMetToken_
private

Definition at line 197 of file METAnalyzer.h.

◆ cleaningParameters_

edm::ParameterSet METAnalyzer::cleaningParameters_
private

Definition at line 253 of file METAnalyzer.h.

◆ countsPFCand_

std::vector<int> METAnalyzer::countsPFCand_
private

Definition at line 537 of file METAnalyzer.h.

◆ CSCHalo2015ResultTag_

edm::InputTag METAnalyzer::CSCHalo2015ResultTag_
private

Definition at line 184 of file METAnalyzer.h.

◆ CSCHalo2015ResultToken_

edm::EDGetTokenT<bool> METAnalyzer::CSCHalo2015ResultToken_
private

Definition at line 185 of file METAnalyzer.h.

◆ CSCHaloResultTag_

edm::InputTag METAnalyzer::CSCHaloResultTag_
private

Definition at line 182 of file METAnalyzer.h.

◆ CSCHaloResultToken_

edm::EDGetTokenT<bool> METAnalyzer::CSCHaloResultToken_
private

Definition at line 183 of file METAnalyzer.h.

◆ DCSFilter_

JetMETDQMDCSFilter* METAnalyzer::DCSFilter_
private

Definition at line 293 of file METAnalyzer.h.

◆ diagnosticsParameters_

std::vector<edm::ParameterSet> METAnalyzer::diagnosticsParameters_
private

Definition at line 254 of file METAnalyzer.h.

◆ EcalDeadCellBoundaryTag_

edm::InputTag METAnalyzer::EcalDeadCellBoundaryTag_
private

Definition at line 190 of file METAnalyzer.h.

◆ EcalDeadCellBoundaryToken_

edm::EDGetTokenT<bool> METAnalyzer::EcalDeadCellBoundaryToken_
private

Definition at line 191 of file METAnalyzer.h.

◆ EcalDeadCellTriggerTag_

edm::InputTag METAnalyzer::EcalDeadCellTriggerTag_
private

Definition at line 186 of file METAnalyzer.h.

◆ EcalDeadCellTriggerToken_

edm::EDGetTokenT<bool> METAnalyzer::EcalDeadCellTriggerToken_
private

Definition at line 187 of file METAnalyzer.h.

◆ eeBadScFilterTag_

edm::InputTag METAnalyzer::eeBadScFilterTag_
private

Definition at line 188 of file METAnalyzer.h.

◆ eeBadScFilterToken_

edm::EDGetTokenT<bool> METAnalyzer::eeBadScFilterToken_
private

Definition at line 189 of file METAnalyzer.h.

◆ etaMaxPFCand_

std::vector<double> METAnalyzer::etaMaxPFCand_
private

Definition at line 536 of file METAnalyzer.h.

◆ etaMinPFCand_

std::vector<double> METAnalyzer::etaMinPFCand_
private

Definition at line 536 of file METAnalyzer.h.

◆ etaNBinsPFCand_

std::vector<int> METAnalyzer::etaNBinsPFCand_
private

Definition at line 537 of file METAnalyzer.h.

◆ fill_met_high_level_histo

bool METAnalyzer::fill_met_high_level_histo
private

Definition at line 598 of file METAnalyzer.h.

◆ fillCandidateMap_histos

bool METAnalyzer::fillCandidateMap_histos
private

Definition at line 599 of file METAnalyzer.h.

◆ FilterhltConfig_

HLTConfigProvider METAnalyzer::FilterhltConfig_
private

Definition at line 213 of file METAnalyzer.h.

◆ FolderName_

std::string METAnalyzer::FolderName_
private

Definition at line 155 of file METAnalyzer.h.

◆ folderNames_

std::vector<std::string> METAnalyzer::folderNames_
private

Definition at line 295 of file METAnalyzer.h.

◆ gtTag_

edm::InputTag METAnalyzer::gtTag_
private

Definition at line 161 of file METAnalyzer.h.

◆ gtToken_

edm::EDGetTokenT<L1GlobalTriggerReadoutRecord> METAnalyzer::gtToken_
private

Definition at line 164 of file METAnalyzer.h.

◆ hbheIsoNoiseFilterResultToken_

edm::EDGetTokenT<bool> METAnalyzer::hbheIsoNoiseFilterResultToken_
private

Definition at line 181 of file METAnalyzer.h.

◆ HBHEIsoNoiseStringMiniAOD

std::string METAnalyzer::HBHEIsoNoiseStringMiniAOD
private

Definition at line 218 of file METAnalyzer.h.

◆ hbheNoiseFilterResultTag_

edm::InputTag METAnalyzer::hbheNoiseFilterResultTag_
private

Definition at line 178 of file METAnalyzer.h.

◆ hbheNoiseFilterResultToken_

edm::EDGetTokenT<bool> METAnalyzer::hbheNoiseFilterResultToken_
private

Definition at line 179 of file METAnalyzer.h.

◆ hbheNoiseIsoFilterResultTag_

edm::InputTag METAnalyzer::hbheNoiseIsoFilterResultTag_
private

Definition at line 180 of file METAnalyzer.h.

◆ HBHENoiseStringMiniAOD

std::string METAnalyzer::HBHENoiseStringMiniAOD
private

Definition at line 217 of file METAnalyzer.h.

◆ hcalNoiseRBXCollectionTag_

edm::InputTag METAnalyzer::hcalNoiseRBXCollectionTag_
private

Definition at line 158 of file METAnalyzer.h.

◆ hCaloEmEtFraction

MonitorElement* METAnalyzer::hCaloEmEtFraction
private

Definition at line 334 of file METAnalyzer.h.

◆ hCaloEmEtFraction020

MonitorElement* METAnalyzer::hCaloEmEtFraction020
private

Definition at line 338 of file METAnalyzer.h.

◆ hCaloEmEtInEB

MonitorElement* METAnalyzer::hCaloEmEtInEB
private

Definition at line 346 of file METAnalyzer.h.

◆ hCaloEmEtInEE

MonitorElement* METAnalyzer::hCaloEmEtInEE
private

Definition at line 345 of file METAnalyzer.h.

◆ hCaloEmEtInHF

MonitorElement* METAnalyzer::hCaloEmEtInHF
private

Definition at line 344 of file METAnalyzer.h.

◆ hCaloEmMET

MonitorElement* METAnalyzer::hCaloEmMET
private

Definition at line 351 of file METAnalyzer.h.

◆ hCaloEmMETPhi

MonitorElement* METAnalyzer::hCaloEmMETPhi
private

Definition at line 352 of file METAnalyzer.h.

◆ hCaloEmMEx

MonitorElement* METAnalyzer::hCaloEmMEx
private

Definition at line 348 of file METAnalyzer.h.

◆ hCaloEmMEy

MonitorElement* METAnalyzer::hCaloEmMEy
private

Definition at line 349 of file METAnalyzer.h.

◆ hCaloEtFractionHadronic

MonitorElement* METAnalyzer::hCaloEtFractionHadronic
private

Definition at line 333 of file METAnalyzer.h.

◆ hCaloHadEtInHB

MonitorElement* METAnalyzer::hCaloHadEtInHB
private

Definition at line 340 of file METAnalyzer.h.

◆ hCaloHadEtInHE

MonitorElement* METAnalyzer::hCaloHadEtInHE
private

Definition at line 342 of file METAnalyzer.h.

◆ hCaloHadEtInHF

MonitorElement* METAnalyzer::hCaloHadEtInHF
private

Definition at line 343 of file METAnalyzer.h.

◆ hCaloHadEtInHO

MonitorElement* METAnalyzer::hCaloHadEtInHO
private

Definition at line 341 of file METAnalyzer.h.

◆ hCaloHaMET

MonitorElement* METAnalyzer::hCaloHaMET
private

Definition at line 358 of file METAnalyzer.h.

◆ hCaloHaMETPhi

MonitorElement* METAnalyzer::hCaloHaMETPhi
private

Definition at line 359 of file METAnalyzer.h.

◆ hCaloHaMEx

MonitorElement* METAnalyzer::hCaloHaMEx
private

Definition at line 355 of file METAnalyzer.h.

◆ hCaloHaMEy

MonitorElement* METAnalyzer::hCaloHaMEy
private

Definition at line 356 of file METAnalyzer.h.

◆ hCaloMETPhi020

MonitorElement* METAnalyzer::hCaloMETPhi020
private

Definition at line 332 of file METAnalyzer.h.

◆ HcalStripHaloTag_

edm::InputTag METAnalyzer::HcalStripHaloTag_
private

Definition at line 192 of file METAnalyzer.h.

◆ HcalStripHaloToken_

edm::EDGetTokenT<bool> METAnalyzer::HcalStripHaloToken_
private

Definition at line 193 of file METAnalyzer.h.

◆ hfCalibFactor_

double METAnalyzer::hfCalibFactor_
private

Definition at line 290 of file METAnalyzer.h.

◆ hltConfig_

HLTConfigProvider METAnalyzer::hltConfig_
private

Definition at line 212 of file METAnalyzer.h.

◆ hltPhysDec_

std::string METAnalyzer::hltPhysDec_
private

Definition at line 256 of file METAnalyzer.h.

◆ hMET

MonitorElement* METAnalyzer::hMET
private

Definition at line 310 of file METAnalyzer.h.

◆ hMET_2

MonitorElement* METAnalyzer::hMET_2
private

Definition at line 311 of file METAnalyzer.h.

◆ hMET_CSCTightHalo2015Filter

MonitorElement* METAnalyzer::hMET_CSCTightHalo2015Filter
private

Definition at line 319 of file METAnalyzer.h.

◆ hMET_CSCTightHaloFilter

MonitorElement* METAnalyzer::hMET_CSCTightHaloFilter
private

Definition at line 314 of file METAnalyzer.h.

◆ hMET_EcalDeadCellBoundaryFilter

MonitorElement* METAnalyzer::hMET_EcalDeadCellBoundaryFilter
private

Definition at line 317 of file METAnalyzer.h.

◆ hMET_EcalDeadCellTriggerFilter

MonitorElement* METAnalyzer::hMET_EcalDeadCellTriggerFilter
private

Definition at line 316 of file METAnalyzer.h.

◆ hMET_eeBadScFilter

MonitorElement* METAnalyzer::hMET_eeBadScFilter
private

Definition at line 315 of file METAnalyzer.h.

◆ hMET_HBHEIsoNoiseFilter

MonitorElement* METAnalyzer::hMET_HBHEIsoNoiseFilter
private

Definition at line 318 of file METAnalyzer.h.

◆ hMET_HBHENoiseFilter

MonitorElement* METAnalyzer::hMET_HBHENoiseFilter
private

Definition at line 313 of file METAnalyzer.h.

◆ hMET_HcalStripHaloFilter

MonitorElement* METAnalyzer::hMET_HcalStripHaloFilter
private

Definition at line 320 of file METAnalyzer.h.

◆ hMET_logx

MonitorElement* METAnalyzer::hMET_logx
private

Definition at line 328 of file METAnalyzer.h.

◆ hMETPhi

MonitorElement* METAnalyzer::hMETPhi
private

Definition at line 322 of file METAnalyzer.h.

◆ hMETRate

MonitorElement* METAnalyzer::hMETRate
private

Definition at line 251 of file METAnalyzer.h.

◆ hMETSig

MonitorElement* METAnalyzer::hMETSig
private

Definition at line 309 of file METAnalyzer.h.

◆ hMEx

MonitorElement* METAnalyzer::hMEx
private

Definition at line 306 of file METAnalyzer.h.

◆ hMExLS

MonitorElement* METAnalyzer::hMExLS
private

Definition at line 325 of file METAnalyzer.h.

◆ hMEy

MonitorElement* METAnalyzer::hMEy
private

Definition at line 307 of file METAnalyzer.h.

◆ hMEyLS

MonitorElement* METAnalyzer::hMEyLS
private

Definition at line 326 of file METAnalyzer.h.

◆ hSumET

MonitorElement* METAnalyzer::hSumET
private

Definition at line 323 of file METAnalyzer.h.

◆ hSumET_logx

MonitorElement* METAnalyzer::hSumET_logx
private

Definition at line 329 of file METAnalyzer.h.

◆ inputJetIDValueMap

edm::InputTag METAnalyzer::inputJetIDValueMap
private

Definition at line 199 of file METAnalyzer.h.

◆ isCaloMet_

bool METAnalyzer::isCaloMet_
private

Definition at line 594 of file METAnalyzer.h.

◆ isMiniAODMet_

bool METAnalyzer::isMiniAODMet_
private

Definition at line 596 of file METAnalyzer.h.

◆ isPFMet_

bool METAnalyzer::isPFMet_
private

Definition at line 595 of file METAnalyzer.h.

◆ jetCollectionLabel_

edm::InputTag METAnalyzer::jetCollectionLabel_
private

Definition at line 159 of file METAnalyzer.h.

◆ jetCorrectorToken_

edm::EDGetTokenT<reco::JetCorrector> METAnalyzer::jetCorrectorToken_
private

Definition at line 220 of file METAnalyzer.h.

◆ jetID_ValueMapToken_

edm::EDGetTokenT<edm::ValueMap<reco::JetID> > METAnalyzer::jetID_ValueMapToken_
private

Definition at line 200 of file METAnalyzer.h.

◆ jetIDFunctorLoose

JetIDSelectionFunctor METAnalyzer::jetIDFunctorLoose
private

Definition at line 204 of file METAnalyzer.h.

◆ l1gtTrigMenuToken_

edm::ESGetToken<L1GtTriggerMenu, L1GtTriggerMenuRcd> METAnalyzer::l1gtTrigMenuToken_
private

Definition at line 202 of file METAnalyzer.h.

◆ LSBegin_

int METAnalyzer::LSBegin_
private

Definition at line 262 of file METAnalyzer.h.

◆ LSEnd_

int METAnalyzer::LSEnd_
private

Definition at line 263 of file METAnalyzer.h.

◆ lumisecME

MonitorElement* METAnalyzer::lumisecME
private

Definition at line 304 of file METAnalyzer.h.

◆ m_bitAlgTechTrig_

int METAnalyzer::m_bitAlgTechTrig_
private

Definition at line 208 of file METAnalyzer.h.

◆ m_l1algoname_

std::string METAnalyzer::m_l1algoname_
private

Definition at line 207 of file METAnalyzer.h.

◆ map_dijet_MEs

std::map<std::string, MonitorElement*> METAnalyzer::map_dijet_MEs
private

Definition at line 592 of file METAnalyzer.h.

◆ meChargedHadronEt

MonitorElement* METAnalyzer::meChargedHadronEt
private

Definition at line 369 of file METAnalyzer.h.

◆ meChargedHadronEt_profile

MonitorElement* METAnalyzer::meChargedHadronEt_profile
private

Definition at line 568 of file METAnalyzer.h.

◆ meChargedHadronEtFraction

MonitorElement* METAnalyzer::meChargedHadronEtFraction
private

Definition at line 368 of file METAnalyzer.h.

◆ meChargedHadronEtFraction_BXm1Empty

MonitorElement* METAnalyzer::meChargedHadronEtFraction_BXm1Empty
private

Definition at line 400 of file METAnalyzer.h.

◆ meChargedHadronEtFraction_BXm1Filled

MonitorElement* METAnalyzer::meChargedHadronEtFraction_BXm1Filled
private

Definition at line 421 of file METAnalyzer.h.

◆ meChargedHadronEtFraction_profile

MonitorElement* METAnalyzer::meChargedHadronEtFraction_profile
private

Definition at line 567 of file METAnalyzer.h.

◆ meCHF_Barrel

MonitorElement* METAnalyzer::meCHF_Barrel
private

Definition at line 447 of file METAnalyzer.h.

◆ meCHF_Barrel_BXm1Empty

MonitorElement* METAnalyzer::meCHF_Barrel_BXm1Empty
private

Definition at line 450 of file METAnalyzer.h.

◆ meCHF_Barrel_BXm1Filled

MonitorElement* METAnalyzer::meCHF_Barrel_BXm1Filled
private

Definition at line 456 of file METAnalyzer.h.

◆ meCHF_EndcapMinus

MonitorElement* METAnalyzer::meCHF_EndcapMinus
private

Definition at line 449 of file METAnalyzer.h.

◆ meCHF_EndcapMinus_BXm1Empty

MonitorElement* METAnalyzer::meCHF_EndcapMinus_BXm1Empty
private

Definition at line 452 of file METAnalyzer.h.

◆ meCHF_EndcapMinus_BXm1Filled

MonitorElement* METAnalyzer::meCHF_EndcapMinus_BXm1Filled
private

Definition at line 458 of file METAnalyzer.h.

◆ meCHF_EndcapPlus

MonitorElement* METAnalyzer::meCHF_EndcapPlus
private

Definition at line 448 of file METAnalyzer.h.

◆ meCHF_EndcapPlus_BXm1Empty

MonitorElement* METAnalyzer::meCHF_EndcapPlus_BXm1Empty
private

Definition at line 451 of file METAnalyzer.h.

◆ meCHF_EndcapPlus_BXm1Filled

MonitorElement* METAnalyzer::meCHF_EndcapPlus_BXm1Filled
private

Definition at line 457 of file METAnalyzer.h.

◆ meElectronEt

MonitorElement* METAnalyzer::meElectronEt
private

Definition at line 367 of file METAnalyzer.h.

◆ meHFEMEt

MonitorElement* METAnalyzer::meHFEMEt
private

Definition at line 374 of file METAnalyzer.h.

◆ meHFEMEt_profile

MonitorElement* METAnalyzer::meHFEMEt_profile
private

Definition at line 572 of file METAnalyzer.h.

◆ meHFEMEtFraction

MonitorElement* METAnalyzer::meHFEMEtFraction
private

Definition at line 373 of file METAnalyzer.h.

◆ meHFEMEtFraction_profile

MonitorElement* METAnalyzer::meHFEMEtFraction_profile
private

Definition at line 571 of file METAnalyzer.h.

◆ meHFEMF_Minus

MonitorElement* METAnalyzer::meHFEMF_Minus
private

Definition at line 507 of file METAnalyzer.h.

◆ meHFEMF_Minus_BXm1Empty

MonitorElement* METAnalyzer::meHFEMF_Minus_BXm1Empty
private

Definition at line 509 of file METAnalyzer.h.

◆ meHFEMF_Minus_BXm1Filled

MonitorElement* METAnalyzer::meHFEMF_Minus_BXm1Filled
private

Definition at line 513 of file METAnalyzer.h.

◆ meHFEMF_Plus

MonitorElement* METAnalyzer::meHFEMF_Plus
private

Definition at line 506 of file METAnalyzer.h.

◆ meHFEMF_Plus_BXm1Empty

MonitorElement* METAnalyzer::meHFEMF_Plus_BXm1Empty
private

Definition at line 508 of file METAnalyzer.h.

◆ meHFEMF_Plus_BXm1Filled

MonitorElement* METAnalyzer::meHFEMF_Plus_BXm1Filled
private

Definition at line 512 of file METAnalyzer.h.

◆ meHFHadF_Minus

MonitorElement* METAnalyzer::meHFHadF_Minus
private

Definition at line 496 of file METAnalyzer.h.

◆ meHFHadF_Minus_BXm1Empty

MonitorElement* METAnalyzer::meHFHadF_Minus_BXm1Empty
private

Definition at line 498 of file METAnalyzer.h.

◆ meHFHadF_Minus_BXm1Filled

MonitorElement* METAnalyzer::meHFHadF_Minus_BXm1Filled
private

Definition at line 502 of file METAnalyzer.h.

◆ meHFHadF_Plus

MonitorElement* METAnalyzer::meHFHadF_Plus
private

Definition at line 495 of file METAnalyzer.h.

◆ meHFHadF_Plus_BXm1Empty

MonitorElement* METAnalyzer::meHFHadF_Plus_BXm1Empty
private

Definition at line 497 of file METAnalyzer.h.

◆ meHFHadF_Plus_BXm1Filled

MonitorElement* METAnalyzer::meHFHadF_Plus_BXm1Filled
private

Definition at line 501 of file METAnalyzer.h.

◆ meHFHadronEt

MonitorElement* METAnalyzer::meHFHadronEt
private

Definition at line 372 of file METAnalyzer.h.

◆ meHFHadronEt_profile

MonitorElement* METAnalyzer::meHFHadronEt_profile
private

Definition at line 570 of file METAnalyzer.h.

◆ meHFHadronEtFraction

MonitorElement* METAnalyzer::meHFHadronEtFraction
private

Definition at line 371 of file METAnalyzer.h.

◆ meHFHadronEtFraction_profile

MonitorElement* METAnalyzer::meHFHadronEtFraction_profile
private

Definition at line 569 of file METAnalyzer.h.

◆ meMET_BXm1Empty

MonitorElement* METAnalyzer::meMET_BXm1Empty
private

Definition at line 401 of file METAnalyzer.h.

◆ meMET_BXm1Filled

MonitorElement* METAnalyzer::meMET_BXm1Filled
private

Definition at line 422 of file METAnalyzer.h.

◆ meMET_profile

MonitorElement* METAnalyzer::meMET_profile
private

Definition at line 560 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsBarrel

MonitorElement* METAnalyzer::meMETPhiChargedHadronsBarrel
private

Definition at line 539 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsBarrel_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiChargedHadronsBarrel_BXm1Empty
private

Definition at line 404 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsBarrel_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiChargedHadronsBarrel_BXm1Filled
private

Definition at line 425 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsEndcapMinus

MonitorElement* METAnalyzer::meMETPhiChargedHadronsEndcapMinus
private

Definition at line 541 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsEndcapMinus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiChargedHadronsEndcapMinus_BXm1Empty
private

Definition at line 406 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsEndcapMinus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiChargedHadronsEndcapMinus_BXm1Filled
private

Definition at line 427 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsEndcapPlus

MonitorElement* METAnalyzer::meMETPhiChargedHadronsEndcapPlus
private

Definition at line 540 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsEndcapPlus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiChargedHadronsEndcapPlus_BXm1Empty
private

Definition at line 405 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsEndcapPlus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiChargedHadronsEndcapPlus_BXm1Filled
private

Definition at line 426 of file METAnalyzer.h.

◆ meMETPhiHFEGammasMinus

MonitorElement* METAnalyzer::meMETPhiHFEGammasMinus
private

Definition at line 551 of file METAnalyzer.h.

◆ meMETPhiHFEGammasMinus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiHFEGammasMinus_BXm1Empty
private

Definition at line 416 of file METAnalyzer.h.

◆ meMETPhiHFEGammasMinus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiHFEGammasMinus_BXm1Filled
private

Definition at line 437 of file METAnalyzer.h.

◆ meMETPhiHFEGammasPlus

MonitorElement* METAnalyzer::meMETPhiHFEGammasPlus
private

Definition at line 550 of file METAnalyzer.h.

◆ meMETPhiHFEGammasPlus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiHFEGammasPlus_BXm1Empty
private

Definition at line 415 of file METAnalyzer.h.

◆ meMETPhiHFEGammasPlus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiHFEGammasPlus_BXm1Filled
private

Definition at line 436 of file METAnalyzer.h.

◆ meMETPhiHFHadronsMinus

MonitorElement* METAnalyzer::meMETPhiHFHadronsMinus
private

Definition at line 549 of file METAnalyzer.h.

◆ meMETPhiHFHadronsMinus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiHFHadronsMinus_BXm1Empty
private

Definition at line 414 of file METAnalyzer.h.

◆ meMETPhiHFHadronsMinus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiHFHadronsMinus_BXm1Filled
private

Definition at line 435 of file METAnalyzer.h.

◆ meMETPhiHFHadronsPlus

MonitorElement* METAnalyzer::meMETPhiHFHadronsPlus
private

Definition at line 548 of file METAnalyzer.h.

◆ meMETPhiHFHadronsPlus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiHFHadronsPlus_BXm1Empty
private

Definition at line 413 of file METAnalyzer.h.

◆ meMETPhiHFHadronsPlus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiHFHadronsPlus_BXm1Filled
private

Definition at line 434 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsBarrel

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsBarrel
private

Definition at line 542 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsBarrel_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsBarrel_BXm1Empty
private

Definition at line 407 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsBarrel_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsBarrel_BXm1Filled
private

Definition at line 428 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsEndcapMinus

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsEndcapMinus
private

Definition at line 544 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsEndcapMinus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsEndcapMinus_BXm1Empty
private

Definition at line 409 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsEndcapMinus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsEndcapMinus_BXm1Filled
private

Definition at line 430 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsEndcapPlus

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsEndcapPlus
private

Definition at line 543 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsEndcapPlus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsEndcapPlus_BXm1Empty
private

Definition at line 408 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsEndcapPlus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsEndcapPlus_BXm1Filled
private

Definition at line 429 of file METAnalyzer.h.

◆ meMETPhiPhotonsBarrel

MonitorElement* METAnalyzer::meMETPhiPhotonsBarrel
private

Definition at line 545 of file METAnalyzer.h.

◆ meMETPhiPhotonsBarrel_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiPhotonsBarrel_BXm1Empty
private

Definition at line 410 of file METAnalyzer.h.

◆ meMETPhiPhotonsBarrel_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiPhotonsBarrel_BXm1Filled
private

Definition at line 431 of file METAnalyzer.h.

◆ meMETPhiPhotonsEndcapMinus

MonitorElement* METAnalyzer::meMETPhiPhotonsEndcapMinus
private

Definition at line 547 of file METAnalyzer.h.

◆ meMETPhiPhotonsEndcapMinus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiPhotonsEndcapMinus_BXm1Empty
private

Definition at line 412 of file METAnalyzer.h.

◆ meMETPhiPhotonsEndcapMinus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiPhotonsEndcapMinus_BXm1Filled
private

Definition at line 433 of file METAnalyzer.h.

◆ meMETPhiPhotonsEndcapPlus

MonitorElement* METAnalyzer::meMETPhiPhotonsEndcapPlus
private

Definition at line 546 of file METAnalyzer.h.

◆ meMETPhiPhotonsEndcapPlus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiPhotonsEndcapPlus_BXm1Empty
private

Definition at line 411 of file METAnalyzer.h.

◆ meMETPhiPhotonsEndcapPlus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiPhotonsEndcapPlus_BXm1Filled
private

Definition at line 432 of file METAnalyzer.h.

◆ meMEx_profile

MonitorElement* METAnalyzer::meMEx_profile
private

Definition at line 558 of file METAnalyzer.h.

◆ meMEy_profile

MonitorElement* METAnalyzer::meMEy_profile
private

Definition at line 559 of file METAnalyzer.h.

◆ meMuonEt

MonitorElement* METAnalyzer::meMuonEt
private

Definition at line 370 of file METAnalyzer.h.

◆ meNeutralHadronEt

MonitorElement* METAnalyzer::meNeutralHadronEt
private

Definition at line 366 of file METAnalyzer.h.

◆ meNeutralHadronEt_profile

MonitorElement* METAnalyzer::meNeutralHadronEt_profile
private

Definition at line 566 of file METAnalyzer.h.

◆ meNeutralHadronEtFraction

MonitorElement* METAnalyzer::meNeutralHadronEtFraction
private

Definition at line 365 of file METAnalyzer.h.

◆ meNeutralHadronEtFraction_BXm1Empty

MonitorElement* METAnalyzer::meNeutralHadronEtFraction_BXm1Empty
private

Definition at line 399 of file METAnalyzer.h.

◆ meNeutralHadronEtFraction_BXm1Filled

MonitorElement* METAnalyzer::meNeutralHadronEtFraction_BXm1Filled
private

Definition at line 420 of file METAnalyzer.h.

◆ meNeutralHadronEtFraction_profile

MonitorElement* METAnalyzer::meNeutralHadronEtFraction_profile
private

Definition at line 565 of file METAnalyzer.h.

◆ meNHF_Barrel

MonitorElement* METAnalyzer::meNHF_Barrel
private

Definition at line 463 of file METAnalyzer.h.

◆ meNHF_Barrel_BXm1Empty

MonitorElement* METAnalyzer::meNHF_Barrel_BXm1Empty
private

Definition at line 466 of file METAnalyzer.h.

◆ meNHF_Barrel_BXm1Filled

MonitorElement* METAnalyzer::meNHF_Barrel_BXm1Filled
private

Definition at line 472 of file METAnalyzer.h.

◆ meNHF_EndcapMinus

MonitorElement* METAnalyzer::meNHF_EndcapMinus
private

Definition at line 465 of file METAnalyzer.h.

◆ meNHF_EndcapMinus_BXm1Empty

MonitorElement* METAnalyzer::meNHF_EndcapMinus_BXm1Empty
private

Definition at line 468 of file METAnalyzer.h.

◆ meNHF_EndcapMinus_BXm1Filled

MonitorElement* METAnalyzer::meNHF_EndcapMinus_BXm1Filled
private

Definition at line 474 of file METAnalyzer.h.

◆ meNHF_EndcapPlus

MonitorElement* METAnalyzer::meNHF_EndcapPlus
private

Definition at line 464 of file METAnalyzer.h.

◆ meNHF_EndcapPlus_BXm1Empty

MonitorElement* METAnalyzer::meNHF_EndcapPlus_BXm1Empty
private

Definition at line 467 of file METAnalyzer.h.

◆ meNHF_EndcapPlus_BXm1Filled

MonitorElement* METAnalyzer::meNHF_EndcapPlus_BXm1Filled
private

Definition at line 473 of file METAnalyzer.h.

◆ mePhF_Barrel

MonitorElement* METAnalyzer::mePhF_Barrel
private

Definition at line 479 of file METAnalyzer.h.

◆ mePhF_Barrel_BXm1Empty

MonitorElement* METAnalyzer::mePhF_Barrel_BXm1Empty
private

Definition at line 482 of file METAnalyzer.h.

◆ mePhF_Barrel_BXm1Filled

MonitorElement* METAnalyzer::mePhF_Barrel_BXm1Filled
private

Definition at line 488 of file METAnalyzer.h.

◆ mePhF_EndcapMinus

MonitorElement* METAnalyzer::mePhF_EndcapMinus
private

Definition at line 481 of file METAnalyzer.h.

◆ mePhF_EndcapMinus_BXm1Empty

MonitorElement* METAnalyzer::mePhF_EndcapMinus_BXm1Empty
private

Definition at line 484 of file METAnalyzer.h.

◆ mePhF_EndcapMinus_BXm1Filled

MonitorElement* METAnalyzer::mePhF_EndcapMinus_BXm1Filled
private

Definition at line 490 of file METAnalyzer.h.

◆ mePhF_EndcapPlus

MonitorElement* METAnalyzer::mePhF_EndcapPlus
private

Definition at line 480 of file METAnalyzer.h.

◆ mePhF_EndcapPlus_BXm1Empty

MonitorElement* METAnalyzer::mePhF_EndcapPlus_BXm1Empty
private

Definition at line 483 of file METAnalyzer.h.

◆ mePhF_EndcapPlus_BXm1Filled

MonitorElement* METAnalyzer::mePhF_EndcapPlus_BXm1Filled
private

Definition at line 489 of file METAnalyzer.h.

◆ mePhotonEt

MonitorElement* METAnalyzer::mePhotonEt
private

Definition at line 364 of file METAnalyzer.h.

◆ mePhotonEt_profile

MonitorElement* METAnalyzer::mePhotonEt_profile
private

Definition at line 564 of file METAnalyzer.h.

◆ mePhotonEtFraction

MonitorElement* METAnalyzer::mePhotonEtFraction
private

Definition at line 363 of file METAnalyzer.h.

◆ mePhotonEtFraction_BXm1Empty

MonitorElement* METAnalyzer::mePhotonEtFraction_BXm1Empty
private

Definition at line 398 of file METAnalyzer.h.

◆ mePhotonEtFraction_BXm1Filled

MonitorElement* METAnalyzer::mePhotonEtFraction_BXm1Filled
private

Definition at line 419 of file METAnalyzer.h.

◆ mePhotonEtFraction_profile

MonitorElement* METAnalyzer::mePhotonEtFraction_profile
private

Definition at line 563 of file METAnalyzer.h.

◆ meSumET_BXm1Empty

MonitorElement* METAnalyzer::meSumET_BXm1Empty
private

Definition at line 402 of file METAnalyzer.h.

◆ meSumET_BXm1Filled

MonitorElement* METAnalyzer::meSumET_BXm1Filled
private

Definition at line 423 of file METAnalyzer.h.

◆ meSumET_profile

MonitorElement* METAnalyzer::meSumET_profile
private

Definition at line 561 of file METAnalyzer.h.

◆ metCollectionLabel_

edm::InputTag METAnalyzer::metCollectionLabel_
private

Definition at line 157 of file METAnalyzer.h.

◆ METFilterMiniAODLabel2_

edm::InputTag METAnalyzer::METFilterMiniAODLabel2_
private

Definition at line 172 of file METAnalyzer.h.

◆ METFilterMiniAODLabel_

edm::InputTag METAnalyzer::METFilterMiniAODLabel_
private

Definition at line 170 of file METAnalyzer.h.

◆ METFilterMiniAODToken2_

edm::EDGetTokenT<edm::TriggerResults> METAnalyzer::METFilterMiniAODToken2_
private

Definition at line 173 of file METAnalyzer.h.

◆ METFilterMiniAODToken_

edm::EDGetTokenT<edm::TriggerResults> METAnalyzer::METFilterMiniAODToken_
private

Definition at line 171 of file METAnalyzer.h.

◆ MetType_

std::string METAnalyzer::MetType_
private

Definition at line 154 of file METAnalyzer.h.

◆ MExPFCand_

std::vector<double> METAnalyzer::MExPFCand_
private

Definition at line 536 of file METAnalyzer.h.

◆ MEyPFCand_

std::vector<double> METAnalyzer::MEyPFCand_
private

Definition at line 536 of file METAnalyzer.h.

◆ meZJets_u_par

MonitorElement* METAnalyzer::meZJets_u_par
private

Definition at line 574 of file METAnalyzer.h.

◆ meZJets_u_par_ZPt_0_15

MonitorElement* METAnalyzer::meZJets_u_par_ZPt_0_15
private

Definition at line 575 of file METAnalyzer.h.

◆ meZJets_u_par_ZPt_150_290

MonitorElement* METAnalyzer::meZJets_u_par_ZPt_150_290
private

Definition at line 580 of file METAnalyzer.h.

◆ meZJets_u_par_ZPt_15_30

MonitorElement* METAnalyzer::meZJets_u_par_ZPt_15_30
private

Definition at line 576 of file METAnalyzer.h.

◆ meZJets_u_par_ZPt_290

MonitorElement* METAnalyzer::meZJets_u_par_ZPt_290
private

Definition at line 581 of file METAnalyzer.h.

◆ meZJets_u_par_ZPt_30_55

MonitorElement* METAnalyzer::meZJets_u_par_ZPt_30_55
private

Definition at line 577 of file METAnalyzer.h.

◆ meZJets_u_par_ZPt_55_75

MonitorElement* METAnalyzer::meZJets_u_par_ZPt_55_75
private

Definition at line 578 of file METAnalyzer.h.

◆ meZJets_u_par_ZPt_75_150

MonitorElement* METAnalyzer::meZJets_u_par_ZPt_75_150
private

Definition at line 579 of file METAnalyzer.h.

◆ meZJets_u_perp

MonitorElement* METAnalyzer::meZJets_u_perp
private

Definition at line 583 of file METAnalyzer.h.

◆ meZJets_u_perp_ZPt_0_15

MonitorElement* METAnalyzer::meZJets_u_perp_ZPt_0_15
private

Definition at line 584 of file METAnalyzer.h.

◆ meZJets_u_perp_ZPt_150_290

MonitorElement* METAnalyzer::meZJets_u_perp_ZPt_150_290
private

Definition at line 589 of file METAnalyzer.h.

◆ meZJets_u_perp_ZPt_15_30

MonitorElement* METAnalyzer::meZJets_u_perp_ZPt_15_30
private

Definition at line 585 of file METAnalyzer.h.

◆ meZJets_u_perp_ZPt_290

MonitorElement* METAnalyzer::meZJets_u_perp_ZPt_290
private

Definition at line 590 of file METAnalyzer.h.

◆ meZJets_u_perp_ZPt_30_55

MonitorElement* METAnalyzer::meZJets_u_perp_ZPt_30_55
private

Definition at line 586 of file METAnalyzer.h.

◆ meZJets_u_perp_ZPt_55_75

MonitorElement* METAnalyzer::meZJets_u_perp_ZPt_55_75
private

Definition at line 587 of file METAnalyzer.h.

◆ meZJets_u_perp_ZPt_75_150

MonitorElement* METAnalyzer::meZJets_u_perp_ZPt_75_150
private

Definition at line 588 of file METAnalyzer.h.

◆ miniaodfilterdec

int METAnalyzer::miniaodfilterdec
private

Definition at line 176 of file METAnalyzer.h.

◆ miniaodFilterIndex_

std::vector<int> METAnalyzer::miniaodFilterIndex_
private

Definition at line 175 of file METAnalyzer.h.

◆ MuonsToken_

edm::EDGetTokenT<reco::MuonCollection> METAnalyzer::MuonsToken_
private

Definition at line 168 of file METAnalyzer.h.

◆ nbinsPV_

int METAnalyzer::nbinsPV_
private

Definition at line 258 of file METAnalyzer.h.

◆ nPVMax_

double METAnalyzer::nPVMax_
private

Definition at line 260 of file METAnalyzer.h.

◆ nPVMin_

double METAnalyzer::nPVMin_
private

Definition at line 259 of file METAnalyzer.h.

◆ numPV_

int METAnalyzer::numPV_
private

Definition at line 284 of file METAnalyzer.h.

◆ onlyCleaned_

bool METAnalyzer::onlyCleaned_
private

Definition at line 268 of file METAnalyzer.h.

◆ parameters

edm::ParameterSet METAnalyzer::parameters
private

Definition at line 150 of file METAnalyzer.h.

◆ patJetsToken_

edm::EDGetTokenT<pat::JetCollection> METAnalyzer::patJetsToken_
private

Definition at line 167 of file METAnalyzer.h.

◆ patMetToken_

edm::EDGetTokenT<pat::METCollection> METAnalyzer::patMetToken_
private

Definition at line 195 of file METAnalyzer.h.

◆ pfjetIDFunctorLoose

PFJetIDSelectionFunctor METAnalyzer::pfjetIDFunctorLoose
private

Definition at line 205 of file METAnalyzer.h.

◆ pfJetsToken_

edm::EDGetTokenT<reco::PFJetCollection> METAnalyzer::pfJetsToken_
private

Definition at line 166 of file METAnalyzer.h.

◆ pflowPackedToken_

edm::EDGetTokenT<std::vector<pat::PackedCandidate> > METAnalyzer::pflowPackedToken_
private

Definition at line 554 of file METAnalyzer.h.

◆ pflowToken_

edm::EDGetTokenT<std::vector<reco::PFCandidate> > METAnalyzer::pflowToken_
private

Definition at line 553 of file METAnalyzer.h.

◆ pfMetToken_

edm::EDGetTokenT<reco::PFMETCollection> METAnalyzer::pfMetToken_
private

Definition at line 196 of file METAnalyzer.h.

◆ profilePFCand_x_

std::vector<MonitorElement*> METAnalyzer::profilePFCand_x_
private

Definition at line 534 of file METAnalyzer.h.

◆ profilePFCand_x_name_

std::vector<std::string> METAnalyzer::profilePFCand_x_name_
private

Definition at line 535 of file METAnalyzer.h.

◆ profilePFCand_y_

std::vector<MonitorElement*> METAnalyzer::profilePFCand_y_
private

Definition at line 534 of file METAnalyzer.h.

◆ profilePFCand_y_name_

std::vector<std::string> METAnalyzer::profilePFCand_y_name_
private

Definition at line 535 of file METAnalyzer.h.

◆ ptMinCand_

double METAnalyzer::ptMinCand_
private

Definition at line 531 of file METAnalyzer.h.

◆ ptThreshold_

double METAnalyzer::ptThreshold_
private

Definition at line 210 of file METAnalyzer.h.

◆ runcosmics_

bool METAnalyzer::runcosmics_
private

Definition at line 267 of file METAnalyzer.h.

◆ triggerFolderDecisions_

std::vector<int> METAnalyzer::triggerFolderDecisions_
private

Definition at line 226 of file METAnalyzer.h.

◆ triggerFolderEventFlag_

std::vector<GenericTriggerEventFlag*> METAnalyzer::triggerFolderEventFlag_
private

Definition at line 223 of file METAnalyzer.h.

◆ triggerFolderExpr_

std::vector<std::vector<std::string> > METAnalyzer::triggerFolderExpr_
private

Definition at line 224 of file METAnalyzer.h.

◆ triggerFolderLabels_

std::vector<std::string> METAnalyzer::triggerFolderLabels_
private

Definition at line 225 of file METAnalyzer.h.

◆ triggerResultsLabel_

edm::InputTag METAnalyzer::triggerResultsLabel_
private

Definition at line 214 of file METAnalyzer.h.

◆ triggerResultsToken_

edm::EDGetTokenT<edm::TriggerResults> METAnalyzer::triggerResultsToken_
private

Definition at line 215 of file METAnalyzer.h.

◆ triggerSelectedSubFolders_

edm::VParameterSet METAnalyzer::triggerSelectedSubFolders_
private

Definition at line 222 of file METAnalyzer.h.

◆ typePFCand_

std::vector<int> METAnalyzer::typePFCand_
private

Definition at line 537 of file METAnalyzer.h.

◆ verbose_

int METAnalyzer::verbose_
private

Definition at line 152 of file METAnalyzer.h.

◆ vertexTag_

edm::InputTag METAnalyzer::vertexTag_
private

Definition at line 160 of file METAnalyzer.h.

◆ vertexToken_

edm::EDGetTokenT<std::vector<reco::Vertex> > METAnalyzer::vertexToken_
private

Definition at line 163 of file METAnalyzer.h.