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
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > 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
 
bool registeredToConsumeMany (TypeID const &, 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::ESRecordsToProxyIndices 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

std::vector< int > allTriggerDecisions_
 
std::vector< std::string > allTriggerNames_
 
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
 
MonitorElementhTrigger
 
bool hTriggerLabelsIsSet_
 
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
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 ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
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(), HLT_2022v12_cff::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  hTriggerLabelsIsSet_ = false;
106  //jet cleanup parameters
107  cleaningParameters_ = pSet.getParameter<ParameterSet>("CleaningParameters");
108 
109  diagnosticsParameters_ = pSet.getParameter<std::vector<edm::ParameterSet> >("METDiagonisticsParameters");
110 
112  //DCS
114 
115  //Vertex requirements
116  bypassAllPVChecks_ = cleaningParameters_.getParameter<bool>("bypassAllPVChecks");
117  bypassAllDCSChecks_ = cleaningParameters_.getParameter<bool>("bypassAllDCSChecks");
118  runcosmics_ = parameters.getUntrackedParameter<bool>("runcosmics");
119  onlyCleaned_ = parameters.getUntrackedParameter<bool>("onlyCleaned");
121  vertexToken_ = consumes<std::vector<reco::Vertex> >(edm::InputTag(vertexTag_));
122 
123  //Trigger parameters
125  gtToken_ = consumes<L1GlobalTriggerReadoutRecord>(edm::InputTag(gtTag_));
126 
127  // Other data collections
128  jetCollectionLabel_ = parameters.getParameter<edm::InputTag>("JetCollectionLabel");
129  if (isCaloMet_)
130  caloJetsToken_ = consumes<reco::CaloJetCollection>(jetCollectionLabel_);
131  //if (isTCMet_) jptJetsToken_ = consumes<reco::JPTJetCollection>(jetCollectionLabel_);
132  if (isPFMet_)
133  pfJetsToken_ = consumes<reco::PFJetCollection>(jetCollectionLabel_);
134  if (isMiniAODMet_)
135  patJetsToken_ = consumes<pat::JetCollection>(jetCollectionLabel_);
136 
137  HBHENoiseStringMiniAOD = parameters.getParameter<std::string>("HBHENoiseLabelMiniAOD");
138  HBHEIsoNoiseStringMiniAOD = parameters.getParameter<std::string>("HBHEIsoNoiseLabelMiniAOD");
139 
140  hbheNoiseFilterResultTag_ = parameters.getParameter<edm::InputTag>("HBHENoiseFilterResultLabel");
142  hbheNoiseIsoFilterResultTag_ = parameters.getParameter<edm::InputTag>("HBHENoiseIsoFilterResultLabel");
144  CSCHaloResultTag_ = parameters.getParameter<edm::InputTag>("CSCHaloResultLabel");
145  CSCHaloResultToken_ = consumes<bool>(CSCHaloResultTag_);
146  CSCHalo2015ResultTag_ = parameters.getParameter<edm::InputTag>("CSCHalo2015ResultLabel");
148  EcalDeadCellTriggerTag_ = parameters.getParameter<edm::InputTag>("EcalDeadCellTriggerPrimitiveFilterLabel");
150  EcalDeadCellBoundaryTag_ = parameters.getParameter<edm::InputTag>("EcalDeadCellBoundaryEnergyFilterLabel");
152  eeBadScFilterTag_ = parameters.getParameter<edm::InputTag>("eeBadScFilterLabel");
153  eeBadScFilterToken_ = consumes<bool>(eeBadScFilterTag_);
154  HcalStripHaloTag_ = parameters.getParameter<edm::InputTag>("HcalStripHaloFilterLabel");
155  HcalStripHaloToken_ = consumes<bool>(HcalStripHaloTag_);
156 
157  if (isMiniAODMet_) {
158  METFilterMiniAODLabel_ = parameters.getParameter<edm::InputTag>("FilterResultsLabelMiniAOD");
159  METFilterMiniAODToken_ = consumes<edm::TriggerResults>(METFilterMiniAODLabel_);
160 
161  METFilterMiniAODLabel2_ = parameters.getParameter<edm::InputTag>("FilterResultsLabelMiniAOD2");
162  METFilterMiniAODToken2_ = consumes<edm::TriggerResults>(METFilterMiniAODLabel2_);
163  }
164 
165  //
166  nbinsPV_ = parameters.getParameter<int>("pVBin");
167  nPVMin_ = parameters.getParameter<double>("pVMin");
168  nPVMax_ = parameters.getParameter<double>("pVMax");
169 
171  for (edm::VParameterSet::const_iterator it = triggerSelectedSubFolders_.begin();
172  it != triggerSelectedSubFolders_.end();
173  it++) {
175  triggerFolderExpr_.push_back(it->getParameter<std::vector<std::string> >("hltPaths"));
176  triggerFolderLabels_.push_back(it->getParameter<std::string>("label"));
177  }
178 
179  cleaningParameters_ = parameters.getParameter<ParameterSet>("CleaningParameters");
180 
181  verbose_ = parameters.getParameter<int>("verbose");
182 
184 
185  l1gtTrigMenuToken_ = esConsumes<edm::Transition::BeginRun>();
186 }
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:271
edm::EDGetTokenT< bool > CSCHalo2015ResultToken_
Definition: METAnalyzer.h:185
edm::EDGetTokenT< edm::TriggerResults > METFilterMiniAODToken2_
Definition: METAnalyzer.h:173
std::vector< GenericTriggerEventFlag * > triggerFolderEventFlag_
Definition: METAnalyzer.h:228
std::vector< edm::ParameterSet > diagnosticsParameters_
Definition: METAnalyzer.h:259
double ptThreshold_
Definition: METAnalyzer.h:210
bool runcosmics_
Definition: METAnalyzer.h:272
bool isCaloMet_
Definition: METAnalyzer.h:603
std::vector< ParameterSet > VParameterSet
Definition: ParameterSet.h:34
std::string MetType_
Definition: METAnalyzer.h:154
bool onlyCleaned_
Definition: METAnalyzer.h:273
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:608
std::vector< std::string > triggerFolderLabels_
Definition: METAnalyzer.h:230
double nPVMin_
Definition: METAnalyzer.h:264
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:222
edm::EDGetTokenT< reco::JetCorrector > jetCorrectorToken_
Definition: METAnalyzer.h:225
std::string HBHEIsoNoiseStringMiniAOD
Definition: METAnalyzer.h:223
T getUntrackedParameter(std::string const &, T const &) const
std::vector< std::vector< std::string > > triggerFolderExpr_
Definition: METAnalyzer.h:229
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:607
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:258
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:298
Jet selector for pat::Jets and for CaloJets.
PFJetIDSelectionFunctor pfjetIDFunctorLoose
Definition: METAnalyzer.h:205
edm::EDGetTokenT< std::vector< reco::PFCandidate > > pflowToken_
Definition: METAnalyzer.h:562
double nPVMax_
Definition: METAnalyzer.h:265
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:540
edm::VParameterSet triggerSelectedSubFolders_
Definition: METAnalyzer.h:227
edm::EDGetTokenT< L1GlobalTriggerReadoutRecord > gtToken_
Definition: METAnalyzer.h:164
bool bypassAllPVChecks_
Definition: METAnalyzer.h:270
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 hTriggerLabelsIsSet_
Definition: METAnalyzer.h:308
bool isMiniAODMet_
Definition: METAnalyzer.h:605
edm::EDGetTokenT< std::vector< pat::PackedCandidate > > pflowPackedToken_
Definition: METAnalyzer.h:563
int m_bitAlgTechTrig_
Definition: METAnalyzer.h:208

◆ ~METAnalyzer()

METAnalyzer::~METAnalyzer ( )
override

Destructor.

Definition at line 189 of file METAnalyzer.cc.

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

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 1415 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_2022v12_cff::pt1, HLT_2022v12_cff::pt2, L1EGammaClusterEmuProducer_cfi::scale, AlCaHLTBitMon_QueryRunRegistry::string, L1GlobalTriggerReadoutRecord::technicalTriggerWord(), edm::triggerResults(), and spclusmultinvestigator_cfi::vertexCollection.

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

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

198  {
200  ibooker.setCurrentFolder(DirName);
201  // since this module does things in dqmEndRun, we need to make sure to have
202  // per-run histograms.
203  ibooker.setScope(MonitorElementData::Scope::RUN);
204 
205  if (!folderNames_.empty()) {
206  folderNames_.clear();
207  }
208  if (runcosmics_) {
209  folderNames_.push_back("Uncleaned");
210  } else {
211  if (!onlyCleaned_) {
212  folderNames_.push_back("Uncleaned");
213  }
214  folderNames_.push_back("Cleaned");
215  folderNames_.push_back("DiJet");
216  if (!isMiniAODMet_) {
217  folderNames_.push_back("ZJets");
218  }
219  }
220  for (std::vector<std::string>::const_iterator ic = folderNames_.begin(); ic != folderNames_.end(); ic++) {
221  bookMESet(DirName + "/" + *ic, ibooker, map_dijet_MEs);
222  }
223 }
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:32
std::map< std::string, MonitorElement * > map_dijet_MEs
Definition: METAnalyzer.h:601
bool runcosmics_
Definition: METAnalyzer.h:272
bool onlyCleaned_
Definition: METAnalyzer.h:273
virtual MonitorElementData::Scope setScope(MonitorElementData::Scope newscope)
Definition: DQMStore.cc:46
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:300
bool isMiniAODMet_
Definition: METAnalyzer.h:605
void bookMESet(std::string, DQMStore::IBooker &, std::map< std::string, MonitorElement *> &)
Definition: METAnalyzer.cc:226

◆ bookMESet()

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

Definition at line 226 of file METAnalyzer.cc.

References fed_dqm_sourceclient-live_cfg::DirName.

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

◆ 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 253 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, mps_fire::i, M_PI, dqm::impl::MonitorElement::setAxisTitle(), dqm::impl::MonitorElement::setBinLabel(), dqm::implementation::NavigatorBase::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, and findQualityFiles::v.

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

1182  {
1183  const L1GtTriggerMenu* menu = &iSetup.getData(l1gtTrigMenuToken_);
1184  for (CItAlgo techTrig = menu->gtTechnicalTriggerMap().begin(); techTrig != menu->gtTechnicalTriggerMap().end();
1185  ++techTrig) {
1186  if ((techTrig->second).algoName() == m_l1algoname_) {
1187  m_bitAlgTechTrig_ = (techTrig->second).algoBitNumber();
1188  break;
1189  }
1190  }
1191 
1192  // std::cout << "Run " << iRun.run() << " hltconfig.init "
1193  // << hltConfig_.init(iRun,iSetup,triggerResultsLabel_.process(),changed_) << " length: "<<hltConfig_.triggerNames().size()<<" changed "<<changed_<<std::endl;
1194  bool changed(true);
1195  if (hltConfig_.init(iRun, iSetup, triggerResultsLabel_.process(), changed)) {
1196  if (changed) {
1197  //hltConfig_.dump("ProcessName");
1198  //hltConfig_.dump("GlobalTag");
1199  //hltConfig_.dump("TableName");
1200  // hltConfig_.dump("Streams");
1201  // hltConfig_.dump("Datasets");
1202  // hltConfig_.dump("PrescaleTable");
1203  // hltConfig_.dump("ProcessPSet");
1204  }
1205  } else {
1206  if (verbose_)
1207  std::cout << "HLTEventAnalyzerAOD::analyze:"
1208  << " config extraction failure with process name " << triggerResultsLabel_.process() << std::endl;
1209  }
1210 
1211  allTriggerNames_.clear();
1212  for (unsigned int i = 0; i < hltConfig_.size(); i++) {
1214  }
1215  // std::cout<<"Length: "<<allTriggerNames_.size()<<std::endl;
1216 
1217  triggerSelectedSubFolders_ = parameters.getParameter<edm::VParameterSet>("triggerSelectedSubFolders");
1218  for (std::vector<GenericTriggerEventFlag*>::const_iterator it = triggerFolderEventFlag_.begin();
1219  it != triggerFolderEventFlag_.end();
1220  it++) {
1221  int pos = it - triggerFolderEventFlag_.begin();
1222  if ((*it)->on()) {
1223  (*it)->initRun(iRun, iSetup);
1224  if (triggerSelectedSubFolders_[pos].exists(std::string("hltDBKey"))) {
1225  if ((*it)->expressionsFromDB((*it)->hltDBKey(), iSetup)[0] != "CONFIG_ERROR")
1226  triggerFolderExpr_[pos] = (*it)->expressionsFromDB((*it)->hltDBKey(), iSetup);
1227  }
1228  }
1229  }
1230  if (isMiniAODMet_) {
1231  bool changed_filter = true;
1232  std::vector<int> initializeFilter(8, -1); //we have 8 filters at the moment
1233  miniaodFilterIndex_ = initializeFilter;
1234  if (FilterhltConfig_.init(iRun, iSetup, METFilterMiniAODLabel_.process(), changed_filter)) {
1235  miniaodfilterdec = 0;
1236  for (unsigned int i = 0; i < FilterhltConfig_.size(); i++) {
1238  5); //actual label of filter, the first 5 items are Flag_, so stripped off
1240  HBHENoiseStringMiniAOD; //all filters end with DQM, which is not in the flag --> ONLY not for HBHEFilters
1241  std::size_t found = search2.find(search);
1242  if (found != std::string::npos) {
1243  miniaodFilterIndex_[0] = i;
1244  }
1245  search2 = CSCHaloResultTag_.label().substr(0, CSCHaloResultTag_.label().size() - 3);
1246  found = search2.find(search);
1247  if (found != std::string::npos) {
1248  miniaodFilterIndex_[1] = i;
1249  }
1250  search2 = eeBadScFilterTag_.label().substr(0, eeBadScFilterTag_.label().size() - 3);
1251  found = search2.find(search);
1252  if (found != std::string::npos) {
1253  miniaodFilterIndex_[2] = i;
1254  }
1256  found = search2.find(search);
1257  if (found != std::string::npos) {
1258  miniaodFilterIndex_[3] = i;
1259  }
1260  search2 = CSCHalo2015ResultTag_.label().substr(0, CSCHalo2015ResultTag_.label().size() - 3);
1261  found = search2.find(search);
1262  if (found != std::string::npos) {
1263  miniaodFilterIndex_[4] = i;
1264  }
1266  found = search2.find(search);
1267  if (found != std::string::npos) {
1268  miniaodFilterIndex_[5] = i;
1269  }
1271  found = search2.find(search);
1272  if (found != std::string::npos) {
1273  miniaodFilterIndex_[6] = i;
1274  }
1275  search2 = HcalStripHaloTag_.label().substr(0, HcalStripHaloTag_.label().size() - 3);
1276  found = search2.find(search);
1277  if (found != std::string::npos) {
1278  miniaodFilterIndex_[7] = i;
1279  }
1280  }
1281  } else if (FilterhltConfig_.init(iRun, iSetup, METFilterMiniAODLabel2_.process(), changed_filter)) {
1282  miniaodfilterdec = 1;
1283  for (unsigned int i = 0; i < FilterhltConfig_.size(); i++) {
1285  5); //actual label of filter, the first 5 items are Flag_, so stripped off
1287  HBHENoiseStringMiniAOD; //all filters end with DQM, which is not in the flag --> ONLY not for HBHEFilters
1288  std::size_t found = search2.find(search);
1289  if (found != std::string::npos) {
1290  miniaodFilterIndex_[0] = i;
1291  }
1292  search2 = CSCHaloResultTag_.label().substr(0, CSCHaloResultTag_.label().size() - 3);
1293  found = search2.find(search);
1294  if (found != std::string::npos) {
1295  miniaodFilterIndex_[1] = i;
1296  }
1297  search2 = eeBadScFilterTag_.label().substr(0, eeBadScFilterTag_.label().size() - 3);
1298  found = search2.find(search);
1299  if (found != std::string::npos) {
1300  miniaodFilterIndex_[2] = i;
1301  }
1303  found = search2.find(search);
1304  if (found != std::string::npos) {
1305  miniaodFilterIndex_[3] = i;
1306  }
1307  search2 = CSCHalo2015ResultTag_.label().substr(0, CSCHalo2015ResultTag_.label().size() - 3);
1308  found = search2.find(search);
1309  if (found != std::string::npos) {
1310  miniaodFilterIndex_[4] = i;
1311  }
1313  found = search2.find(search);
1314  if (found != std::string::npos) {
1315  miniaodFilterIndex_[5] = i;
1316  }
1318  found = search2.find(search);
1319  if (found != std::string::npos) {
1320  miniaodFilterIndex_[6] = i;
1321  }
1322  search2 = HcalStripHaloTag_.label().substr(0, HcalStripHaloTag_.label().size() - 3);
1323  found = search2.find(search);
1324  if (found != std::string::npos) {
1325  miniaodFilterIndex_[7] = i;
1326  }
1327  }
1328  } else {
1329  edm::LogWarning("MiniAOD METAN Filter HLT OBject version")
1330  << "nothing found with both RECO and reRECO label" << std::endl;
1331  }
1332  }
1333 }
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
HLTConfigProvider hltConfig_
Definition: METAnalyzer.h:212
std::vector< GenericTriggerEventFlag * > triggerFolderEventFlag_
Definition: METAnalyzer.h:228
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
std::vector< std::string > allTriggerNames_
Definition: METAnalyzer.h:219
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:222
AlgorithmMap::const_iterator CItAlgo
iterators through map containing the algorithms
std::string HBHEIsoNoiseStringMiniAOD
Definition: METAnalyzer.h:223
std::vector< int > miniaodFilterIndex_
Definition: METAnalyzer.h:175
std::vector< std::vector< std::string > > triggerFolderExpr_
Definition: METAnalyzer.h:229
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
bool getData(T &iHolder) const
Definition: EventSetup.h:122
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:227
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:605
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 1336 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.

1336  {
1337  //
1338  //--- Check the time length of the Run from the lumi section plots
1339 
1340  TH1F* tlumisec;
1341 
1342  MonitorElement* meLumiSec = map_dijet_MEs["aaa"];
1343  meLumiSec = map_dijet_MEs["JetMET/lumisec"];
1344 
1345  int totlsec = 0;
1346  int totlssecsum = 0;
1347  double totltime = 0.;
1348  if (meLumiSec && meLumiSec->getRootObject()) {
1349  tlumisec = meLumiSec->getTH1F();
1350  //check overflow bin (if we have more than 2500 LS in a run)
1351  //lumisec is filled every time the analyze section is processed
1352  //we know an LS is present only once in a run: normalize how many events we had on average
1353  //if lumi fluctuates strongly might be unreliable for overflow bin though
1354  for (int i = 0; i < (tlumisec->GetNbinsX()); i++) {
1355  if (tlumisec->GetBinContent(i) != 0) {
1356  totlsec += 1;
1357  totlssecsum += tlumisec->GetBinContent(i);
1358  }
1359  }
1360  int num_per_ls = (double)totlssecsum / (double)totlsec;
1361  totlsec = totlsec + tlumisec->GetBinContent(tlumisec->GetNbinsX() + 1) / (double)num_per_ls;
1362  totltime = double(totlsec * 90); // one lumi sec ~ 90 (sec)
1363  }
1364 
1365  if (totltime == 0.)
1366  totltime = 1.;
1367 
1369  //dbe_->setCurrentFolder(dirName);
1370 
1371  //below is the original METAnalyzer formulation
1372 
1373  for (std::vector<std::string>::const_iterator ic = folderNames_.begin(); ic != folderNames_.end(); ic++) {
1375  DirName = dirName + *ic;
1376  makeRatePlot(DirName, totltime);
1377  for (std::vector<GenericTriggerEventFlag*>::const_iterator it = triggerFolderEventFlag_.begin();
1378  it != triggerFolderEventFlag_.end();
1379  it++) {
1380  int pos = it - triggerFolderEventFlag_.begin();
1381  if ((*it)->on()) {
1382  makeRatePlot(DirName + "/" + triggerFolderLabels_[pos], totltime);
1383  }
1384  }
1385  }
1386 }
std::vector< GenericTriggerEventFlag * > triggerFolderEventFlag_
Definition: METAnalyzer.h:228
std::map< std::string, MonitorElement * > map_dijet_MEs
Definition: METAnalyzer.h:601
std::vector< std::string > triggerFolderLabels_
Definition: METAnalyzer.h:230
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:300
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 2041 of file METAnalyzer.cc.

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

2050  {
2051  bool bLumiSecPlot = fill_met_high_level_histo;
2052  bool fillPFCandidatePlots = false;
2053  if (DirName.find("Cleaned") != std::string::npos) {
2054  fillPFCandidatePlots = true;
2056  DirName,
2057  std::string(""),
2058  met,
2059  patmet,
2060  pfmet,
2061  calomet,
2062  zCand,
2063  map_of_MEs,
2064  bLumiSecPlot,
2065  fillPFCandidatePlots,
2066  techTriggerCase,
2067  METFilterDecision);
2068  for (unsigned int i = 0; i < triggerFolderLabels_.size(); i++) {
2069  fillPFCandidatePlots = false;
2070  if (triggerFolderDecisions_[i]) {
2072  DirName,
2074  met,
2075  patmet,
2076  pfmet,
2077  calomet,
2078  zCand,
2079  map_of_MEs,
2080  bLumiSecPlot,
2081  fillPFCandidatePlots,
2082  techTriggerCase,
2083  METFilterDecision);
2084  }
2085  }
2086  } else if (DirName.find("DiJet") != std::string::npos) {
2088  DirName,
2089  std::string(""),
2090  met,
2091  patmet,
2092  pfmet,
2093  calomet,
2094  zCand,
2095  map_of_MEs,
2096  bLumiSecPlot,
2097  fillPFCandidatePlots,
2098  techTriggerCase,
2099  METFilterDecision);
2100  for (unsigned int i = 0; i < triggerFolderLabels_.size(); i++) {
2103  DirName,
2105  met,
2106  patmet,
2107  pfmet,
2108  calomet,
2109  zCand,
2110  map_of_MEs,
2111  bLumiSecPlot,
2112  fillPFCandidatePlots,
2113  techTriggerCase,
2114  METFilterDecision);
2115  }
2116  } else if (DirName.find("ZJets") != std::string::npos) {
2118  DirName,
2119  std::string(""),
2120  met,
2121  patmet,
2122  pfmet,
2123  calomet,
2124  zCand,
2125  map_of_MEs,
2126  bLumiSecPlot,
2127  fillPFCandidatePlots,
2128  techTriggerCase,
2129  METFilterDecision);
2130  } else {
2132  DirName,
2133  std::string(""),
2134  met,
2135  patmet,
2136  pfmet,
2137  calomet,
2138  zCand,
2139  map_of_MEs,
2140  bLumiSecPlot,
2141  fillPFCandidatePlots,
2142  techTriggerCase,
2143  METFilterDecision);
2144  }
2145 }
std::vector< int > triggerFolderDecisions_
Definition: METAnalyzer.h:231
std::vector< std::string > triggerFolderLabels_
Definition: METAnalyzer.h:230
int iEvent
Definition: GenABIO.cc:224
bool fill_met_high_level_histo
Definition: METAnalyzer.h:607
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 2148 of file METAnalyzer.cc.

References 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().

2160  {
2161  bool do_only_Z_histograms = false;
2162  if (DirName.find("ZJets") != std::string::npos) { //do Z plots only
2163  do_only_Z_histograms = true;
2164  //\vec{p}_{T}^{Z}+vec{u}_{T}+\vec{MET}=0
2165 
2166  double u_x = -met.px() - zCand.Px();
2167  double u_y = -met.py() - zCand.Py();
2168 
2169  //protection for VERY special case where Z-Pt==0
2170  double u_par = 0;
2171  double u_perp = sqrt(u_x * u_x + u_y * u_y);
2172  double e_Z_x = 0;
2173  double e_Z_y = 0;
2174  if (zCand.Pt() != 0) {
2175  e_Z_x = zCand.Px() / zCand.Pt();
2176  e_Z_y = zCand.Py() / zCand.Pt();
2177  }
2178  u_par = u_x * e_Z_x + u_y * e_Z_y;
2179  u_perp = -e_Z_y * u_x + e_Z_x * u_y;
2180 
2181  meZJets_u_par = map_of_MEs[DirName + "/" + "u_parallel_Z_inc"];
2183  meZJets_u_par->Fill(u_par);
2184  if (zCand.Pt() < 15) {
2185  meZJets_u_par_ZPt_0_15 = map_of_MEs[DirName + "/" + "u_parallel_ZPt_0_15"];
2187  meZJets_u_par_ZPt_0_15->Fill(u_par);
2188  } else if (zCand.Pt() < 30) {
2189  meZJets_u_par_ZPt_15_30 = map_of_MEs[DirName + "/" + "u_parallel_ZPt_15_30"];
2191  meZJets_u_par_ZPt_15_30->Fill(u_par);
2192  } else if (zCand.Pt() < 55) {
2193  meZJets_u_par_ZPt_30_55 = map_of_MEs[DirName + "/" + "u_parallel_ZPt_30_55"];
2195  meZJets_u_par_ZPt_30_55->Fill(u_par);
2196  } else if (zCand.Pt() < 75) {
2197  meZJets_u_par_ZPt_55_75 = map_of_MEs[DirName + "/" + "u_parallel_ZPt_55_75"];
2199  meZJets_u_par_ZPt_55_75->Fill(u_par);
2200  } else if (zCand.Pt() < 150) {
2201  meZJets_u_par_ZPt_75_150 = map_of_MEs[DirName + "/" + "u_parallel_ZPt_75_150"];
2204  } else if (zCand.Pt() < 290) {
2205  meZJets_u_par_ZPt_150_290 = map_of_MEs[DirName + "/" + "u_parallel_ZPt_150_290"];
2208  } else {
2209  meZJets_u_par_ZPt_290 = map_of_MEs[DirName + "/" + "u_parallel_ZPt_290"];
2211  meZJets_u_par_ZPt_290->Fill(u_par);
2212  }
2213 
2214  meZJets_u_perp = map_of_MEs[DirName + "/" + "u_perp_Z_inc"];
2216  meZJets_u_perp->Fill(u_perp);
2217  if (zCand.Pt() < 15) {
2218  meZJets_u_perp_ZPt_0_15 = map_of_MEs[DirName + "/" + "u_perp_ZPt_0_15"];
2220  meZJets_u_perp_ZPt_0_15->Fill(u_perp);
2221  } else if (zCand.Pt() < 30) {
2222  meZJets_u_perp_ZPt_15_30 = map_of_MEs[DirName + "/" + "u_perp_ZPt_15_30"];
2224  meZJets_u_perp_ZPt_15_30->Fill(u_perp);
2225  } else if (zCand.Pt() < 55) {
2226  meZJets_u_perp_ZPt_30_55 = map_of_MEs[DirName + "/" + "u_perp_ZPt_30_55"];
2228  meZJets_u_perp_ZPt_30_55->Fill(u_perp);
2229  } else if (zCand.Pt() < 75) {
2230  meZJets_u_perp_ZPt_55_75 = map_of_MEs[DirName + "/" + "u_perp_ZPt_55_75"];
2232  meZJets_u_perp_ZPt_55_75->Fill(u_perp);
2233  } else if (zCand.Pt() < 150) {
2234  meZJets_u_perp_ZPt_75_150 = map_of_MEs[DirName + "/" + "u_perp_ZPt_75_150"];
2237  } else if (zCand.Pt() < 290) {
2238  meZJets_u_perp_ZPt_150_290 = map_of_MEs[DirName + "/" + "u_perp_ZPt_150_290"];
2241  } else {
2242  meZJets_u_perp_ZPt_290 = map_of_MEs[DirName + "/" + "u_perp_ZPt_290"];
2244  meZJets_u_perp_ZPt_290->Fill(u_perp);
2245  }
2246  }
2247  if (!do_only_Z_histograms) {
2248  // Reconstructed MET Information
2249  double SumET = met.sumEt();
2250  double METSig = met.mEtSig();
2251  //double Ez = met.e_longitudinal();
2252  double MET = met.pt();
2253  double MEx = met.px();
2254  double MEy = met.py();
2255  double METPhi = met.phi();
2256  //
2257  int myLuminosityBlock;
2258  myLuminosityBlock = iEvent.luminosityBlock();
2259  //
2260 
2261  if (!subFolderName.empty()) {
2262  DirName = DirName + "/" + subFolderName;
2263  }
2264 
2265  hTrigger = map_of_MEs[DirName + "/triggerResults"];
2266  if (hTrigger && hTrigger->getRootObject()) {
2267  for (unsigned int i = 0; i < allTriggerDecisions_.size(); i++) {
2268  if (i < (unsigned int)hTrigger->getNbinsX()) {
2270  }
2271  }
2272  }
2273 
2274  hMEx = map_of_MEs[DirName + "/" + "MEx"];
2275  if (hMEx && hMEx->getRootObject())
2276  hMEx->Fill(MEx);
2277  hMEy = map_of_MEs[DirName + "/" + "MEy"];
2278  if (hMEy && hMEy->getRootObject())
2279  hMEy->Fill(MEy);
2280  hMET = map_of_MEs[DirName + "/" + "MET"];
2281  if (hMET && hMET->getRootObject())
2282  hMET->Fill(MET);
2283  hMET_2 = map_of_MEs[DirName + "/" + "MET_2"];
2284  if (hMET_2 && hMET_2->getRootObject())
2285  hMET_2->Fill(MET);
2286 
2287  //hMET_HBHENoiseFilter = ibooker.book1D("MET_HBHENoiseFilter", "MET_HBHENoiseFiltered", 200, 0, 1000);
2288  //hMET_CSCTightHaloFilter = ibooker.book1D("MET_CSCTightHaloFilter", "MET_CSCTightHaloFiltered", 200, 0, 1000);
2289  //hMET_eeBadScFilter = ibooker.book1D("MET_eeBadScFilter", "MET_eeBadScFiltered", 200, 0, 1000);
2290  //hMET_HBHEIsoNoiseFilter = ibooker.book1D("MET_HBHEIsoNoiseFilter", "MET_HBHEIsoNoiseFiltered", 200, 0, 1000);
2291  //hMET_CSCTightHalo2015Filter = ibooker.book1D("MET_CSCTightHalo2015Filter", "MET_CSCTightHalo2015Filtered", 200, 0, 1000);
2292  //hMET_EcalDeadCellTriggerFilter = ibooker.book1D("MET_EcalDeadCellTriggerFilter", "MET_EcalDeadCellTriggerFiltered", 200, 0, 1000);
2293  //hMET_EcalDeadCellBoundaryFilter = ibooker.book1D("MET_EcalDeadCellBoundaryFilter", "MET_EcalDeadCellBoundaryFiltered", 200, 0, 1000);
2294  //hMET_HcalStripHaloFilter = ibooker.book1D("MET_HcalStripHaloFilter", "MET_HcalStripHaloFiltered", 200, 0, 1000);
2295 
2296  bool HBHENoiseFilterResult = false;
2297  bool CSCTightHaloFilterResult = false;
2298  bool eeBadScFilterResult = false;
2299  bool HBHEIsoNoiseFilterResult = false;
2300  bool CSCTightHalo2015FilterResult = false;
2301  bool EcalDeadCellTriggerFilterResult = false;
2302  bool EcalDeadCellBoundaryFilterResult = false;
2303  bool HcalStripHaloFilterResult = false;
2304  HBHENoiseFilterResult = METFilterDecision[0];
2305  if (HBHENoiseFilterResult) {
2306  hMET_HBHENoiseFilter = map_of_MEs[DirName + "/" + "MET_HBHENoiseFilter"];
2309  }
2310  CSCTightHaloFilterResult = METFilterDecision[1];
2311  if (CSCTightHaloFilterResult) {
2312  hMET_CSCTightHaloFilter = map_of_MEs[DirName + "/" + "MET_CSCTightHaloFilter"];
2315  }
2316  eeBadScFilterResult = METFilterDecision[2];
2317  if (eeBadScFilterResult) {
2318  hMET_eeBadScFilter = map_of_MEs[DirName + "/" + "MET_eeBadScFilter"];
2321  }
2322  HBHEIsoNoiseFilterResult = METFilterDecision[3];
2323  if (HBHEIsoNoiseFilterResult) {
2324  hMET_HBHEIsoNoiseFilter = map_of_MEs[DirName + "/" + "MET_HBHEIsoNoiseFilter"];
2327  }
2328  CSCTightHalo2015FilterResult = METFilterDecision[4];
2329  if (CSCTightHalo2015FilterResult) {
2330  hMET_CSCTightHalo2015Filter = map_of_MEs[DirName + "/" + "MET_CSCTightHalo2015Filter"];
2333  }
2334  EcalDeadCellTriggerFilterResult = METFilterDecision[5];
2335  if (EcalDeadCellTriggerFilterResult) {
2336  hMET_EcalDeadCellTriggerFilter = map_of_MEs[DirName + "/" + "MET_EcalDeadCellTriggerFilter"];
2339  }
2340  EcalDeadCellBoundaryFilterResult = METFilterDecision[6];
2341  if (EcalDeadCellBoundaryFilterResult) {
2342  hMET_EcalDeadCellBoundaryFilter = map_of_MEs[DirName + "/" + "MET_EcalDeadCellBoundaryFilter"];
2345  }
2346  HcalStripHaloFilterResult = METFilterDecision[7];
2347  if (HcalStripHaloFilterResult) {
2348  hMET_HcalStripHaloFilter = map_of_MEs[DirName + "/" + "MET_HcalStripHaloFilter"];
2351  }
2352  hMETPhi = map_of_MEs[DirName + "/" + "METPhi"];
2353  if (hMETPhi && hMETPhi->getRootObject())
2354  hMETPhi->Fill(METPhi);
2355  hSumET = map_of_MEs[DirName + "/" + "SumET"];
2356  if (hSumET && hSumET->getRootObject())
2357  hSumET->Fill(SumET);
2358  hMETSig = map_of_MEs[DirName + "/" + "METSig"];
2359  if (hMETSig && hMETSig->getRootObject())
2360  hMETSig->Fill(METSig);
2361  hMET_logx = map_of_MEs[DirName + "/" + "MET_logx"];
2362  if (hMET_logx && hMET_logx->getRootObject())
2363  hMET_logx->Fill(log10(MET));
2364  hSumET_logx = map_of_MEs[DirName + "/" + "SumET_logx"];
2366  hSumET_logx->Fill(log10(SumET));
2367 
2368  // Fill NPV profiles
2369  //--------------------------------------------------------------------------
2370  meMEx_profile = map_of_MEs[DirName + "/MEx_profile"];
2371  meMEy_profile = map_of_MEs[DirName + "/MEy_profile"];
2372  meMET_profile = map_of_MEs[DirName + "/MET_profile"];
2373  meSumET_profile = map_of_MEs[DirName + "/SumET_profile"];
2374 
2376  meMEx_profile->Fill(numPV_, MEx);
2378  meMEy_profile->Fill(numPV_, MEy);
2382  meSumET_profile->Fill(numPV_, SumET);
2383 
2384  if (isCaloMet_) {
2385  //const reco::CaloMETCollection *calometcol = calometcoll.product();
2386  //const reco::CaloMET *calomet;
2387  //calomet = &(calometcol->front());
2388 
2389  double caloEtFractionHadronic = calomet->etFractionHadronic();
2390  double caloEmEtFraction = calomet->emEtFraction();
2391 
2392  double caloHadEtInHB = calomet->hadEtInHB();
2393  double caloHadEtInHO = calomet->hadEtInHO();
2394  double caloHadEtInHE = calomet->hadEtInHE();
2395  double caloHadEtInHF = calomet->hadEtInHF();
2396  double caloEmEtInEB = calomet->emEtInEB();
2397  double caloEmEtInEE = calomet->emEtInEE();
2398  double caloEmEtInHF = calomet->emEtInHF();
2399 
2400  hCaloHadEtInHB = map_of_MEs[DirName + "/" + "CaloHadEtInHB"];
2402  hCaloHadEtInHB->Fill(caloHadEtInHB);
2403  hCaloHadEtInHO = map_of_MEs[DirName + "/" + "CaloHadEtInHO"];
2405  hCaloHadEtInHO->Fill(caloHadEtInHO);
2406  hCaloHadEtInHE = map_of_MEs[DirName + "/" + "CaloHadEtInHE"];
2408  hCaloHadEtInHE->Fill(caloHadEtInHE);
2409  hCaloHadEtInHF = map_of_MEs[DirName + "/" + "CaloHadEtInHF"];
2411  hCaloHadEtInHF->Fill(caloHadEtInHF);
2412  hCaloEmEtInEB = map_of_MEs[DirName + "/" + "CaloEmEtInEB"];
2414  hCaloEmEtInEB->Fill(caloEmEtInEB);
2415  hCaloEmEtInEE = map_of_MEs[DirName + "/" + "CaloEmEtInEE"];
2417  hCaloEmEtInEE->Fill(caloEmEtInEE);
2418  hCaloEmEtInHF = map_of_MEs[DirName + "/" + "CaloEmEtInHF"];
2420  hCaloEmEtInHF->Fill(caloEmEtInHF);
2421 
2422  hCaloMETPhi020 = map_of_MEs[DirName + "/" + "CaloMETPhi020"];
2423  if (MET > 20. && hCaloMETPhi020 && hCaloMETPhi020->getRootObject()) {
2424  hCaloMETPhi020->Fill(METPhi);
2425  }
2426 
2427  hCaloEtFractionHadronic = map_of_MEs[DirName + "/" + "CaloEtFractionHadronic"];
2429  hCaloEtFractionHadronic->Fill(caloEtFractionHadronic);
2430  hCaloEmEtFraction = map_of_MEs[DirName + "/" + "CaloEmEtFraction"];
2432  hCaloEmEtFraction->Fill(caloEmEtFraction);
2433  hCaloEmEtFraction020 = map_of_MEs[DirName + "/" + "CaloEmEtFraction020"];
2435  hCaloEmEtFraction020->Fill(caloEmEtFraction);
2436  }
2437  if (isPFMet_) {
2438  if (fillPFCandidatePlots && fillCandidateMap_histos) {
2439  for (unsigned int i = 0; i < countsPFCand_.size(); i++) {
2440  countsPFCand_[i] = 0;
2441  MExPFCand_[i] = 0.;
2442  MEyPFCand_[i] = 0.;
2443  }
2444 
2445  // typedef std::vector<reco::PFCandidate> pfCand;
2447  iEvent.getByToken(pflowToken_, particleFlow);
2448 
2449  float pt_sum_CHF_Barrel = 0;
2450  float pt_sum_CHF_Endcap_plus = 0;
2451  float pt_sum_CHF_Endcap_minus = 0;
2452  float pt_sum_NHF_Barrel = 0;
2453  float pt_sum_NHF_Endcap_plus = 0;
2454  float pt_sum_NHF_Endcap_minus = 0;
2455  float pt_sum_PhF_Barrel = 0;
2456  float pt_sum_PhF_Endcap_plus = 0;
2457  float pt_sum_PhF_Endcap_minus = 0;
2458  float pt_sum_HFH_plus = 0;
2459  float pt_sum_HFH_minus = 0;
2460  float pt_sum_HFE_plus = 0;
2461  float pt_sum_HFE_minus = 0;
2462 
2463  float px_chargedHadronsBarrel = 0;
2464  float py_chargedHadronsBarrel = 0;
2465  float px_chargedHadronsEndcapPlus = 0;
2466  float py_chargedHadronsEndcapPlus = 0;
2467  float px_chargedHadronsEndcapMinus = 0;
2468  float py_chargedHadronsEndcapMinus = 0;
2469  float px_neutralHadronsBarrel = 0;
2470  float py_neutralHadronsBarrel = 0;
2471  float px_neutralHadronsEndcapPlus = 0;
2472  float py_neutralHadronsEndcapPlus = 0;
2473  float px_neutralHadronsEndcapMinus = 0;
2474  float py_neutralHadronsEndcapMinus = 0;
2475  float px_PhotonsBarrel = 0;
2476  float py_PhotonsBarrel = 0;
2477  float px_PhotonsEndcapPlus = 0;
2478  float py_PhotonsEndcapPlus = 0;
2479  float px_PhotonsEndcapMinus = 0;
2480  float py_PhotonsEndcapMinus = 0;
2481  float px_HFHadronsPlus = 0;
2482  float py_HFHadronsPlus = 0;
2483  float px_HFHadronsMinus = 0;
2484  float py_HFHadronsMinus = 0;
2485  float px_HFEGammasPlus = 0;
2486  float py_HFEGammasPlus = 0;
2487  float px_HFEGammasMinus = 0;
2488  float py_HFEGammasMinus = 0;
2489  for (unsigned int i = 0; i < particleFlow->size(); i++) {
2490  const reco::PFCandidate& c = particleFlow->at(i);
2491  if (c.particleId() == 1) { //charged hadrons
2492  //endcap minus
2493  if (c.eta() > (-3.0) && c.eta() < (-1.392)) {
2494  px_chargedHadronsEndcapMinus -= c.px();
2495  py_chargedHadronsEndcapMinus -= c.py();
2496  pt_sum_CHF_Endcap_minus += c.et();
2497  } else if (c.eta() >= (-1.392) && c.eta() <= 1.392) { //barrel
2498  px_chargedHadronsBarrel -= c.px();
2499  py_chargedHadronsBarrel -= c.py();
2500  pt_sum_CHF_Barrel += c.et();
2501  } else if (c.eta() > 1.392 && c.eta() < 3.0) { //endcap plus
2502  px_chargedHadronsEndcapPlus -= c.px();
2503  py_chargedHadronsEndcapPlus -= c.py();
2504  pt_sum_CHF_Endcap_plus += c.et();
2505  }
2506  }
2507  if (c.particleId() == 5) { //neutral hadrons
2508  //endcap minus
2509  if (c.eta() > (-3.0) && c.eta() < (-1.392)) {
2510  px_neutralHadronsEndcapMinus -= c.px();
2511  py_neutralHadronsEndcapMinus -= c.py();
2512  pt_sum_NHF_Endcap_minus += c.et();
2513  } else if (c.eta() >= (-1.392) && c.eta() <= 1.392) {
2514  px_neutralHadronsBarrel -= c.px();
2515  py_neutralHadronsBarrel -= c.py();
2516  pt_sum_NHF_Barrel += c.et();
2517  } else if (c.eta() > 1.392 && c.eta() < 3.0) {
2518  px_neutralHadronsEndcapPlus -= c.px();
2519  py_neutralHadronsEndcapPlus -= c.py();
2520  pt_sum_NHF_Endcap_plus += c.et();
2521  }
2522  }
2523  if (c.particleId() == 4) { //photons
2524  //endcap minus
2525  if (c.eta() > (-3.0) && c.eta() < (-1.479)) {
2526  px_PhotonsEndcapMinus -= c.px();
2527  py_PhotonsEndcapMinus -= c.py();
2528  pt_sum_PhF_Endcap_minus += c.et();
2529  } else if (c.eta() >= (-1.479) && c.eta() <= 1.479) {
2530  px_PhotonsBarrel -= c.px();
2531  py_PhotonsBarrel -= c.py();
2532  pt_sum_PhF_Barrel += c.et();
2533  } else if (c.eta() > 1.479 && c.eta() < 3.0) {
2534  px_PhotonsEndcapPlus -= c.px();
2535  py_PhotonsEndcapPlus -= c.py();
2536  pt_sum_PhF_Endcap_plus += c.et();
2537  }
2538  }
2539  if (c.particleId() == 6) { //HFHadrons
2540  //forward minus
2541  if (c.eta() > (-5.20) && c.eta() < -2.901376) {
2542  pt_sum_HFH_minus += c.et();
2543  px_HFHadronsMinus -= c.px();
2544  py_HFHadronsMinus -= c.py();
2545  } else if (c.eta() > 2.901376 && c.eta() < 5.20) { //forward plus
2546  px_HFHadronsPlus -= c.px();
2547  py_HFHadronsPlus -= c.py();
2548  pt_sum_HFH_plus += c.et();
2549  }
2550  }
2551  if (c.particleId() == 7) { //HFEGammas
2552  //forward minus
2553  if (c.eta() > (-5.20) && c.eta() < -2.901376) {
2554  pt_sum_HFE_minus += c.et();
2555  px_HFEGammasMinus -= c.px();
2556  py_HFEGammasMinus -= c.py();
2557  } else if (c.eta() > 2.901376 && c.eta() < 5.20) { //forward plus
2558  px_HFEGammasPlus -= c.px();
2559  py_HFEGammasPlus -= c.py();
2560  pt_sum_HFE_plus += c.et();
2561  }
2562  }
2563  for (unsigned int j = 0; j < typePFCand_.size(); j++) {
2564  if (c.particleId() == typePFCand_[j]) {
2565  //second check for endcap, if inside barrel Max and Min symmetric around 0
2566  if (((c.eta() > etaMinPFCand_[j]) && (c.eta() < etaMaxPFCand_[j])) ||
2567  ((c.eta() > (-etaMaxPFCand_[j])) && (c.eta() < (-etaMinPFCand_[j])))) {
2568  countsPFCand_[j] += 1;
2569  MExPFCand_[j] -= c.px();
2570  MEyPFCand_[j] -= c.py();
2571  }
2572  }
2573  }
2574  }
2575 
2576  for (unsigned int j = 0; j < countsPFCand_.size(); j++) {
2577  profilePFCand_x_[j] = map_of_MEs[DirName + "/" + profilePFCand_x_name_[j]];
2578  if (profilePFCand_x_[j] && profilePFCand_x_[j]->getRootObject())
2580  profilePFCand_y_[j] = map_of_MEs[DirName + "/" + profilePFCand_y_name_[j]];
2581  if (profilePFCand_y_[j] && profilePFCand_y_[j]->getRootObject())
2583  }
2584  meCHF_Barrel = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionBarrel"];
2586  meCHF_Barrel->Fill(pt_sum_CHF_Barrel / pfmet->sumEt());
2587  meCHF_EndcapPlus = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionEndcapPlus"];
2589  meCHF_EndcapPlus->Fill(pt_sum_CHF_Endcap_plus / pfmet->sumEt());
2590  meCHF_EndcapMinus = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionEndcapMinus"];
2592  meCHF_EndcapMinus->Fill(pt_sum_CHF_Endcap_minus / pfmet->sumEt());
2593  meNHF_Barrel = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionBarrel"];
2595  meNHF_Barrel->Fill(pt_sum_NHF_Barrel / pfmet->sumEt());
2596  meNHF_EndcapPlus = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionEndcapPlus"];
2598  meNHF_EndcapPlus->Fill(pt_sum_NHF_Endcap_plus / pfmet->sumEt());
2599  meNHF_EndcapMinus = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionEndcapMinus"];
2601  meNHF_EndcapMinus->Fill(pt_sum_NHF_Endcap_minus / pfmet->sumEt());
2602  mePhF_Barrel = map_of_MEs[DirName + "/" + "PfPhotonEtFractionBarrel"];
2604  mePhF_Barrel->Fill(pt_sum_PhF_Barrel / pfmet->sumEt());
2605  mePhF_EndcapPlus = map_of_MEs[DirName + "/" + "PfPhotonEtFractionEndcapPlus"];
2607  mePhF_EndcapPlus->Fill(pt_sum_PhF_Endcap_plus / pfmet->sumEt());
2608  mePhF_EndcapMinus = map_of_MEs[DirName + "/" + "PfPhotonEtFractionEndcapMinus"];
2610  mePhF_EndcapMinus->Fill(pt_sum_PhF_Endcap_minus / pfmet->sumEt());
2611  meHFHadF_Plus = map_of_MEs[DirName + "/" + "PfHFHadronEtFractionPlus"];
2613  meHFHadF_Plus->Fill(pt_sum_HFH_plus / pfmet->sumEt());
2614  meHFHadF_Minus = map_of_MEs[DirName + "/" + "PfHFHadronEtFractionMinus"];
2616  meHFHadF_Minus->Fill(pt_sum_HFH_minus / pfmet->sumEt());
2617  meHFEMF_Plus = map_of_MEs[DirName + "/" + "PfHFEMEtFractionPlus"];
2619  meHFEMF_Plus->Fill(pt_sum_HFE_plus / pfmet->sumEt());
2620  meHFEMF_Minus = map_of_MEs[DirName + "/" + "PfHFEMEtFractionMinus"];
2622  meHFEMF_Minus->Fill(pt_sum_HFE_minus / pfmet->sumEt());
2623  //sanity check if we have any type of the respective species in the events
2624  //else don't fill phi, as else we have a results of a biased peak at 0
2625  //if pt_sum of species part is 0, obviously that would be the case
2626  if (pt_sum_CHF_Barrel) {
2627  meMETPhiChargedHadronsBarrel = map_of_MEs[DirName + "/" + "METPhiChargedHadronsBarrel"];
2629  meMETPhiChargedHadronsBarrel->Fill(atan2(py_chargedHadronsBarrel, px_chargedHadronsBarrel));
2630  }
2631  if (pt_sum_CHF_Endcap_plus) {
2632  meMETPhiChargedHadronsEndcapPlus = map_of_MEs[DirName + "/" + "METPhiChargedHadronsEndcapPlus"];
2634  meMETPhiChargedHadronsEndcapPlus->Fill(atan2(py_chargedHadronsEndcapPlus, px_chargedHadronsEndcapPlus));
2635  }
2636  if (pt_sum_CHF_Endcap_minus) {
2637  meMETPhiChargedHadronsEndcapMinus = map_of_MEs[DirName + "/" + "METPhiChargedHadronsEndcapMinus"];
2639  meMETPhiChargedHadronsEndcapMinus->Fill(atan2(py_chargedHadronsEndcapMinus, px_chargedHadronsEndcapMinus));
2640  }
2641  if (pt_sum_NHF_Barrel) {
2642  meMETPhiNeutralHadronsBarrel = map_of_MEs[DirName + "/" + "METPhiNeutralHadronsBarrel"];
2644  meMETPhiNeutralHadronsBarrel->Fill(atan2(py_neutralHadronsBarrel, px_neutralHadronsBarrel));
2645  }
2646  if (pt_sum_NHF_Endcap_plus) {
2647  meMETPhiNeutralHadronsEndcapPlus = map_of_MEs[DirName + "/" + "METPhiNeutralHadronsEndcapPlus"];
2649  meMETPhiNeutralHadronsEndcapPlus->Fill(atan2(py_neutralHadronsEndcapPlus, px_neutralHadronsEndcapPlus));
2650  }
2651  if (pt_sum_NHF_Endcap_minus) {
2652  meMETPhiNeutralHadronsEndcapMinus = map_of_MEs[DirName + "/" + "METPhiNeutralHadronsEndcapMinus"];
2654  meMETPhiNeutralHadronsEndcapMinus->Fill(atan2(py_neutralHadronsEndcapMinus, px_neutralHadronsEndcapMinus));
2655  }
2656  if (pt_sum_PhF_Barrel) {
2657  meMETPhiPhotonsBarrel = map_of_MEs[DirName + "/" + "METPhiPhotonsBarrel"];
2659  meMETPhiPhotonsBarrel->Fill(atan2(py_PhotonsBarrel, px_PhotonsBarrel));
2660  }
2661  if (pt_sum_PhF_Endcap_plus) {
2662  meMETPhiPhotonsEndcapPlus = map_of_MEs[DirName + "/" + "METPhiPhotonsEndcapPlus"];
2664  meMETPhiPhotonsEndcapPlus->Fill(atan2(py_PhotonsEndcapPlus, px_PhotonsEndcapPlus));
2665  }
2666  if (pt_sum_PhF_Endcap_minus) {
2667  meMETPhiPhotonsEndcapMinus = map_of_MEs[DirName + "/" + "METPhiPhotonsEndcapMinus"];
2669  meMETPhiPhotonsEndcapMinus->Fill(atan2(py_PhotonsEndcapMinus, px_PhotonsEndcapMinus));
2670  }
2671  if (pt_sum_HFH_plus) {
2672  meMETPhiHFHadronsPlus = map_of_MEs[DirName + "/" + "METPhiHFHadronsPlus"];
2674  meMETPhiHFHadronsPlus->Fill(atan2(py_HFHadronsPlus, px_HFHadronsPlus));
2675  }
2676  if (pt_sum_HFH_minus) {
2677  meMETPhiHFHadronsMinus = map_of_MEs[DirName + "/" + "METPhiHFHadronsMinus"];
2679  meMETPhiHFHadronsMinus->Fill(atan2(py_HFHadronsMinus, px_HFHadronsMinus));
2680  }
2681  if (pt_sum_HFE_plus) {
2682  meMETPhiHFEGammasPlus = map_of_MEs[DirName + "/" + "METPhiHFEGammasPlus"];
2684  meMETPhiHFEGammasPlus->Fill(atan2(py_HFEGammasPlus, px_HFEGammasPlus));
2685  }
2686  if (pt_sum_HFE_minus) {
2687  meMETPhiHFEGammasMinus = map_of_MEs[DirName + "/" + "METPhiHFEGammasMinus"];
2689  meMETPhiHFEGammasMinus->Fill(atan2(py_HFEGammasMinus, px_HFEGammasMinus));
2690  }
2691  //fill other diagnostic plots based on trigger decision
2692  /*if(techTriggerCase[0]){//techTriggerResultBx0 && techTriggerResultBxM2 && techTriggerResultBxM1 -> both previous bunches filled
2693  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());
2694  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());
2695  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());
2696  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());
2697  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());
2698  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());
2699  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());
2700  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());
2701  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());
2702  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());
2703  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());
2704  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());
2705  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());
2706  mePhotonEtFraction_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"PfPhotonEtFraction_BXm2BXm1Filled"]; if ( mePhotonEtFraction_BXm2BXm1Filled && mePhotonEtFraction_BXm2BXm1Filled ->getRootObject()) mePhotonEtFraction_BXm2BXm1Filled ->Fill(pfmet->photonEtFraction());
2707  meNeutralHadronEtFraction_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"PfNeutralHadronEtFraction_BXm2BXm1Filled"]; if ( meNeutralHadronEtFraction_BXm2BXm1Filled && meNeutralHadronEtFraction_BXm2BXm1Filled ->getRootObject()) meNeutralHadronEtFraction_BXm2BXm1Filled ->Fill(pfmet->neutralHadronEtFraction());
2708  meChargedHadronEtFraction_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"PfChargedHadronEtFraction_BXm2BXm1Filled"]; if ( meChargedHadronEtFraction_BXm2BXm1Filled && meChargedHadronEtFraction_BXm2BXm1Filled ->getRootObject()) meChargedHadronEtFraction_BXm2BXm1Filled ->Fill(pfmet->chargedHadronEtFraction());
2709  meMET_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"MET_BXm2BXm1Filled"]; if ( meMET_BXm2BXm1Filled && meMET_BXm2BXm1Filled ->getRootObject()) meMET_BXm2BXm1Filled ->Fill(pfmet->pt());
2710  meSumET_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"SumET_BXm2BXm1Filled"]; if ( meSumET_BXm2BXm1Filled && meSumET_BXm2BXm1Filled ->getRootObject()) meSumET_BXm2BXm1Filled ->Fill(pfmet->sumEt());
2711  if(pt_sum_CHF_Barrel){
2712  meMETPhiChargedHadronsBarrel_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiChargedHadronsBarrel_BXm2BXm1Filled"];if(meMETPhiChargedHadronsBarrel_BXm2BXm1Filled && meMETPhiChargedHadronsBarrel_BXm2BXm1Filled ->getRootObject())meMETPhiChargedHadronsBarrel_BXm2BXm1Filled->Fill(atan2(py_chargedHadronsBarrel,px_chargedHadronsBarrel));
2713  }
2714  if(pt_sum_CHF_Endcap_plus){
2715  meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiChargedHadronsEndcapPlus_BXm2BXm1Filled"];if(meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Filled && meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Filled ->getRootObject())meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Filled->Fill(atan2(py_chargedHadronsEndcapPlus,px_chargedHadronsEndcapPlus));
2716  }
2717  if(pt_sum_CHF_Endcap_minus){
2718  meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiChargedHadronsEndcapMinus_BXm2BXm1Filled"];if(meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Filled && meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Filled ->getRootObject())meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Filled->Fill(atan2(py_chargedHadronsEndcapMinus,px_chargedHadronsEndcapMinus));
2719  }
2720  if(pt_sum_NHF_Barrel){
2721  meMETPhiNeutralHadronsBarrel_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiNeutralHadronsBarrel_BXm2BXm1Filled"];if(meMETPhiNeutralHadronsBarrel_BXm2BXm1Filled && meMETPhiNeutralHadronsBarrel_BXm2BXm1Filled ->getRootObject())meMETPhiNeutralHadronsBarrel_BXm2BXm1Filled->Fill(atan2(py_neutralHadronsBarrel,px_neutralHadronsBarrel));
2722  }
2723  if(pt_sum_NHF_Endcap_plus){
2724  meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiNeutralHadronsEndcapPlus_BXm2BXm1Filled"];if(meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Filled && meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Filled ->getRootObject())meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Filled->Fill(atan2(py_neutralHadronsEndcapPlus,px_neutralHadronsEndcapPlus));
2725  }
2726  if(pt_sum_NHF_Endcap_minus){
2727  meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiNeutralHadronsEndcapMinus_BXm2BXm1Filled"];if(meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Filled && meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Filled ->getRootObject())meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Filled->Fill(atan2(py_neutralHadronsEndcapMinus,px_neutralHadronsEndcapMinus));
2728  }
2729  if(pt_sum_PhF_Barrel){
2730  meMETPhiPhotonsBarrel_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiPhotonsBarrel_BXm2BXm1Filled"];if(meMETPhiPhotonsBarrel_BXm2BXm1Filled && meMETPhiPhotonsBarrel_BXm2BXm1Filled ->getRootObject())meMETPhiPhotonsBarrel_BXm2BXm1Filled->Fill(atan2(py_PhotonsBarrel,px_PhotonsBarrel));
2731  }
2732  if(pt_sum_PhF_Endcap_plus){
2733  meMETPhiPhotonsEndcapPlus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiPhotonsEndcapPlus_BXm2BXm1Filled"];if(meMETPhiPhotonsEndcapPlus_BXm2BXm1Filled && meMETPhiPhotonsEndcapPlus_BXm2BXm1Filled ->getRootObject())meMETPhiPhotonsEndcapPlus_BXm2BXm1Filled->Fill(atan2(py_PhotonsEndcapPlus,px_PhotonsEndcapPlus));
2734  }
2735  if(pt_sum_PhF_Endcap_minus){
2736  meMETPhiPhotonsEndcapMinus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiPhotonsEndcapMinus_BXm2BXm1Filled"];if(meMETPhiPhotonsEndcapMinus_BXm2BXm1Filled && meMETPhiPhotonsEndcapMinus_BXm2BXm1Filled ->getRootObject())meMETPhiPhotonsEndcapMinus_BXm2BXm1Filled->Fill(atan2(py_PhotonsEndcapMinus,px_PhotonsEndcapMinus));
2737  }
2738  if(pt_sum_HFH_plus){
2739  meMETPhiHFHadronsPlus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiHFHadronsPlus_BXm2BXm1Filled"];if(meMETPhiHFHadronsPlus_BXm2BXm1Filled && meMETPhiHFHadronsPlus_BXm2BXm1Filled ->getRootObject())meMETPhiHFHadronsPlus_BXm2BXm1Filled->Fill(atan2(py_HFHadronsPlus,px_HFHadronsPlus));
2740  }
2741  if(pt_sum_HFH_minus){
2742  meMETPhiHFHadronsMinus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiHFHadronsMinus_BXm2BXm1Filled"];if(meMETPhiHFHadronsMinus_BXm2BXm1Filled && meMETPhiHFHadronsMinus_BXm2BXm1Filled ->getRootObject())meMETPhiHFHadronsMinus_BXm2BXm1Filled->Fill(atan2(py_HFHadronsMinus,px_HFHadronsMinus));
2743  }
2744  if(pt_sum_HFE_plus){
2745  meMETPhiHFEGammasPlus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiHFEGammasPlus_BXm2BXm1Filled"];if(meMETPhiHFEGammasPlus_BXm2BXm1Filled && meMETPhiHFEGammasPlus_BXm2BXm1Filled ->getRootObject())meMETPhiHFEGammasPlus_BXm2BXm1Filled->Fill(atan2(py_HFEGammasPlus,px_HFEGammasPlus));
2746  }
2747  if(pt_sum_HFE_minus){
2748  meMETPhiHFEGammasMinus_BXm2BXm1Filled = map_of_MEs[DirName+"/"+"METPhiHFEGammasMinus_BXm2BXm1Filled"];if(meMETPhiHFEGammasMinus_BXm2BXm1Filled && meMETPhiHFEGammasMinus_BXm2BXm1Filled ->getRootObject())meMETPhiHFEGammasMinus_BXm2BXm1Filled->Fill(atan2(py_HFEGammasMinus,px_HFEGammasMinus));
2749  }
2750  }*/
2751  if (techTriggerCase[1]) { //techTriggerResultBx0 && techTriggerResultBxM1 -> previous bunch filled
2752  meCHF_Barrel_BXm1Filled = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionBarrel_BXm1Filled"];
2754  meCHF_Barrel_BXm1Filled->Fill(pt_sum_CHF_Barrel / pfmet->sumEt());
2755  meCHF_EndcapPlus_BXm1Filled = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionEndcapPlus_BXm1Filled"];
2757  meCHF_EndcapPlus_BXm1Filled->Fill(pt_sum_CHF_Endcap_plus / pfmet->sumEt());
2758  meCHF_EndcapMinus_BXm1Filled = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionEndcapMinus_BXm1Filled"];
2760  meCHF_EndcapMinus_BXm1Filled->Fill(pt_sum_CHF_Endcap_minus / pfmet->sumEt());
2761  meNHF_Barrel_BXm1Filled = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionBarrel_BXm1Filled"];
2763  meNHF_Barrel_BXm1Filled->Fill(pt_sum_NHF_Barrel / pfmet->sumEt());
2764  meNHF_EndcapPlus_BXm1Filled = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionEndcapPlus_BXm1Filled"];
2766  meNHF_EndcapPlus_BXm1Filled->Fill(pt_sum_NHF_Endcap_plus / pfmet->sumEt());
2767  meNHF_EndcapMinus_BXm1Filled = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionEndcapMinus_BXm1Filled"];
2769  meNHF_EndcapMinus_BXm1Filled->Fill(pt_sum_NHF_Endcap_minus / pfmet->sumEt());
2770  mePhF_Barrel_BXm1Filled = map_of_MEs[DirName + "/" + "PfPhotonEtFractionBarrel_BXm1Filled"];
2772  mePhF_Barrel_BXm1Filled->Fill(pt_sum_PhF_Barrel / pfmet->sumEt());
2773  mePhF_EndcapPlus_BXm1Filled = map_of_MEs[DirName + "/" + "PfPhotonEtFractionEndcapPlus_BXm1Filled"];
2775  mePhF_EndcapPlus_BXm1Filled->Fill(pt_sum_PhF_Endcap_plus / pfmet->sumEt());
2776  mePhF_EndcapMinus_BXm1Filled = map_of_MEs[DirName + "/" + "PfPhotonEtFractionEndcapMinus_BXm1Filled"];
2778  mePhF_EndcapMinus_BXm1Filled->Fill(pt_sum_PhF_Endcap_minus / pfmet->sumEt());
2779  meHFHadF_Plus_BXm1Filled = map_of_MEs[DirName + "/" + "PfHFHadronEtFractionPlus_BXm1Filled"];
2781  meHFHadF_Plus_BXm1Filled->Fill(pt_sum_HFH_plus / pfmet->sumEt());
2782  meHFHadF_Minus_BXm1Filled = map_of_MEs[DirName + "/" + "PfHFHadronEtFractionMinus_BXm1Filled"];
2784  meHFHadF_Minus_BXm1Filled->Fill(pt_sum_HFH_minus / pfmet->sumEt());
2785  meHFEMF_Plus_BXm1Filled = map_of_MEs[DirName + "/" + "PfHFEMEtFractionPlus_BXm1Filled"];
2787  meHFEMF_Plus_BXm1Filled->Fill(pt_sum_HFE_plus / pfmet->sumEt());
2788  meHFEMF_Minus_BXm1Filled = map_of_MEs[DirName + "/" + "PfHFEMEtFractionMinus_BXm1Filled"];
2790  meHFEMF_Minus_BXm1Filled->Fill(pt_sum_HFE_minus / pfmet->sumEt());
2791  mePhotonEtFraction_BXm1Filled = map_of_MEs[DirName + "/" + "PfPhotonEtFraction_BXm1Filled"];
2793  mePhotonEtFraction_BXm1Filled->Fill(pfmet->photonEtFraction());
2794  meNeutralHadronEtFraction_BXm1Filled = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFraction_BXm1Filled"];
2796  meNeutralHadronEtFraction_BXm1Filled->Fill(pfmet->neutralHadronEtFraction());
2797  meChargedHadronEtFraction_BXm1Filled = map_of_MEs[DirName + "/" + "PfChargedHadronEtFraction_BXm1Filled"];
2799  meChargedHadronEtFraction_BXm1Filled->Fill(pfmet->chargedHadronEtFraction());
2800  meMET_BXm1Filled = map_of_MEs[DirName + "/" + "MET_BXm1Filled"];
2802  meMET_BXm1Filled->Fill(pfmet->pt());
2803  meSumET_BXm1Filled = map_of_MEs[DirName + "/" + "SumET_BXm1Filled"];
2805  meSumET_BXm1Filled->Fill(pfmet->sumEt());
2806  if (pt_sum_CHF_Barrel) {
2808  map_of_MEs[DirName + "/" + "METPhiChargedHadronsBarrel_BXm1Filled"];
2810  meMETPhiChargedHadronsBarrel_BXm1Filled->Fill(atan2(py_chargedHadronsBarrel, px_chargedHadronsBarrel));
2811  }
2812  if (pt_sum_CHF_Endcap_plus) {
2814  map_of_MEs[DirName + "/" + "METPhiChargedHadronsEndcapPlus_BXm1Filled"];
2818  atan2(py_chargedHadronsEndcapPlus, px_chargedHadronsEndcapPlus));
2819  }
2820  if (pt_sum_CHF_Endcap_minus) {
2822  map_of_MEs[DirName + "/" + "METPhiChargedHadronsEndcapMinus_BXm1Filled"];
2826  atan2(py_chargedHadronsEndcapMinus, px_chargedHadronsEndcapMinus));
2827  }
2828  if (pt_sum_NHF_Barrel) {
2830  map_of_MEs[DirName + "/" + "METPhiNeutralHadronsBarrel_BXm1Filled"];
2832  meMETPhiNeutralHadronsBarrel_BXm1Filled->Fill(atan2(py_neutralHadronsBarrel, px_neutralHadronsBarrel));
2833  }
2834  if (pt_sum_NHF_Endcap_plus) {
2836  map_of_MEs[DirName + "/" + "METPhiNeutralHadronsEndcapPlus_BXm1Filled"];
2840  atan2(py_neutralHadronsEndcapPlus, px_neutralHadronsEndcapPlus));
2841  }
2842  if (pt_sum_NHF_Endcap_minus) {
2844  map_of_MEs[DirName + "/" + "METPhiNeutralHadronsEndcapMinus_BXm1Filled"];
2848  atan2(py_neutralHadronsEndcapMinus, px_neutralHadronsEndcapMinus));
2849  }
2850  if (pt_sum_PhF_Barrel) {
2851  meMETPhiPhotonsBarrel_BXm1Filled = map_of_MEs[DirName + "/" + "METPhiPhotonsBarrel_BXm1Filled"];
2853  meMETPhiPhotonsBarrel_BXm1Filled->Fill(atan2(py_PhotonsBarrel, px_PhotonsBarrel));
2854  }
2855  if (pt_sum_PhF_Endcap_plus) {
2856  meMETPhiPhotonsEndcapPlus_BXm1Filled = map_of_MEs[DirName + "/" + "METPhiPhotonsEndcapPlus_BXm1Filled"];
2858  meMETPhiPhotonsEndcapPlus_BXm1Filled->Fill(atan2(py_PhotonsEndcapPlus, px_PhotonsEndcapPlus));
2859  }
2860  if (pt_sum_PhF_Endcap_minus) {
2861  meMETPhiPhotonsEndcapMinus_BXm1Filled = map_of_MEs[DirName + "/" + "METPhiPhotonsEndcapMinus_BXm1Filled"];
2863  meMETPhiPhotonsEndcapMinus_BXm1Filled->Fill(atan2(py_PhotonsEndcapMinus, px_PhotonsEndcapMinus));
2864  }
2865  if (pt_sum_HFH_plus) {
2866  meMETPhiHFHadronsPlus_BXm1Filled = map_of_MEs[DirName + "/" + "METPhiHFHadronsPlus_BXm1Filled"];
2868  meMETPhiHFHadronsPlus_BXm1Filled->Fill(atan2(py_HFHadronsPlus, px_HFHadronsPlus));
2869  }
2870  if (pt_sum_HFH_minus) {
2871  meMETPhiHFHadronsMinus_BXm1Filled = map_of_MEs[DirName + "/" + "METPhiHFHadronsMinus_BXm1Filled"];
2873  meMETPhiHFHadronsMinus_BXm1Filled->Fill(atan2(py_HFHadronsMinus, px_HFHadronsMinus));
2874  }
2875  if (pt_sum_HFE_plus) {
2876  meMETPhiHFEGammasPlus_BXm1Filled = map_of_MEs[DirName + "/" + "METPhiHFEGammasPlus_BXm1Filled"];
2878  meMETPhiHFEGammasPlus_BXm1Filled->Fill(atan2(py_HFEGammasPlus, px_HFEGammasPlus));
2879  }
2880  if (pt_sum_HFE_minus) {
2881  meMETPhiHFEGammasMinus_BXm1Filled = map_of_MEs[DirName + "/" + "METPhiHFEGammasMinus_BXm1Filled"];
2883  meMETPhiHFEGammasMinus_BXm1Filled->Fill(atan2(py_HFEGammasMinus, px_HFEGammasMinus));
2884  }
2885  }
2886  /*if(techTriggerCase[3]){//techTriggerResultBx0 && !techTriggerResultBxM2 && !techTriggerResultBxM1 ->previous two bunches empty
2887  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());
2888  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());
2889  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());
2890  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());
2891  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());
2892  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());
2893  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());
2894  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());
2895  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());
2896  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());
2897  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());
2898  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());
2899  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());
2900  mePhotonEtFraction_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"PfPhotonEtFraction_BXm2BXm1Empty"]; if ( mePhotonEtFraction_BXm2BXm1Empty && mePhotonEtFraction_BXm2BXm1Empty ->getRootObject()) mePhotonEtFraction_BXm2BXm1Empty ->Fill(pfmet->photonEtFraction());
2901  meNeutralHadronEtFraction_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"PfNeutralHadronEtFraction_BXm2BXm1Empty"]; if ( meNeutralHadronEtFraction_BXm2BXm1Empty && meNeutralHadronEtFraction_BXm2BXm1Empty ->getRootObject()) meNeutralHadronEtFraction_BXm2BXm1Empty ->Fill(pfmet->neutralHadronEtFraction());
2902  meChargedHadronEtFraction_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"PfChargedHadronEtFraction_BXm2BXm1Empty"]; if ( meChargedHadronEtFraction_BXm2BXm1Empty && meChargedHadronEtFraction_BXm2BXm1Empty ->getRootObject()) meChargedHadronEtFraction_BXm2BXm1Empty ->Fill(pfmet->chargedHadronEtFraction());
2903  meMET_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"MET_BXm2BXm1Empty"]; if ( meMET_BXm2BXm1Empty && meMET_BXm2BXm1Empty ->getRootObject()) meMET_BXm2BXm1Empty ->Fill(pfmet->pt());
2904  meSumET_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"SumET_BXm2BXm1Empty"]; if ( meSumET_BXm2BXm1Empty && meSumET_BXm2BXm1Empty ->getRootObject()) meSumET_BXm2BXm1Empty ->Fill(pfmet->sumEt());
2905  if(pt_sum_CHF_Barrel){
2906  meMETPhiChargedHadronsBarrel_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiChargedHadronsBarrel_BXm2BXm1Empty"];if(meMETPhiChargedHadronsBarrel_BXm2BXm1Empty && meMETPhiChargedHadronsBarrel_BXm2BXm1Empty ->getRootObject())meMETPhiChargedHadronsBarrel_BXm2BXm1Empty->Fill(atan2(py_chargedHadronsBarrel,px_chargedHadronsBarrel));
2907  }
2908  if(pt_sum_CHF_Endcap_plus){
2909  meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiChargedHadronsEndcapPlus_BXm2BXm1Empty"];if(meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Empty && meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Empty ->getRootObject())meMETPhiChargedHadronsEndcapPlus_BXm2BXm1Empty->Fill(atan2(py_chargedHadronsEndcapPlus,px_chargedHadronsEndcapPlus));
2910  }
2911  if(pt_sum_CHF_Endcap_minus){
2912  meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiChargedHadronsEndcapMinus_BXm2BXm1Empty"];if(meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Empty && meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Empty ->getRootObject())meMETPhiChargedHadronsEndcapMinus_BXm2BXm1Empty->Fill(atan2(py_chargedHadronsEndcapMinus,px_chargedHadronsEndcapMinus));
2913  }
2914  if(pt_sum_NHF_Barrel){
2915  meMETPhiNeutralHadronsBarrel_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiNeutralHadronsBarrel_BXm2BXm1Empty"];if(meMETPhiNeutralHadronsBarrel_BXm2BXm1Empty && meMETPhiNeutralHadronsBarrel_BXm2BXm1Empty ->getRootObject())meMETPhiNeutralHadronsBarrel_BXm2BXm1Empty->Fill(atan2(py_neutralHadronsBarrel,px_neutralHadronsBarrel));
2916  }
2917  if(pt_sum_NHF_Endcap_plus){
2918  meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiNeutralHadronsEndcapPlus_BXm2BXm1Empty"];if(meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Empty && meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Empty ->getRootObject())meMETPhiNeutralHadronsEndcapPlus_BXm2BXm1Empty->Fill(atan2(py_neutralHadronsEndcapPlus,px_neutralHadronsEndcapPlus));
2919  }
2920  if(pt_sum_NHF_Endcap_minus){
2921  meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiNeutralHadronsEndcapMinus_BXm2BXm1Empty"];if(meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Empty && meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Empty ->getRootObject())meMETPhiNeutralHadronsEndcapMinus_BXm2BXm1Empty->Fill(atan2(py_neutralHadronsEndcapMinus,px_neutralHadronsEndcapMinus));
2922  }
2923  if(pt_sum_PhF_Barrel){
2924  meMETPhiPhotonsBarrel_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiPhotonsBarrel_BXm2BXm1Empty"];if(meMETPhiPhotonsBarrel_BXm2BXm1Empty && meMETPhiPhotonsBarrel_BXm2BXm1Empty ->getRootObject())meMETPhiPhotonsBarrel_BXm2BXm1Empty->Fill(atan2(py_PhotonsBarrel,px_PhotonsBarrel));
2925  }
2926  if(pt_sum_PhF_Endcap_plus){
2927  meMETPhiPhotonsEndcapPlus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiPhotonsEndcapPlus_BXm2BXm1Empty"];if(meMETPhiPhotonsEndcapPlus_BXm2BXm1Empty && meMETPhiPhotonsEndcapPlus_BXm2BXm1Empty ->getRootObject())meMETPhiPhotonsEndcapPlus_BXm2BXm1Empty->Fill(atan2(py_PhotonsEndcapPlus,px_PhotonsEndcapPlus));
2928  }
2929  if(pt_sum_PhF_Endcap_minus){
2930  meMETPhiPhotonsEndcapMinus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiPhotonsEndcapMinus_BXm2BXm1Empty"];if(meMETPhiPhotonsEndcapMinus_BXm2BXm1Empty && meMETPhiPhotonsEndcapMinus_BXm2BXm1Empty ->getRootObject())meMETPhiPhotonsEndcapMinus_BXm2BXm1Empty->Fill(atan2(py_PhotonsEndcapMinus,px_PhotonsEndcapMinus));
2931  }
2932  if(pt_sum_HFH_plus){
2933  meMETPhiHFHadronsPlus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiHFHadronsPlus_BXm2BXm1Empty"];if(meMETPhiHFHadronsPlus_BXm2BXm1Empty && meMETPhiHFHadronsPlus_BXm2BXm1Empty ->getRootObject())meMETPhiHFHadronsPlus_BXm2BXm1Empty->Fill(atan2(py_HFHadronsPlus,px_HFHadronsPlus));
2934  }
2935  if(pt_sum_HFH_minus){
2936  meMETPhiHFHadronsMinus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiHFHadronsMinus_BXm2BXm1Empty"];if(meMETPhiHFHadronsMinus_BXm2BXm1Empty && meMETPhiHFHadronsMinus_BXm2BXm1Empty ->getRootObject())meMETPhiHFHadronsMinus_BXm2BXm1Empty->Fill(atan2(py_HFHadronsMinus,px_HFHadronsMinus));
2937  }
2938  if(pt_sum_HFE_plus){
2939  meMETPhiHFEGammasPlus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiHFEGammasPlus_BXm2BXm1Empty"];if(meMETPhiHFEGammasPlus_BXm2BXm1Empty && meMETPhiHFEGammasPlus_BXm2BXm1Empty ->getRootObject())meMETPhiHFEGammasPlus_BXm2BXm1Empty->Fill(atan2(py_HFEGammasPlus,px_HFEGammasPlus));
2940  }
2941  if(pt_sum_HFE_minus){
2942  meMETPhiHFEGammasMinus_BXm2BXm1Empty = map_of_MEs[DirName+"/"+"METPhiHFEGammasMinus_BXm2BXm1Empty"];if(meMETPhiHFEGammasMinus_BXm2BXm1Empty && meMETPhiHFEGammasMinus_BXm2BXm1Empty ->getRootObject())meMETPhiHFEGammasMinus_BXm2BXm1Empty->Fill(atan2(py_HFEGammasMinus,px_HFEGammasMinus));
2943  }
2944  }*/
2945  if (techTriggerCase[2]) { //techTriggerResultBx0 && !techTriggerResultBxM1 --> previous bunch empty
2946  meCHF_Barrel_BXm1Empty = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionBarrel_BXm1Empty"];
2948  meCHF_Barrel_BXm1Empty->Fill(pt_sum_CHF_Barrel / pfmet->sumEt());
2949  meCHF_EndcapPlus_BXm1Empty = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionEndcapPlus_BXm1Empty"];
2951  meCHF_EndcapPlus_BXm1Empty->Fill(pt_sum_CHF_Endcap_plus / pfmet->sumEt());
2952  meCHF_EndcapMinus_BXm1Empty = map_of_MEs[DirName + "/" + "PfChargedHadronEtFractionEndcapMinus_BXm1Empty"];
2954  meCHF_EndcapMinus_BXm1Empty->Fill(pt_sum_CHF_Endcap_minus / pfmet->sumEt());
2955  meNHF_Barrel_BXm1Empty = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionBarrel_BXm1Empty"];
2957  meNHF_Barrel_BXm1Empty->Fill(pt_sum_NHF_Barrel / pfmet->sumEt());
2958  meNHF_EndcapPlus_BXm1Empty = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionEndcapPlus_BXm1Empty"];
2960  meNHF_EndcapPlus_BXm1Empty->Fill(pt_sum_NHF_Endcap_plus / pfmet->sumEt());
2961  meNHF_EndcapMinus_BXm1Empty = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFractionEndcapMinus_BXm1Empty"];
2963  meNHF_EndcapMinus_BXm1Empty->Fill(pt_sum_NHF_Endcap_minus / pfmet->sumEt());
2964  mePhF_Barrel_BXm1Empty = map_of_MEs[DirName + "/" + "PfPhotonEtFractionBarrel_BXm1Empty"];
2966  mePhF_Barrel_BXm1Empty->Fill(pt_sum_PhF_Barrel / pfmet->sumEt());
2967  mePhF_EndcapPlus_BXm1Empty = map_of_MEs[DirName + "/" + "PfPhotonEtFractionEndcapPlus_BXm1Empty"];
2969  mePhF_EndcapPlus_BXm1Empty->Fill(pt_sum_PhF_Endcap_plus / pfmet->sumEt());
2970  mePhF_EndcapMinus_BXm1Empty = map_of_MEs[DirName + "/" + "PfPhotonEtFractionEndcapMinus_BXm1Empty"];
2972  mePhF_EndcapMinus_BXm1Empty->Fill(pt_sum_PhF_Endcap_minus / pfmet->sumEt());
2973  meHFHadF_Plus_BXm1Empty = map_of_MEs[DirName + "/" + "PfHFHadronEtFractionPlus_BXm1Empty"];
2975  meHFHadF_Plus_BXm1Empty->Fill(pt_sum_HFH_plus / pfmet->sumEt());
2976  meHFHadF_Minus_BXm1Empty = map_of_MEs[DirName + "/" + "PfHFHadronEtFractionMinus_BXm1Empty"];
2978  meHFHadF_Minus_BXm1Empty->Fill(pt_sum_HFH_minus / pfmet->sumEt());
2979  meHFEMF_Plus_BXm1Empty = map_of_MEs[DirName + "/" + "PfHFEMEtFractionPlus_BXm1Empty"];
2981  meHFEMF_Plus_BXm1Empty->Fill(pt_sum_HFE_plus / pfmet->sumEt());
2982  meHFEMF_Minus_BXm1Empty = map_of_MEs[DirName + "/" + "PfHFEMEtFractionMinus_BXm1Empty"];
2984  meHFEMF_Minus_BXm1Empty->Fill(pt_sum_HFE_minus / pfmet->sumEt());
2985  mePhotonEtFraction_BXm1Empty = map_of_MEs[DirName + "/" + "PfPhotonEtFraction_BXm1Empty"];
2987  mePhotonEtFraction_BXm1Empty->Fill(pfmet->photonEtFraction());
2988  meNeutralHadronEtFraction_BXm1Empty = map_of_MEs[DirName + "/" + "PfNeutralHadronEtFraction_BXm1Empty"];
2990  meNeutralHadronEtFraction_BXm1Empty->Fill(pfmet->neutralHadronEtFraction());
2991  meChargedHadronEtFraction_BXm1Empty = map_of_MEs[DirName + "/" + "PfChargedHadronEtFraction_BXm1Empty"];
2993  meChargedHadronEtFraction_BXm1Empty->Fill(pfmet->chargedHadronEtFraction());
2994  meMET_BXm1Empty = map_of_MEs[DirName + "/" + "MET_BXm1Empty"];
2996  meMET_BXm1Empty->Fill(pfmet->pt());
2997  meSumET_BXm1Empty = map_of_MEs[DirName + "/" + "SumET_BXm1Empty"];
2999  meSumET_BXm1Empty->Fill(pfmet->sumEt());
3000  if (pt_sum_CHF_Barrel) {
3001  meMETPhiChargedHadronsBarrel_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiChargedHadronsBarrel_BXm1Empty"];
3003  meMETPhiChargedHadronsBarrel_BXm1Empty->Fill(atan2(py_chargedHadronsBarrel, px_chargedHadronsBarrel));
3004  }
3005  if (pt_sum_CHF_Endcap_plus) {
3007  map_of_MEs[DirName + "/" + "METPhiChargedHadronsEndcapPlus_BXm1Empty"];
3011  atan2(py_chargedHadronsEndcapPlus, px_chargedHadronsEndcapPlus));
3012  }
3013  if (pt_sum_CHF_Endcap_minus) {
3015  map_of_MEs[DirName + "/" + "METPhiChargedHadronsEndcapMinus_BXm1Empty"];
3019  atan2(py_chargedHadronsEndcapMinus, px_chargedHadronsEndcapMinus));
3020  }
3021  if (pt_sum_NHF_Barrel) {
3022  meMETPhiNeutralHadronsBarrel_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiNeutralHadronsBarrel_BXm1Empty"];
3024  meMETPhiNeutralHadronsBarrel_BXm1Empty->Fill(atan2(py_neutralHadronsBarrel, px_neutralHadronsBarrel));
3025  }
3026  if (pt_sum_NHF_Endcap_plus) {
3028  map_of_MEs[DirName + "/" + "METPhiNeutralHadronsEndcapPlus_BXm1Empty"];
3032  atan2(py_neutralHadronsEndcapPlus, px_neutralHadronsEndcapPlus));
3033  }
3034  if (pt_sum_NHF_Endcap_minus) {
3036  map_of_MEs[DirName + "/" + "METPhiNeutralHadronsEndcapMinus_BXm1Empty"];
3040  atan2(py_neutralHadronsEndcapMinus, px_neutralHadronsEndcapMinus));
3041  }
3042  if (pt_sum_PhF_Barrel) {
3043  meMETPhiPhotonsBarrel_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiPhotonsBarrel_BXm1Empty"];
3045  meMETPhiPhotonsBarrel_BXm1Empty->Fill(atan2(py_PhotonsBarrel, px_PhotonsBarrel));
3046  }
3047  if (pt_sum_PhF_Endcap_plus) {
3048  meMETPhiPhotonsEndcapPlus_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiPhotonsEndcapPlus_BXm1Empty"];
3050  meMETPhiPhotonsEndcapPlus_BXm1Empty->Fill(atan2(py_PhotonsEndcapPlus, px_PhotonsEndcapPlus));
3051  }
3052  if (pt_sum_PhF_Endcap_minus) {
3053  meMETPhiPhotonsEndcapMinus_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiPhotonsEndcapMinus_BXm1Empty"];
3055  meMETPhiPhotonsEndcapMinus_BXm1Empty->Fill(atan2(py_PhotonsEndcapMinus, px_PhotonsEndcapMinus));
3056  }
3057  if (pt_sum_HFH_plus) {
3058  meMETPhiHFHadronsPlus_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiHFHadronsPlus_BXm1Empty"];
3060  meMETPhiHFHadronsPlus_BXm1Empty->Fill(atan2(py_HFHadronsPlus, px_HFHadronsPlus));
3061  }
3062  if (pt_sum_HFH_minus) {
3063  meMETPhiHFHadronsMinus_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiHFHadronsMinus_BXm1Empty"];
3065  meMETPhiHFHadronsMinus_BXm1Empty->Fill(atan2(py_HFHadronsMinus, px_HFHadronsMinus));
3066  }
3067  if (pt_sum_HFE_plus) {
3068  meMETPhiHFEGammasPlus_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiHFEGammasPlus_BXm1Empty"];
3070  meMETPhiHFEGammasPlus_BXm1Empty->Fill(atan2(py_HFEGammasPlus, px_HFEGammasPlus));
3071  }
3072  if (pt_sum_HFE_minus) {
3073  meMETPhiHFEGammasMinus_BXm1Empty = map_of_MEs[DirName + "/" + "METPhiHFEGammasMinus_BXm1Empty"];
3075  meMETPhiHFEGammasMinus_BXm1Empty->Fill(atan2(py_HFEGammasMinus, px_HFEGammasMinus));
3076  }
3077  }
3078 
3079  } //fill candidate plots only then
3080 
3081  // PFMET getters
3082  //----------------------------------------------------------------------------
3083  double pfPhotonEtFraction = pfmet->photonEtFraction();
3084  double pfPhotonEt = pfmet->photonEt();
3085  double pfNeutralHadronEtFraction = pfmet->neutralHadronEtFraction();
3086  double pfNeutralHadronEt = pfmet->neutralHadronEt();
3087  double pfElectronEt = pfmet->electronEt();
3088  double pfChargedHadronEtFraction = pfmet->chargedHadronEtFraction();
3089  double pfChargedHadronEt = pfmet->chargedHadronEt();
3090  double pfMuonEt = pfmet->muonEt();
3091  double pfHFHadronEtFraction = pfmet->HFHadronEtFraction();
3092  double pfHFHadronEt = pfmet->HFHadronEt();
3093  double pfHFEMEtFraction = pfmet->HFEMEtFraction();
3094  double pfHFEMEt = pfmet->HFEMEt();
3095  mePhotonEtFraction = map_of_MEs[DirName + "/PfPhotonEtFraction"];
3096  mePhotonEt = map_of_MEs[DirName + "/PfPhotonEt"];
3097  meNeutralHadronEtFraction = map_of_MEs[DirName + "/PfNeutralHadronEtFraction"];
3098  meNeutralHadronEt = map_of_MEs[DirName + "/PfNeutralHadronEt"];
3099  meElectronEt = map_of_MEs[DirName + "/PfElectronEt"];
3100  meChargedHadronEtFraction = map_of_MEs[DirName + "/PfChargedHadronEtFraction"];
3101  meChargedHadronEt = map_of_MEs[DirName + "/PfChargedHadronEt"];
3102  meMuonEt = map_of_MEs[DirName + "/PfMuonEt"];
3103  meHFHadronEtFraction = map_of_MEs[DirName + "/PfHFHadronEtFraction"];
3104  meHFHadronEt = map_of_MEs[DirName + "/PfHFHadronEt"];
3105  meHFEMEtFraction = map_of_MEs[DirName + "/PfHFEMEtFraction"];
3106  meHFEMEt = map_of_MEs[DirName + "/PfHFEMEt"];
3107 
3109  mePhotonEtFraction->Fill(pfPhotonEtFraction);
3111  mePhotonEt->Fill(pfPhotonEt);
3113  meNeutralHadronEtFraction->Fill(pfNeutralHadronEtFraction);
3115  meNeutralHadronEt->Fill(pfNeutralHadronEt);
3117  meElectronEt->Fill(pfElectronEt);
3119  meChargedHadronEtFraction->Fill(pfChargedHadronEtFraction);
3121  meChargedHadronEt->Fill(pfChargedHadronEt);
3122  if (meMuonEt && meMuonEt->getRootObject())
3123  meMuonEt->Fill(pfMuonEt);
3125  meHFHadronEtFraction->Fill(pfHFHadronEtFraction);
3127  meHFHadronEt->Fill(pfHFHadronEt);
3129  meHFEMEtFraction->Fill(pfHFEMEtFraction);
3130  if (meHFEMEt && meHFEMEt->getRootObject())
3131  meHFEMEt->Fill(pfHFEMEt);
3132 
3133  //NPV profiles
3134 
3135  mePhotonEtFraction_profile = map_of_MEs[DirName + "/PfPhotonEtFraction_profile"];
3136  mePhotonEt_profile = map_of_MEs[DirName + "/PfPhotonEt_profile"];
3137  meNeutralHadronEtFraction_profile = map_of_MEs[DirName + "/PfNeutralHadronEtFraction_profile"];
3138  meNeutralHadronEt_profile = map_of_MEs[DirName + "/PfNeutralHadronEt_profile"];
3139  meChargedHadronEtFraction_profile = map_of_MEs[DirName + "/PfChargedHadronEtFraction_profile"];
3140  meChargedHadronEt_profile = map_of_MEs[DirName + "/PfChargedHadronEt_profile"];
3141  meHFHadronEtFraction_profile = map_of_MEs[DirName + "/PfHFHadronEtFraction_profile"];
3142  meHFHadronEt_profile = map_of_MEs[DirName + "/PfHFHadronEt_profile"];
3143  meHFEMEtFraction_profile = map_of_MEs[DirName + "/PfHFEMEtFraction_profile"];
3144  meHFEMEt_profile = map_of_MEs[DirName + "/PfHFEMEt_profile"];
3145 
3147  mePhotonEtFraction_profile->Fill(numPV_, pfPhotonEtFraction);
3149  mePhotonEt_profile->Fill(numPV_, pfPhotonEt);
3151  meNeutralHadronEtFraction_profile->Fill(numPV_, pfNeutralHadronEtFraction);
3153  meNeutralHadronEt_profile->Fill(numPV_, pfNeutralHadronEt);
3155  meChargedHadronEtFraction_profile->Fill(numPV_, pfChargedHadronEtFraction);
3157  meChargedHadronEt_profile->Fill(numPV_, pfChargedHadronEt);
3159  meHFHadronEtFraction_profile->Fill(numPV_, pfHFHadronEtFraction);
3161  meHFHadronEt_profile->Fill(numPV_, pfHFHadronEt);
3163  meHFEMEtFraction_profile->Fill(numPV_, pfHFEMEtFraction);
3165  meHFEMEt_profile->Fill(numPV_, pfHFEMEt);
3166  }
3167 
3168  if (isMiniAODMet_) {
3169  mePhotonEtFraction = map_of_MEs[DirName + "/PfPhotonEtFraction"];
3170  meNeutralHadronEtFraction = map_of_MEs[DirName + "/PfNeutralHadronEtFraction"];
3171  meChargedHadronEtFraction = map_of_MEs[DirName + "/PfChargedHadronEtFraction"];
3172  meHFHadronEtFraction = map_of_MEs[DirName + "/PfHFHadronEtFraction"];
3173  meHFEMEtFraction = map_of_MEs[DirName + "/PfHFEMEtFraction"];
3174 
3176  mePhotonEtFraction->Fill(patmet->NeutralEMFraction());
3178  meNeutralHadronEtFraction->Fill(patmet->NeutralHadEtFraction());
3180  meChargedHadronEtFraction->Fill(patmet->ChargedHadEtFraction());
3182  meHFHadronEtFraction->Fill(patmet->Type6EtFraction()); //HFHadrons
3184  meHFEMEtFraction->Fill(patmet->Type7EtFraction());
3185 
3186  //NPV profiles
3187  mePhotonEtFraction_profile = map_of_MEs[DirName + "/PfPhotonEtFraction_profile"];
3188  meNeutralHadronEtFraction_profile = map_of_MEs[DirName + "/PfNeutralHadronEtFraction_profile"];
3189  meChargedHadronEtFraction_profile = map_of_MEs[DirName + "/PfChargedHadronEtFraction_profile"];
3190  meHFHadronEtFraction_profile = map_of_MEs[DirName + "/PfHFHadronEtFraction_profile"];
3191  meHFEMEtFraction_profile = map_of_MEs[DirName + "/PfHFEMEtFraction_profile"];
3192 
3194  mePhotonEtFraction_profile->Fill(numPV_, patmet->NeutralEMFraction());
3196  meNeutralHadronEtFraction_profile->Fill(numPV_, patmet->NeutralHadEtFraction());
3198  meChargedHadronEtFraction_profile->Fill(numPV_, patmet->ChargedHadEtFraction());
3200  meHFHadronEtFraction_profile->Fill(numPV_, patmet->Type6EtFraction());
3202  meHFEMEtFraction_profile->Fill(numPV_, patmet->Type7EtFraction());
3203 
3204  mePhotonEt = map_of_MEs[DirName + "/PfPhotonEt"];
3205  meNeutralHadronEt = map_of_MEs[DirName + "/PfNeutralHadronEt"];
3206  meChargedHadronEt = map_of_MEs[DirName + "/PfChargedHadronEt"];
3207  meHFHadronEt = map_of_MEs[DirName + "/PfHFHadronEt"];
3208  meHFEMEt = map_of_MEs[DirName + "/PfHFEMEt"];
3209  meMuonEt = map_of_MEs[DirName + "/PfMuonEt"];
3210  meElectronEt = map_of_MEs[DirName + "/PfElectronEt"];
3211 
3213  mePhotonEt->Fill(patmet->NeutralEMFraction() * patmet->sumEt());
3215  meNeutralHadronEt->Fill(patmet->NeutralHadEtFraction() * patmet->sumEt());
3217  meChargedHadronEt->Fill(patmet->ChargedHadEtFraction() * patmet->sumEt());
3219  meHFHadronEt->Fill(patmet->Type6EtFraction() * patmet->sumEt()); //HFHadrons
3220  if (meHFEMEt && meHFEMEt->getRootObject())
3221  meHFEMEt->Fill(patmet->Type7EtFraction() * patmet->sumEt());
3222  if (meMuonEt && meMuonEt->getRootObject())
3223  meMuonEt->Fill(patmet->MuonEtFraction() * patmet->sumEt());
3225  meElectronEt->Fill(patmet->ChargedEMEtFraction() * patmet->sumEt());
3226 
3227  //NPV profiles
3228  mePhotonEt_profile = map_of_MEs[DirName + "/PfPhotonEt_profile"];
3229  meNeutralHadronEt_profile = map_of_MEs[DirName + "/PfNeutralHadronEt_profile"];
3230  meChargedHadronEt_profile = map_of_MEs[DirName + "/PfChargedHadronEt_profile"];
3231  meHFHadronEt_profile = map_of_MEs[DirName + "/PfHFHadronEt_profile"];
3232  meHFEMEt_profile = map_of_MEs[DirName + "/PfHFEMEt_profile"];
3233 
3235  mePhotonEt_profile->Fill(numPV_, patmet->NeutralEMFraction() * patmet->sumEt());
3237  meNeutralHadronEt_profile->Fill(numPV_, patmet->NeutralHadEtFraction() * patmet->sumEt());
3239  meChargedHadronEt_profile->Fill(numPV_, patmet->ChargedHadEtFraction() * patmet->sumEt());
3241  meHFHadronEt_profile->Fill(numPV_, patmet->Type6EtFraction() * patmet->sumEt());
3243  meHFEMEt_profile->Fill(numPV_, patmet->Type7EtFraction() * patmet->sumEt());
3244  }
3245 
3246  if (isCaloMet_) {
3247  //if (bLumiSecPlot){//get from config level
3249  hMExLS = map_of_MEs[DirName + "/" + "MExLS"];
3250  if (hMExLS && hMExLS->getRootObject())
3251  hMExLS->Fill(MEx, myLuminosityBlock);
3252  hMEyLS = map_of_MEs[DirName + "/" + "MEyLS"];
3253  if (hMEyLS && hMEyLS->getRootObject())
3254  hMEyLS->Fill(MEy, myLuminosityBlock);
3255  }
3256  }
3257  } //check if we only wanna do Z plots
3258 }
MonitorElement * meCHF_EndcapMinus_BXm1Filled
Definition: METAnalyzer.h:467
MonitorElement * meMETPhiNeutralHadronsEndcapMinus_BXm1Empty
Definition: METAnalyzer.h:418
MonitorElement * hMExLS
Definition: METAnalyzer.h:334
MonitorElement * meMETPhiNeutralHadronsEndcapMinus
Definition: METAnalyzer.h:553
MonitorElement * mePhF_EndcapMinus_BXm1Empty
Definition: METAnalyzer.h:493
MonitorElement * hSumET
Definition: METAnalyzer.h:332
MonitorElement * meMETPhiChargedHadronsEndcapPlus_BXm1Filled
Definition: METAnalyzer.h:435
MonitorElement * meNeutralHadronEtFraction
Definition: METAnalyzer.h:374
MonitorElement * meMETPhiHFHadronsPlus_BXm1Filled
Definition: METAnalyzer.h:443
MonitorElement * meNeutralHadronEtFraction_profile
Definition: METAnalyzer.h:574
MonitorElement * mePhF_EndcapMinus_BXm1Filled
Definition: METAnalyzer.h:499
MonitorElement * meMETPhiChargedHadronsEndcapPlus
Definition: METAnalyzer.h:549
MonitorElement * meHFHadF_Plus_BXm1Filled
Definition: METAnalyzer.h:510
MonitorElement * meNHF_EndcapPlus_BXm1Empty
Definition: METAnalyzer.h:476
MonitorElement * hMEy
Definition: METAnalyzer.h:316
MonitorElement * meMETPhiHFEGammasPlus
Definition: METAnalyzer.h:559
MonitorElement * hCaloMETPhi020
Definition: METAnalyzer.h:341
MonitorElement * mePhotonEt
Definition: METAnalyzer.h:373
MonitorElement * meChargedHadronEtFraction_profile
Definition: METAnalyzer.h:576
MonitorElement * meMETPhiPhotonsEndcapPlus_BXm1Empty
Definition: METAnalyzer.h:420
std::vector< int > typePFCand_
Definition: METAnalyzer.h:546
MonitorElement * meZJets_u_perp_ZPt_150_290
Definition: METAnalyzer.h:598
MonitorElement * meMETPhiHFHadronsMinus_BXm1Empty
Definition: METAnalyzer.h:423
MonitorElement * meMET_BXm1Filled
Definition: METAnalyzer.h:431
MonitorElement * meZJets_u_perp_ZPt_75_150
Definition: METAnalyzer.h:597
MonitorElement * hCaloHadEtInHF
Definition: METAnalyzer.h:352
std::vector< double > MExPFCand_
Definition: METAnalyzer.h:545
MonitorElement * meHFHadF_Minus_BXm1Empty
Definition: METAnalyzer.h:507
MonitorElement * meZJets_u_perp_ZPt_0_15
Definition: METAnalyzer.h:593
bool isCaloMet_
Definition: METAnalyzer.h:603
MonitorElement * meSumET_BXm1Empty
Definition: METAnalyzer.h:411
MonitorElement * meZJets_u_par_ZPt_15_30
Definition: METAnalyzer.h:585
MonitorElement * meChargedHadronEtFraction_BXm1Empty
Definition: METAnalyzer.h:409
MonitorElement * hMEx
Definition: METAnalyzer.h:315
std::vector< std::string > profilePFCand_y_name_
Definition: METAnalyzer.h:544
std::vector< MonitorElement * > profilePFCand_y_
Definition: METAnalyzer.h:543
MonitorElement * meZJets_u_par
Definition: METAnalyzer.h:583
MonitorElement * hCaloHadEtInHE
Definition: METAnalyzer.h:351
MonitorElement * hMET_eeBadScFilter
Definition: METAnalyzer.h:324
MonitorElement * meMETPhiPhotonsEndcapPlus
Definition: METAnalyzer.h:555
MonitorElement * meZJets_u_par_ZPt_75_150
Definition: METAnalyzer.h:588
MonitorElement * meNeutralHadronEtFraction_BXm1Empty
Definition: METAnalyzer.h:408
MonitorElement * meMETPhiChargedHadronsBarrel_BXm1Empty
Definition: METAnalyzer.h:413
bool fillCandidateMap_histos
Definition: METAnalyzer.h:608
MonitorElement * meHFEMF_Minus_BXm1Empty
Definition: METAnalyzer.h:518
std::vector< double > etaMaxPFCand_
Definition: METAnalyzer.h:545
MonitorElement * meZJets_u_perp_ZPt_30_55
Definition: METAnalyzer.h:595
MonitorElement * hCaloEtFractionHadronic
Definition: METAnalyzer.h:342
MonitorElement * hMEyLS
Definition: METAnalyzer.h:335
MonitorElement * meHFHadF_Minus
Definition: METAnalyzer.h:505
MonitorElement * meMETPhiHFEGammasPlus_BXm1Filled
Definition: METAnalyzer.h:445
MonitorElement * mePhotonEtFraction_BXm1Empty
Definition: METAnalyzer.h:407
MonitorElement * meHFHadronEtFraction
Definition: METAnalyzer.h:380
MonitorElement * meMET_BXm1Empty
Definition: METAnalyzer.h:410
MonitorElement * meCHF_EndcapMinus_BXm1Empty
Definition: METAnalyzer.h:461
MonitorElement * meNHF_EndcapPlus
Definition: METAnalyzer.h:473
MonitorElement * meMETPhiPhotonsEndcapMinus_BXm1Empty
Definition: METAnalyzer.h:421
MonitorElement * hMET_logx
Definition: METAnalyzer.h:337
MonitorElement * hCaloEmEtInHF
Definition: METAnalyzer.h:353
MonitorElement * meHFEMEtFraction_profile
Definition: METAnalyzer.h:580
MonitorElement * mePhF_EndcapPlus
Definition: METAnalyzer.h:489
MonitorElement * hCaloHadEtInHO
Definition: METAnalyzer.h:350
MonitorElement * meHFEMF_Plus_BXm1Filled
Definition: METAnalyzer.h:521
MonitorElement * meChargedHadronEtFraction
Definition: METAnalyzer.h:377
MonitorElement * meMETPhiPhotonsBarrel_BXm1Empty
Definition: METAnalyzer.h:419
MonitorElement * mePhF_Barrel_BXm1Empty
Definition: METAnalyzer.h:491
MonitorElement * meMEx_profile
Definition: METAnalyzer.h:567
MonitorElement * meNHF_Barrel
Definition: METAnalyzer.h:472
MonitorElement * hMET
Definition: METAnalyzer.h:319
MonitorElement * meZJets_u_par_ZPt_290
Definition: METAnalyzer.h:590
MonitorElement * hMET_2
Definition: METAnalyzer.h:320
MonitorElement * hMET_HcalStripHaloFilter
Definition: METAnalyzer.h:329
MonitorElement * meCHF_EndcapMinus
Definition: METAnalyzer.h:458
MonitorElement * meMETPhiHFHadronsPlus_BXm1Empty
Definition: METAnalyzer.h:422
MonitorElement * hTrigger
Definition: METAnalyzer.h:313
MonitorElement * mePhF_Barrel_BXm1Filled
Definition: METAnalyzer.h:497
MonitorElement * meCHF_EndcapPlus_BXm1Filled
Definition: METAnalyzer.h:466
void Fill(long long x)
MonitorElement * meZJets_u_par_ZPt_55_75
Definition: METAnalyzer.h:587
MonitorElement * meMETPhiNeutralHadronsEndcapMinus_BXm1Filled
Definition: METAnalyzer.h:439
MonitorElement * mePhF_EndcapPlus_BXm1Filled
Definition: METAnalyzer.h:498
MonitorElement * meZJets_u_perp
Definition: METAnalyzer.h:592
MonitorElement * meZJets_u_par_ZPt_0_15
Definition: METAnalyzer.h:584
MonitorElement * meMETPhiNeutralHadronsBarrel_BXm1Empty
Definition: METAnalyzer.h:416
int iEvent
Definition: GenABIO.cc:224
MonitorElement * meNeutralHadronEtFraction_BXm1Filled
Definition: METAnalyzer.h:429
MonitorElement * meNHF_Barrel_BXm1Filled
Definition: METAnalyzer.h:481
MonitorElement * meMETPhiNeutralHadronsEndcapPlus_BXm1Empty
Definition: METAnalyzer.h:417
bool fill_met_high_level_histo
Definition: METAnalyzer.h:607
MonitorElement * hMETPhi
Definition: METAnalyzer.h:331
MonitorElement * hCaloEmEtInEE
Definition: METAnalyzer.h:354
MonitorElement * hMET_HBHEIsoNoiseFilter
Definition: METAnalyzer.h:327
MonitorElement * mePhF_EndcapMinus
Definition: METAnalyzer.h:490
MonitorElement * meZJets_u_perp_ZPt_55_75
Definition: METAnalyzer.h:596
MonitorElement * meMETPhiHFEGammasMinus
Definition: METAnalyzer.h:560
MonitorElement * meMuonEt
Definition: METAnalyzer.h:379
MonitorElement * meHFEMEt_profile
Definition: METAnalyzer.h:581
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
Definition: MET.h:41
MonitorElement * mePhotonEtFraction_BXm1Filled
Definition: METAnalyzer.h:428
MonitorElement * hSumET_logx
Definition: METAnalyzer.h:338
T sqrt(T t)
Definition: SSEVec.h:19
MonitorElement * meNHF_EndcapPlus_BXm1Filled
Definition: METAnalyzer.h:482
MonitorElement * hMET_HBHENoiseFilter
Definition: METAnalyzer.h:322
MonitorElement * meMETPhiPhotonsEndcapMinus_BXm1Filled
Definition: METAnalyzer.h:442
MonitorElement * meZJets_u_par_ZPt_150_290
Definition: METAnalyzer.h:589
MonitorElement * meCHF_Barrel_BXm1Filled
Definition: METAnalyzer.h:465
MonitorElement * meMETPhiHFHadronsMinus_BXm1Filled
Definition: METAnalyzer.h:444
MonitorElement * meZJets_u_perp_ZPt_290
Definition: METAnalyzer.h:599
MonitorElement * meHFEMF_Minus
Definition: METAnalyzer.h:516
MonitorElement * hCaloEmEtFraction
Definition: METAnalyzer.h:343
MonitorElement * meMETPhiChargedHadronsBarrel
Definition: METAnalyzer.h:548
MonitorElement * meNHF_Barrel_BXm1Empty
Definition: METAnalyzer.h:475
MonitorElement * meChargedHadronEt
Definition: METAnalyzer.h:378
MonitorElement * meMETPhiChargedHadronsEndcapMinus_BXm1Filled
Definition: METAnalyzer.h:436
MonitorElement * hMETSig
Definition: METAnalyzer.h:318
MonitorElement * meChargedHadronEt_profile
Definition: METAnalyzer.h:577
MonitorElement * meCHF_Barrel_BXm1Empty
Definition: METAnalyzer.h:459
MonitorElement * meMETPhiNeutralHadronsEndcapPlus_BXm1Filled
Definition: METAnalyzer.h:438
std::vector< double > MEyPFCand_
Definition: METAnalyzer.h:545
MonitorElement * mePhotonEtFraction
Definition: METAnalyzer.h:372
MonitorElement * hMET_EcalDeadCellBoundaryFilter
Definition: METAnalyzer.h:326
MonitorElement * mePhotonEt_profile
Definition: METAnalyzer.h:573
MonitorElement * meCHF_EndcapPlus
Definition: METAnalyzer.h:457
MonitorElement * meZJets_u_perp_ZPt_15_30
Definition: METAnalyzer.h:594
virtual TObject const * getRootObject() const
MonitorElement * meZJets_u_par_ZPt_30_55
Definition: METAnalyzer.h:586
MonitorElement * meMETPhiHFEGammasMinus_BXm1Empty
Definition: METAnalyzer.h:425
MonitorElement * meElectronEt
Definition: METAnalyzer.h:376
MonitorElement * meMET_profile
Definition: METAnalyzer.h:569
MonitorElement * meMETPhiChargedHadronsEndcapMinus
Definition: METAnalyzer.h:550
MonitorElement * meHFHadronEt
Definition: METAnalyzer.h:381
MonitorElement * hCaloEmEtInEB
Definition: METAnalyzer.h:355
MonitorElement * meMETPhiPhotonsBarrel
Definition: METAnalyzer.h:554
MonitorElement * hCaloHadEtInHB
Definition: METAnalyzer.h:349
MonitorElement * meHFHadF_Plus_BXm1Empty
Definition: METAnalyzer.h:506
MonitorElement * meMETPhiPhotonsBarrel_BXm1Filled
Definition: METAnalyzer.h:440
edm::EDGetTokenT< std::vector< reco::PFCandidate > > pflowToken_
Definition: METAnalyzer.h:562
MonitorElement * meHFHadF_Minus_BXm1Filled
Definition: METAnalyzer.h:511
MonitorElement * meHFHadronEtFraction_profile
Definition: METAnalyzer.h:578
MonitorElement * meNHF_EndcapMinus_BXm1Empty
Definition: METAnalyzer.h:477
MonitorElement * hMET_CSCTightHalo2015Filter
Definition: METAnalyzer.h:328
MonitorElement * meHFEMEtFraction
Definition: METAnalyzer.h:382
MonitorElement * hMET_CSCTightHaloFilter
Definition: METAnalyzer.h:323
MonitorElement * meHFEMF_Minus_BXm1Filled
Definition: METAnalyzer.h:522
MonitorElement * meMETPhiChargedHadronsEndcapMinus_BXm1Empty
Definition: METAnalyzer.h:415
MonitorElement * hCaloEmEtFraction020
Definition: METAnalyzer.h:347
MonitorElement * meHFEMF_Plus_BXm1Empty
Definition: METAnalyzer.h:517
Particle reconstructed by the particle flow algorithm.
Definition: PFCandidate.h:41
MonitorElement * mePhF_EndcapPlus_BXm1Empty
Definition: METAnalyzer.h:492
std::vector< int > countsPFCand_
Definition: METAnalyzer.h:546
MonitorElement * meMETPhiHFHadronsPlus
Definition: METAnalyzer.h:557
MonitorElement * hMET_EcalDeadCellTriggerFilter
Definition: METAnalyzer.h:325
MonitorElement * meHFEMEt
Definition: METAnalyzer.h:383
virtual int getNbinsX() const
get # of bins in X-axis
std::vector< double > etaMinPFCand_
Definition: METAnalyzer.h:545
MonitorElement * meChargedHadronEtFraction_BXm1Filled
Definition: METAnalyzer.h:430
MonitorElement * meMETPhiHFEGammasMinus_BXm1Filled
Definition: METAnalyzer.h:446
MonitorElement * meMEy_profile
Definition: METAnalyzer.h:568
MonitorElement * meMETPhiPhotonsEndcapPlus_BXm1Filled
Definition: METAnalyzer.h:441
MonitorElement * meHFEMF_Plus
Definition: METAnalyzer.h:515
std::vector< std::string > profilePFCand_x_name_
Definition: METAnalyzer.h:544
MonitorElement * meSumET_profile
Definition: METAnalyzer.h:570
MonitorElement * meMETPhiHFEGammasPlus_BXm1Empty
Definition: METAnalyzer.h:424
MonitorElement * meMETPhiNeutralHadronsBarrel
Definition: METAnalyzer.h:551
MonitorElement * meCHF_Barrel
Definition: METAnalyzer.h:456
bool isMiniAODMet_
Definition: METAnalyzer.h:605
MonitorElement * meHFHadronEt_profile
Definition: METAnalyzer.h:579
MonitorElement * meMETPhiPhotonsEndcapMinus
Definition: METAnalyzer.h:556
std::vector< MonitorElement * > profilePFCand_x_
Definition: METAnalyzer.h:543
MonitorElement * meNeutralHadronEt_profile
Definition: METAnalyzer.h:575
MonitorElement * meHFHadF_Plus
Definition: METAnalyzer.h:504
MonitorElement * meCHF_EndcapPlus_BXm1Empty
Definition: METAnalyzer.h:460
MonitorElement * mePhF_Barrel
Definition: METAnalyzer.h:488
MonitorElement * mePhotonEtFraction_profile
Definition: METAnalyzer.h:572
MonitorElement * meMETPhiChargedHadronsEndcapPlus_BXm1Empty
Definition: METAnalyzer.h:414
MonitorElement * meMETPhiNeutralHadronsBarrel_BXm1Filled
Definition: METAnalyzer.h:437
MonitorElement * meMETPhiHFHadronsMinus
Definition: METAnalyzer.h:558
std::vector< int > allTriggerDecisions_
Definition: METAnalyzer.h:220
MonitorElement * meMETPhiChargedHadronsBarrel_BXm1Filled
Definition: METAnalyzer.h:434
MonitorElement * meNHF_EndcapMinus
Definition: METAnalyzer.h:474
MonitorElement * meSumET_BXm1Filled
Definition: METAnalyzer.h:432
MonitorElement * meNHF_EndcapMinus_BXm1Filled
Definition: METAnalyzer.h:483
MonitorElement * meMETPhiNeutralHadronsEndcapPlus
Definition: METAnalyzer.h:552
MonitorElement * meNeutralHadronEt
Definition: METAnalyzer.h:375

◆ makeRatePlot()

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

Definition at line 1389 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().

1389  {
1390  //dbe_->setCurrentFolder(DirName);
1391  MonitorElement* meMET = map_dijet_MEs[DirName + "/" + "MET"];
1392  MonitorElement* mMETRate = map_dijet_MEs[DirName + "/" + "METRate"];
1393 
1394  TH1F* tMET;
1395  TH1F* tMETRate;
1396 
1397  if (meMET && mMETRate) {
1398  if (meMET->getRootObject() && mMETRate->getRootObject()) {
1399  tMET = meMET->getTH1F();
1400 
1401  // Integral plot & convert number of events to rate (hz)
1402  tMETRate = (TH1F*)tMET->Clone("METRateHist");
1403  for (int i = tMETRate->GetNbinsX() - 1; i >= 0; i--) {
1404  tMETRate->SetBinContent(i + 1, tMETRate->GetBinContent(i + 2) + tMET->GetBinContent(i + 1));
1405  }
1406  for (int i = 0; i < tMETRate->GetNbinsX(); i++) {
1407  tMETRate->SetBinContent(i + 1, tMETRate->GetBinContent(i + 1) / double(totltime));
1408  mMETRate->setBinContent(i + 1, tMETRate->GetBinContent(i + 1));
1409  }
1410  }
1411  }
1412 }
std::map< std::string, MonitorElement * > map_dijet_MEs
Definition: METAnalyzer.h:601
virtual void setBinContent(int binx, double content)
set content of bin (1-D)
virtual TH1F * getTH1F() const
TObject * getRootObject() const override

Member Data Documentation

◆ allTriggerDecisions_

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

Definition at line 220 of file METAnalyzer.h.

◆ allTriggerNames_

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

Definition at line 219 of file METAnalyzer.h.

◆ beamSpot_

math::XYZPoint METAnalyzer::beamSpot_
private

Definition at line 302 of file METAnalyzer.h.

◆ bypassAllDCSChecks_

bool METAnalyzer::bypassAllDCSChecks_
private

Definition at line 271 of file METAnalyzer.h.

◆ bypassAllPVChecks_

bool METAnalyzer::bypassAllPVChecks_
private

Definition at line 270 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 258 of file METAnalyzer.h.

◆ countsPFCand_

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

Definition at line 546 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 298 of file METAnalyzer.h.

◆ diagnosticsParameters_

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

Definition at line 259 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 545 of file METAnalyzer.h.

◆ etaMinPFCand_

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

Definition at line 545 of file METAnalyzer.h.

◆ etaNBinsPFCand_

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

Definition at line 546 of file METAnalyzer.h.

◆ fill_met_high_level_histo

bool METAnalyzer::fill_met_high_level_histo
private

Definition at line 607 of file METAnalyzer.h.

◆ fillCandidateMap_histos

bool METAnalyzer::fillCandidateMap_histos
private

Definition at line 608 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 300 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 223 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 222 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 343 of file METAnalyzer.h.

◆ hCaloEmEtFraction020

MonitorElement* METAnalyzer::hCaloEmEtFraction020
private

Definition at line 347 of file METAnalyzer.h.

◆ hCaloEmEtInEB

MonitorElement* METAnalyzer::hCaloEmEtInEB
private

Definition at line 355 of file METAnalyzer.h.

◆ hCaloEmEtInEE

MonitorElement* METAnalyzer::hCaloEmEtInEE
private

Definition at line 354 of file METAnalyzer.h.

◆ hCaloEmEtInHF

MonitorElement* METAnalyzer::hCaloEmEtInHF
private

Definition at line 353 of file METAnalyzer.h.

◆ hCaloEmMET

MonitorElement* METAnalyzer::hCaloEmMET
private

Definition at line 360 of file METAnalyzer.h.

◆ hCaloEmMETPhi

MonitorElement* METAnalyzer::hCaloEmMETPhi
private

Definition at line 361 of file METAnalyzer.h.

◆ hCaloEmMEx

MonitorElement* METAnalyzer::hCaloEmMEx
private

Definition at line 357 of file METAnalyzer.h.

◆ hCaloEmMEy

MonitorElement* METAnalyzer::hCaloEmMEy
private

Definition at line 358 of file METAnalyzer.h.

◆ hCaloEtFractionHadronic

MonitorElement* METAnalyzer::hCaloEtFractionHadronic
private

Definition at line 342 of file METAnalyzer.h.

◆ hCaloHadEtInHB

MonitorElement* METAnalyzer::hCaloHadEtInHB
private

Definition at line 349 of file METAnalyzer.h.

◆ hCaloHadEtInHE

MonitorElement* METAnalyzer::hCaloHadEtInHE
private

Definition at line 351 of file METAnalyzer.h.

◆ hCaloHadEtInHF

MonitorElement* METAnalyzer::hCaloHadEtInHF
private

Definition at line 352 of file METAnalyzer.h.

◆ hCaloHadEtInHO

MonitorElement* METAnalyzer::hCaloHadEtInHO
private

Definition at line 350 of file METAnalyzer.h.

◆ hCaloHaMET

MonitorElement* METAnalyzer::hCaloHaMET
private

Definition at line 367 of file METAnalyzer.h.

◆ hCaloHaMETPhi

MonitorElement* METAnalyzer::hCaloHaMETPhi
private

Definition at line 368 of file METAnalyzer.h.

◆ hCaloHaMEx

MonitorElement* METAnalyzer::hCaloHaMEx
private

Definition at line 364 of file METAnalyzer.h.

◆ hCaloHaMEy

MonitorElement* METAnalyzer::hCaloHaMEy
private

Definition at line 365 of file METAnalyzer.h.

◆ hCaloMETPhi020

MonitorElement* METAnalyzer::hCaloMETPhi020
private

Definition at line 341 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 295 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 261 of file METAnalyzer.h.

◆ hMET

MonitorElement* METAnalyzer::hMET
private

Definition at line 319 of file METAnalyzer.h.

◆ hMET_2

MonitorElement* METAnalyzer::hMET_2
private

Definition at line 320 of file METAnalyzer.h.

◆ hMET_CSCTightHalo2015Filter

MonitorElement* METAnalyzer::hMET_CSCTightHalo2015Filter
private

Definition at line 328 of file METAnalyzer.h.

◆ hMET_CSCTightHaloFilter

MonitorElement* METAnalyzer::hMET_CSCTightHaloFilter
private

Definition at line 323 of file METAnalyzer.h.

◆ hMET_EcalDeadCellBoundaryFilter

MonitorElement* METAnalyzer::hMET_EcalDeadCellBoundaryFilter
private

Definition at line 326 of file METAnalyzer.h.

◆ hMET_EcalDeadCellTriggerFilter

MonitorElement* METAnalyzer::hMET_EcalDeadCellTriggerFilter
private

Definition at line 325 of file METAnalyzer.h.

◆ hMET_eeBadScFilter

MonitorElement* METAnalyzer::hMET_eeBadScFilter
private

Definition at line 324 of file METAnalyzer.h.

◆ hMET_HBHEIsoNoiseFilter

MonitorElement* METAnalyzer::hMET_HBHEIsoNoiseFilter
private

Definition at line 327 of file METAnalyzer.h.

◆ hMET_HBHENoiseFilter

MonitorElement* METAnalyzer::hMET_HBHENoiseFilter
private

Definition at line 322 of file METAnalyzer.h.

◆ hMET_HcalStripHaloFilter

MonitorElement* METAnalyzer::hMET_HcalStripHaloFilter
private

Definition at line 329 of file METAnalyzer.h.

◆ hMET_logx

MonitorElement* METAnalyzer::hMET_logx
private

Definition at line 337 of file METAnalyzer.h.

◆ hMETPhi

MonitorElement* METAnalyzer::hMETPhi
private

Definition at line 331 of file METAnalyzer.h.

◆ hMETRate

MonitorElement* METAnalyzer::hMETRate
private

Definition at line 256 of file METAnalyzer.h.

◆ hMETSig

MonitorElement* METAnalyzer::hMETSig
private

Definition at line 318 of file METAnalyzer.h.

◆ hMEx

MonitorElement* METAnalyzer::hMEx
private

Definition at line 315 of file METAnalyzer.h.

◆ hMExLS

MonitorElement* METAnalyzer::hMExLS
private

Definition at line 334 of file METAnalyzer.h.

◆ hMEy

MonitorElement* METAnalyzer::hMEy
private

Definition at line 316 of file METAnalyzer.h.

◆ hMEyLS

MonitorElement* METAnalyzer::hMEyLS
private

Definition at line 335 of file METAnalyzer.h.

◆ hSumET

MonitorElement* METAnalyzer::hSumET
private

Definition at line 332 of file METAnalyzer.h.

◆ hSumET_logx

MonitorElement* METAnalyzer::hSumET_logx
private

Definition at line 338 of file METAnalyzer.h.

◆ hTrigger

MonitorElement* METAnalyzer::hTrigger
private

Definition at line 313 of file METAnalyzer.h.

◆ hTriggerLabelsIsSet_

bool METAnalyzer::hTriggerLabelsIsSet_
private

Definition at line 308 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 603 of file METAnalyzer.h.

◆ isMiniAODMet_

bool METAnalyzer::isMiniAODMet_
private

Definition at line 605 of file METAnalyzer.h.

◆ isPFMet_

bool METAnalyzer::isPFMet_
private

Definition at line 604 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 225 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 267 of file METAnalyzer.h.

◆ LSEnd_

int METAnalyzer::LSEnd_
private

Definition at line 268 of file METAnalyzer.h.

◆ lumisecME

MonitorElement* METAnalyzer::lumisecME
private

Definition at line 312 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 601 of file METAnalyzer.h.

◆ meChargedHadronEt

MonitorElement* METAnalyzer::meChargedHadronEt
private

Definition at line 378 of file METAnalyzer.h.

◆ meChargedHadronEt_profile

MonitorElement* METAnalyzer::meChargedHadronEt_profile
private

Definition at line 577 of file METAnalyzer.h.

◆ meChargedHadronEtFraction

MonitorElement* METAnalyzer::meChargedHadronEtFraction
private

Definition at line 377 of file METAnalyzer.h.

◆ meChargedHadronEtFraction_BXm1Empty

MonitorElement* METAnalyzer::meChargedHadronEtFraction_BXm1Empty
private

Definition at line 409 of file METAnalyzer.h.

◆ meChargedHadronEtFraction_BXm1Filled

MonitorElement* METAnalyzer::meChargedHadronEtFraction_BXm1Filled
private

Definition at line 430 of file METAnalyzer.h.

◆ meChargedHadronEtFraction_profile

MonitorElement* METAnalyzer::meChargedHadronEtFraction_profile
private

Definition at line 576 of file METAnalyzer.h.

◆ meCHF_Barrel

MonitorElement* METAnalyzer::meCHF_Barrel
private

Definition at line 456 of file METAnalyzer.h.

◆ meCHF_Barrel_BXm1Empty

MonitorElement* METAnalyzer::meCHF_Barrel_BXm1Empty
private

Definition at line 459 of file METAnalyzer.h.

◆ meCHF_Barrel_BXm1Filled

MonitorElement* METAnalyzer::meCHF_Barrel_BXm1Filled
private

Definition at line 465 of file METAnalyzer.h.

◆ meCHF_EndcapMinus

MonitorElement* METAnalyzer::meCHF_EndcapMinus
private

Definition at line 458 of file METAnalyzer.h.

◆ meCHF_EndcapMinus_BXm1Empty

MonitorElement* METAnalyzer::meCHF_EndcapMinus_BXm1Empty
private

Definition at line 461 of file METAnalyzer.h.

◆ meCHF_EndcapMinus_BXm1Filled

MonitorElement* METAnalyzer::meCHF_EndcapMinus_BXm1Filled
private

Definition at line 467 of file METAnalyzer.h.

◆ meCHF_EndcapPlus

MonitorElement* METAnalyzer::meCHF_EndcapPlus
private

Definition at line 457 of file METAnalyzer.h.

◆ meCHF_EndcapPlus_BXm1Empty

MonitorElement* METAnalyzer::meCHF_EndcapPlus_BXm1Empty
private

Definition at line 460 of file METAnalyzer.h.

◆ meCHF_EndcapPlus_BXm1Filled

MonitorElement* METAnalyzer::meCHF_EndcapPlus_BXm1Filled
private

Definition at line 466 of file METAnalyzer.h.

◆ meElectronEt

MonitorElement* METAnalyzer::meElectronEt
private

Definition at line 376 of file METAnalyzer.h.

◆ meHFEMEt

MonitorElement* METAnalyzer::meHFEMEt
private

Definition at line 383 of file METAnalyzer.h.

◆ meHFEMEt_profile

MonitorElement* METAnalyzer::meHFEMEt_profile
private

Definition at line 581 of file METAnalyzer.h.

◆ meHFEMEtFraction

MonitorElement* METAnalyzer::meHFEMEtFraction
private

Definition at line 382 of file METAnalyzer.h.

◆ meHFEMEtFraction_profile

MonitorElement* METAnalyzer::meHFEMEtFraction_profile
private

Definition at line 580 of file METAnalyzer.h.

◆ meHFEMF_Minus

MonitorElement* METAnalyzer::meHFEMF_Minus
private

Definition at line 516 of file METAnalyzer.h.

◆ meHFEMF_Minus_BXm1Empty

MonitorElement* METAnalyzer::meHFEMF_Minus_BXm1Empty
private

Definition at line 518 of file METAnalyzer.h.

◆ meHFEMF_Minus_BXm1Filled

MonitorElement* METAnalyzer::meHFEMF_Minus_BXm1Filled
private

Definition at line 522 of file METAnalyzer.h.

◆ meHFEMF_Plus

MonitorElement* METAnalyzer::meHFEMF_Plus
private

Definition at line 515 of file METAnalyzer.h.

◆ meHFEMF_Plus_BXm1Empty

MonitorElement* METAnalyzer::meHFEMF_Plus_BXm1Empty
private

Definition at line 517 of file METAnalyzer.h.

◆ meHFEMF_Plus_BXm1Filled

MonitorElement* METAnalyzer::meHFEMF_Plus_BXm1Filled
private

Definition at line 521 of file METAnalyzer.h.

◆ meHFHadF_Minus

MonitorElement* METAnalyzer::meHFHadF_Minus
private

Definition at line 505 of file METAnalyzer.h.

◆ meHFHadF_Minus_BXm1Empty

MonitorElement* METAnalyzer::meHFHadF_Minus_BXm1Empty
private

Definition at line 507 of file METAnalyzer.h.

◆ meHFHadF_Minus_BXm1Filled

MonitorElement* METAnalyzer::meHFHadF_Minus_BXm1Filled
private

Definition at line 511 of file METAnalyzer.h.

◆ meHFHadF_Plus

MonitorElement* METAnalyzer::meHFHadF_Plus
private

Definition at line 504 of file METAnalyzer.h.

◆ meHFHadF_Plus_BXm1Empty

MonitorElement* METAnalyzer::meHFHadF_Plus_BXm1Empty
private

Definition at line 506 of file METAnalyzer.h.

◆ meHFHadF_Plus_BXm1Filled

MonitorElement* METAnalyzer::meHFHadF_Plus_BXm1Filled
private

Definition at line 510 of file METAnalyzer.h.

◆ meHFHadronEt

MonitorElement* METAnalyzer::meHFHadronEt
private

Definition at line 381 of file METAnalyzer.h.

◆ meHFHadronEt_profile

MonitorElement* METAnalyzer::meHFHadronEt_profile
private

Definition at line 579 of file METAnalyzer.h.

◆ meHFHadronEtFraction

MonitorElement* METAnalyzer::meHFHadronEtFraction
private

Definition at line 380 of file METAnalyzer.h.

◆ meHFHadronEtFraction_profile

MonitorElement* METAnalyzer::meHFHadronEtFraction_profile
private

Definition at line 578 of file METAnalyzer.h.

◆ meMET_BXm1Empty

MonitorElement* METAnalyzer::meMET_BXm1Empty
private

Definition at line 410 of file METAnalyzer.h.

◆ meMET_BXm1Filled

MonitorElement* METAnalyzer::meMET_BXm1Filled
private

Definition at line 431 of file METAnalyzer.h.

◆ meMET_profile

MonitorElement* METAnalyzer::meMET_profile
private

Definition at line 569 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsBarrel

MonitorElement* METAnalyzer::meMETPhiChargedHadronsBarrel
private

Definition at line 548 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsBarrel_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiChargedHadronsBarrel_BXm1Empty
private

Definition at line 413 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsBarrel_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiChargedHadronsBarrel_BXm1Filled
private

Definition at line 434 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsEndcapMinus

MonitorElement* METAnalyzer::meMETPhiChargedHadronsEndcapMinus
private

Definition at line 550 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsEndcapMinus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiChargedHadronsEndcapMinus_BXm1Empty
private

Definition at line 415 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsEndcapMinus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiChargedHadronsEndcapMinus_BXm1Filled
private

Definition at line 436 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsEndcapPlus

MonitorElement* METAnalyzer::meMETPhiChargedHadronsEndcapPlus
private

Definition at line 549 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsEndcapPlus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiChargedHadronsEndcapPlus_BXm1Empty
private

Definition at line 414 of file METAnalyzer.h.

◆ meMETPhiChargedHadronsEndcapPlus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiChargedHadronsEndcapPlus_BXm1Filled
private

Definition at line 435 of file METAnalyzer.h.

◆ meMETPhiHFEGammasMinus

MonitorElement* METAnalyzer::meMETPhiHFEGammasMinus
private

Definition at line 560 of file METAnalyzer.h.

◆ meMETPhiHFEGammasMinus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiHFEGammasMinus_BXm1Empty
private

Definition at line 425 of file METAnalyzer.h.

◆ meMETPhiHFEGammasMinus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiHFEGammasMinus_BXm1Filled
private

Definition at line 446 of file METAnalyzer.h.

◆ meMETPhiHFEGammasPlus

MonitorElement* METAnalyzer::meMETPhiHFEGammasPlus
private

Definition at line 559 of file METAnalyzer.h.

◆ meMETPhiHFEGammasPlus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiHFEGammasPlus_BXm1Empty
private

Definition at line 424 of file METAnalyzer.h.

◆ meMETPhiHFEGammasPlus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiHFEGammasPlus_BXm1Filled
private

Definition at line 445 of file METAnalyzer.h.

◆ meMETPhiHFHadronsMinus

MonitorElement* METAnalyzer::meMETPhiHFHadronsMinus
private

Definition at line 558 of file METAnalyzer.h.

◆ meMETPhiHFHadronsMinus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiHFHadronsMinus_BXm1Empty
private

Definition at line 423 of file METAnalyzer.h.

◆ meMETPhiHFHadronsMinus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiHFHadronsMinus_BXm1Filled
private

Definition at line 444 of file METAnalyzer.h.

◆ meMETPhiHFHadronsPlus

MonitorElement* METAnalyzer::meMETPhiHFHadronsPlus
private

Definition at line 557 of file METAnalyzer.h.

◆ meMETPhiHFHadronsPlus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiHFHadronsPlus_BXm1Empty
private

Definition at line 422 of file METAnalyzer.h.

◆ meMETPhiHFHadronsPlus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiHFHadronsPlus_BXm1Filled
private

Definition at line 443 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsBarrel

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsBarrel
private

Definition at line 551 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsBarrel_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsBarrel_BXm1Empty
private

Definition at line 416 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsBarrel_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsBarrel_BXm1Filled
private

Definition at line 437 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsEndcapMinus

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsEndcapMinus
private

Definition at line 553 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsEndcapMinus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsEndcapMinus_BXm1Empty
private

Definition at line 418 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsEndcapMinus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsEndcapMinus_BXm1Filled
private

Definition at line 439 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsEndcapPlus

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsEndcapPlus
private

Definition at line 552 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsEndcapPlus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsEndcapPlus_BXm1Empty
private

Definition at line 417 of file METAnalyzer.h.

◆ meMETPhiNeutralHadronsEndcapPlus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiNeutralHadronsEndcapPlus_BXm1Filled
private

Definition at line 438 of file METAnalyzer.h.

◆ meMETPhiPhotonsBarrel

MonitorElement* METAnalyzer::meMETPhiPhotonsBarrel
private

Definition at line 554 of file METAnalyzer.h.

◆ meMETPhiPhotonsBarrel_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiPhotonsBarrel_BXm1Empty
private

Definition at line 419 of file METAnalyzer.h.

◆ meMETPhiPhotonsBarrel_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiPhotonsBarrel_BXm1Filled
private

Definition at line 440 of file METAnalyzer.h.

◆ meMETPhiPhotonsEndcapMinus

MonitorElement* METAnalyzer::meMETPhiPhotonsEndcapMinus
private

Definition at line 556 of file METAnalyzer.h.

◆ meMETPhiPhotonsEndcapMinus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiPhotonsEndcapMinus_BXm1Empty
private

Definition at line 421 of file METAnalyzer.h.

◆ meMETPhiPhotonsEndcapMinus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiPhotonsEndcapMinus_BXm1Filled
private

Definition at line 442 of file METAnalyzer.h.

◆ meMETPhiPhotonsEndcapPlus

MonitorElement* METAnalyzer::meMETPhiPhotonsEndcapPlus
private

Definition at line 555 of file METAnalyzer.h.

◆ meMETPhiPhotonsEndcapPlus_BXm1Empty

MonitorElement* METAnalyzer::meMETPhiPhotonsEndcapPlus_BXm1Empty
private

Definition at line 420 of file METAnalyzer.h.

◆ meMETPhiPhotonsEndcapPlus_BXm1Filled

MonitorElement* METAnalyzer::meMETPhiPhotonsEndcapPlus_BXm1Filled
private

Definition at line 441 of file METAnalyzer.h.

◆ meMEx_profile

MonitorElement* METAnalyzer::meMEx_profile
private

Definition at line 567 of file METAnalyzer.h.

◆ meMEy_profile

MonitorElement* METAnalyzer::meMEy_profile
private

Definition at line 568 of file METAnalyzer.h.

◆ meMuonEt

MonitorElement* METAnalyzer::meMuonEt
private

Definition at line 379 of file METAnalyzer.h.

◆ meNeutralHadronEt

MonitorElement* METAnalyzer::meNeutralHadronEt
private

Definition at line 375 of file METAnalyzer.h.

◆ meNeutralHadronEt_profile

MonitorElement* METAnalyzer::meNeutralHadronEt_profile
private

Definition at line 575 of file METAnalyzer.h.

◆ meNeutralHadronEtFraction

MonitorElement* METAnalyzer::meNeutralHadronEtFraction
private

Definition at line 374 of file METAnalyzer.h.

◆ meNeutralHadronEtFraction_BXm1Empty

MonitorElement* METAnalyzer::meNeutralHadronEtFraction_BXm1Empty
private

Definition at line 408 of file METAnalyzer.h.

◆ meNeutralHadronEtFraction_BXm1Filled

MonitorElement* METAnalyzer::meNeutralHadronEtFraction_BXm1Filled
private

Definition at line 429 of file METAnalyzer.h.

◆ meNeutralHadronEtFraction_profile

MonitorElement* METAnalyzer::meNeutralHadronEtFraction_profile
private

Definition at line 574 of file METAnalyzer.h.

◆ meNHF_Barrel

MonitorElement* METAnalyzer::meNHF_Barrel
private

Definition at line 472 of file METAnalyzer.h.

◆ meNHF_Barrel_BXm1Empty

MonitorElement* METAnalyzer::meNHF_Barrel_BXm1Empty
private

Definition at line 475 of file METAnalyzer.h.

◆ meNHF_Barrel_BXm1Filled

MonitorElement* METAnalyzer::meNHF_Barrel_BXm1Filled
private

Definition at line 481 of file METAnalyzer.h.

◆ meNHF_EndcapMinus

MonitorElement* METAnalyzer::meNHF_EndcapMinus
private

Definition at line 474 of file METAnalyzer.h.

◆ meNHF_EndcapMinus_BXm1Empty

MonitorElement* METAnalyzer::meNHF_EndcapMinus_BXm1Empty
private

Definition at line 477 of file METAnalyzer.h.

◆ meNHF_EndcapMinus_BXm1Filled

MonitorElement* METAnalyzer::meNHF_EndcapMinus_BXm1Filled
private

Definition at line 483 of file METAnalyzer.h.

◆ meNHF_EndcapPlus

MonitorElement* METAnalyzer::meNHF_EndcapPlus
private

Definition at line 473 of file METAnalyzer.h.

◆ meNHF_EndcapPlus_BXm1Empty

MonitorElement* METAnalyzer::meNHF_EndcapPlus_BXm1Empty
private

Definition at line 476 of file METAnalyzer.h.

◆ meNHF_EndcapPlus_BXm1Filled

MonitorElement* METAnalyzer::meNHF_EndcapPlus_BXm1Filled
private

Definition at line 482 of file METAnalyzer.h.

◆ mePhF_Barrel

MonitorElement* METAnalyzer::mePhF_Barrel
private

Definition at line 488 of file METAnalyzer.h.

◆ mePhF_Barrel_BXm1Empty

MonitorElement* METAnalyzer::mePhF_Barrel_BXm1Empty
private

Definition at line 491 of file METAnalyzer.h.

◆ mePhF_Barrel_BXm1Filled

MonitorElement* METAnalyzer::mePhF_Barrel_BXm1Filled
private

Definition at line 497 of file METAnalyzer.h.

◆ mePhF_EndcapMinus

MonitorElement* METAnalyzer::mePhF_EndcapMinus
private

Definition at line 490 of file METAnalyzer.h.

◆ mePhF_EndcapMinus_BXm1Empty

MonitorElement* METAnalyzer::mePhF_EndcapMinus_BXm1Empty
private

Definition at line 493 of file METAnalyzer.h.

◆ mePhF_EndcapMinus_BXm1Filled

MonitorElement* METAnalyzer::mePhF_EndcapMinus_BXm1Filled
private

Definition at line 499 of file METAnalyzer.h.

◆ mePhF_EndcapPlus

MonitorElement* METAnalyzer::mePhF_EndcapPlus
private

Definition at line 489 of file METAnalyzer.h.

◆ mePhF_EndcapPlus_BXm1Empty

MonitorElement* METAnalyzer::mePhF_EndcapPlus_BXm1Empty
private

Definition at line 492 of file METAnalyzer.h.

◆ mePhF_EndcapPlus_BXm1Filled

MonitorElement* METAnalyzer::mePhF_EndcapPlus_BXm1Filled
private

Definition at line 498 of file METAnalyzer.h.

◆ mePhotonEt

MonitorElement* METAnalyzer::mePhotonEt
private

Definition at line 373 of file METAnalyzer.h.

◆ mePhotonEt_profile

MonitorElement* METAnalyzer::mePhotonEt_profile
private

Definition at line 573 of file METAnalyzer.h.

◆ mePhotonEtFraction

MonitorElement* METAnalyzer::mePhotonEtFraction
private

Definition at line 372 of file METAnalyzer.h.

◆ mePhotonEtFraction_BXm1Empty

MonitorElement* METAnalyzer::mePhotonEtFraction_BXm1Empty
private

Definition at line 407 of file METAnalyzer.h.

◆ mePhotonEtFraction_BXm1Filled

MonitorElement* METAnalyzer::mePhotonEtFraction_BXm1Filled
private

Definition at line 428 of file METAnalyzer.h.

◆ mePhotonEtFraction_profile

MonitorElement* METAnalyzer::mePhotonEtFraction_profile
private

Definition at line 572 of file METAnalyzer.h.

◆ meSumET_BXm1Empty

MonitorElement* METAnalyzer::meSumET_BXm1Empty
private

Definition at line 411 of file METAnalyzer.h.

◆ meSumET_BXm1Filled

MonitorElement* METAnalyzer::meSumET_BXm1Filled
private

Definition at line 432 of file METAnalyzer.h.

◆ meSumET_profile

MonitorElement* METAnalyzer::meSumET_profile
private

Definition at line 570 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 545 of file METAnalyzer.h.

◆ MEyPFCand_

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

Definition at line 545 of file METAnalyzer.h.

◆ meZJets_u_par

MonitorElement* METAnalyzer::meZJets_u_par
private

Definition at line 583 of file METAnalyzer.h.

◆ meZJets_u_par_ZPt_0_15

MonitorElement* METAnalyzer::meZJets_u_par_ZPt_0_15
private

Definition at line 584 of file METAnalyzer.h.

◆ meZJets_u_par_ZPt_150_290

MonitorElement* METAnalyzer::meZJets_u_par_ZPt_150_290
private

Definition at line 589 of file METAnalyzer.h.

◆ meZJets_u_par_ZPt_15_30

MonitorElement* METAnalyzer::meZJets_u_par_ZPt_15_30
private

Definition at line 585 of file METAnalyzer.h.

◆ meZJets_u_par_ZPt_290

MonitorElement* METAnalyzer::meZJets_u_par_ZPt_290
private

Definition at line 590 of file METAnalyzer.h.

◆ meZJets_u_par_ZPt_30_55

MonitorElement* METAnalyzer::meZJets_u_par_ZPt_30_55
private

Definition at line 586 of file METAnalyzer.h.

◆ meZJets_u_par_ZPt_55_75

MonitorElement* METAnalyzer::meZJets_u_par_ZPt_55_75
private

Definition at line 587 of file METAnalyzer.h.

◆ meZJets_u_par_ZPt_75_150

MonitorElement* METAnalyzer::meZJets_u_par_ZPt_75_150
private

Definition at line 588 of file METAnalyzer.h.

◆ meZJets_u_perp

MonitorElement* METAnalyzer::meZJets_u_perp
private

Definition at line 592 of file METAnalyzer.h.

◆ meZJets_u_perp_ZPt_0_15

MonitorElement* METAnalyzer::meZJets_u_perp_ZPt_0_15
private

Definition at line 593 of file METAnalyzer.h.

◆ meZJets_u_perp_ZPt_150_290

MonitorElement* METAnalyzer::meZJets_u_perp_ZPt_150_290
private

Definition at line 598 of file METAnalyzer.h.

◆ meZJets_u_perp_ZPt_15_30

MonitorElement* METAnalyzer::meZJets_u_perp_ZPt_15_30
private

Definition at line 594 of file METAnalyzer.h.

◆ meZJets_u_perp_ZPt_290

MonitorElement* METAnalyzer::meZJets_u_perp_ZPt_290
private

Definition at line 599 of file METAnalyzer.h.

◆ meZJets_u_perp_ZPt_30_55

MonitorElement* METAnalyzer::meZJets_u_perp_ZPt_30_55
private

Definition at line 595 of file METAnalyzer.h.

◆ meZJets_u_perp_ZPt_55_75

MonitorElement* METAnalyzer::meZJets_u_perp_ZPt_55_75
private

Definition at line 596 of file METAnalyzer.h.

◆ meZJets_u_perp_ZPt_75_150

MonitorElement* METAnalyzer::meZJets_u_perp_ZPt_75_150
private

Definition at line 597 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 263 of file METAnalyzer.h.

◆ nPVMax_

double METAnalyzer::nPVMax_
private

Definition at line 265 of file METAnalyzer.h.

◆ nPVMin_

double METAnalyzer::nPVMin_
private

Definition at line 264 of file METAnalyzer.h.

◆ numPV_

int METAnalyzer::numPV_
private

Definition at line 289 of file METAnalyzer.h.

◆ onlyCleaned_

bool METAnalyzer::onlyCleaned_
private

Definition at line 273 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 563 of file METAnalyzer.h.

◆ pflowToken_

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

Definition at line 562 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 543 of file METAnalyzer.h.

◆ profilePFCand_x_name_

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

Definition at line 544 of file METAnalyzer.h.

◆ profilePFCand_y_

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

Definition at line 543 of file METAnalyzer.h.

◆ profilePFCand_y_name_

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

Definition at line 544 of file METAnalyzer.h.

◆ ptMinCand_

double METAnalyzer::ptMinCand_
private

Definition at line 540 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 272 of file METAnalyzer.h.

◆ triggerFolderDecisions_

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

Definition at line 231 of file METAnalyzer.h.

◆ triggerFolderEventFlag_

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

Definition at line 228 of file METAnalyzer.h.

◆ triggerFolderExpr_

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

Definition at line 229 of file METAnalyzer.h.

◆ triggerFolderLabels_

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

Definition at line 230 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 227 of file METAnalyzer.h.

◆ typePFCand_

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

Definition at line 546 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.