|
ATLAS Offline Software
|
#include <SUSYObjDef_xAOD.h>
|
| SUSYObjDef_xAOD (const std::string &name) |
|
| ~SUSYObjDef_xAOD () |
|
StatusCode | initialize () override final |
| Dummy implementation of the initialisation function. More...
|
|
bool | isData () const override final |
|
bool | isAtlfast () const override final |
|
StatusCode | setBoolProperty (const std::string &name, const bool &property) override final |
|
void | setDataSource (int source) |
|
StatusCode | FillJet (xAOD::Jet &input, const bool doCalib=true, bool isFat=false, bool doLargeRdecorations=false) override final |
|
StatusCode | FillTrackJet (xAOD::Jet &input) override final |
|
StatusCode | FillTau (xAOD::TauJet &input) override final |
|
StatusCode | FillMuon (xAOD::Muon &input, const float ptcut, const float etacut) override final |
|
StatusCode | FillElectron (xAOD::Electron &input, const float etcut, const float etacut) override final |
|
StatusCode | FillPhoton (xAOD::Photon &input, const float ptcut, const float etacut) override final |
|
const xAOD::Vertex * | GetPrimVtx () const override final |
|
StatusCode | GetJets (xAOD::JetContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=true, const std::string &jetkey="", const xAOD::JetContainer *containerToBeCopied=nullptr) override final |
|
StatusCode | GetTrackJets (xAOD::JetContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=true, const std::string &jetkey="", const xAOD::JetContainer *containerToBeCopied=nullptr) override final |
|
StatusCode | GetJetsSyst (const xAOD::JetContainer &calibjets, xAOD::JetContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=true, const std::string &jetkey="") override final |
|
StatusCode | GetFatJets (xAOD::JetContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=false, const std::string &jetkey="", const bool doLargeRdecorations=false, const xAOD::JetContainer *containerToBeCopied=nullptr) override final |
|
StatusCode | GetTaus (xAOD::TauJetContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=true, const std::string &taukey="TauJets", const xAOD::TauJetContainer *containerToBeCopied=nullptr) override final |
|
StatusCode | GetMuons (xAOD::MuonContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=true, const std::string &muonkey="Muons", const std::string &lrtmuonkey="MuonsLRT", const xAOD::MuonContainer *containerToBeCopied=nullptr) override final |
|
StatusCode | GetElectrons (xAOD::ElectronContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=true, const std::string &elekey="Electrons", const std::string &lrtelekey="LRTElectrons", const xAOD::ElectronContainer *containerToBeCopied=nullptr) override final |
|
StatusCode | GetPhotons (xAOD::PhotonContainer *©, xAOD::ShallowAuxContainer *©aux, const bool recordSG=true, const std::string &photonkey="Photons", const xAOD::PhotonContainer *containerToBeCopied=nullptr) override final |
|
StatusCode | GetMET (xAOD::MissingETContainer &met, const xAOD::JetContainer *jet, const xAOD::ElectronContainer *elec=nullptr, const xAOD::MuonContainer *muon=nullptr, const xAOD::PhotonContainer *gamma=nullptr, const xAOD::TauJetContainer *taujet=nullptr, bool doTST=true, bool doJVTCut=true, const xAOD::IParticleContainer *invis=nullptr) override final |
|
StatusCode | GetTrackMET (xAOD::MissingETContainer &met, const xAOD::JetContainer *jet, const xAOD::ElectronContainer *elec=nullptr, const xAOD::MuonContainer *muon=nullptr) override final |
|
StatusCode | GetMETSig (xAOD::MissingETContainer &met, double &metSignificance, bool doTST=true, bool doJVTCut=true) override final |
|
StatusCode | MergeMuons (const xAOD::MuonContainer &muons, const std::vector< bool > &writeMuon, xAOD::MuonContainer *outputCol) const override final |
|
StatusCode | prepareLRTMuons (const xAOD::MuonContainer *inMuons, xAOD::MuonContainer *copy) const override final |
|
StatusCode | MergeElectrons (const xAOD::ElectronContainer &electrons, xAOD::ElectronContainer *outputCol, const std::set< const xAOD::Electron * > &ElectronsToRemove) const override final |
|
StatusCode | prepareLRTElectrons (const xAOD::ElectronContainer *inMuons, xAOD::ElectronContainer *copy) const override final |
|
StatusCode | SetBtagWeightDecorations (const xAOD::Jet &input, const asg::AnaToolHandle< IBTaggingSelectionTool > &btagSelTool, const std::string &btagTagger) const override final |
|
bool | IsPFlowCrackVetoCleaning (const xAOD::ElectronContainer *elec=nullptr, const xAOD::PhotonContainer *gamma=nullptr) const override final |
|
bool | IsSignalJet (const xAOD::Jet &input, const float ptcut, const float etacut) const override final |
|
bool | IsBadJet (const xAOD::Jet &input) const override final |
|
bool | IsBJetLoose (const xAOD::Jet &input) const override final |
|
bool | JetPassJVT (xAOD::Jet &input) override final |
|
bool | IsSignalMuon (const xAOD::Muon &input, const float ptcut, const float d0sigcut, const float z0cut, const float etacut=DUMMYDEF) const override final |
|
bool | IsSignalElectron (const xAOD::Electron &input, const float etcut, const float d0sigcut, const float z0cut, const float etacut=DUMMYDEF) const override final |
|
bool | IsCosmicMuon (const xAOD::Muon &input, const float z0cut, const float d0cut) const override final |
|
bool | IsHighPtMuon (const xAOD::Muon &input) const override final |
|
bool | IsSignalTau (const xAOD::TauJet &input, const float ptcut, const float etacut) const override final |
|
bool | IsBadMuon (const xAOD::Muon &input, const float qopcut) const override final |
|
bool | IsSignalPhoton (const xAOD::Photon &input, const float ptcut, const float etacut=DUMMYDEF) const override final |
|
bool | IsBJet (const xAOD::Jet &input) const override final |
|
bool | IsTrackBJet (const xAOD::Jet &input) const override final |
|
bool | IsTruthBJet (const xAOD::Jet &input) const override final |
|
int | IsBJetContinuous (const xAOD::Jet &input) const override final |
|
int | IsTrackBJetContinuous (const xAOD::Jet &input) const override final |
|
float | BtagSF (const xAOD::JetContainer *jets) override final |
|
float | BtagSFsys (const xAOD::JetContainer *jets, const CP::SystematicSet &systConfig) override final |
|
float | BtagSF_trkJet (const xAOD::JetContainer *trkjets) override final |
|
float | BtagSFsys_trkJet (const xAOD::JetContainer *trkjets, const CP::SystematicSet &systConfig) override final |
|
double | JVT_SF (const xAOD::JetContainer *jets) override final |
|
double | JVT_SFsys (const xAOD::JetContainer *jets, const CP::SystematicSet &systConfig) override final |
|
double | FJVT_SF (const xAOD::JetContainer *jets) override final |
|
double | FJVT_SFsys (const xAOD::JetContainer *jets, const CP::SystematicSet &systConfig) override final |
|
float | GetSignalMuonSF (const xAOD::Muon &mu, const bool recoSF=true, const bool isoSF=true, const bool doBadMuonHP=true, const bool warnOVR=true) override final |
|
double | GetMuonTriggerEfficiency (const xAOD::Muon &mu, const std::string &trigExpr, const bool isdata=false) override final |
|
double | GetTotalMuonTriggerSF (const xAOD::MuonContainer &sfmuons, const std::string &trigExpr) override final |
|
double | GetTotalMuonSF (const xAOD::MuonContainer &muons, const bool recoSF=true, const bool isoSF=true, const std::string &trigExpr="HLT_mu20_iloose_L1MU15_OR_HLT_mu50", const bool bmhptSF=true) override final |
|
double | GetTotalMuonSFsys (const xAOD::MuonContainer &muons, const CP::SystematicSet &systConfig, const bool recoSF=true, const bool isoSF=true, const std::string &trigExpr="HLT_mu20_iloose_L1MU15_OR_HLT_mu50", const bool bmhptSF=true) override final |
|
float | GetSignalElecSF (const xAOD::Electron &el, const bool recoSF=true, const bool idSF=true, const bool triggerSF=true, const bool isoSF=true, const std::string &trigExpr="singleLepton", const bool ecidsSF=false, const bool cidSF=false) override final |
|
double | GetEleTriggerEfficiency (const xAOD::Electron &el, const std::string &trigExpr="SINGLE_E_2015_e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose_2016_2018_e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0") const override final |
|
double | GetTriggerGlobalEfficiency (const xAOD::ElectronContainer &electrons, const xAOD::MuonContainer &muons, const std::string &trigExpr="diLepton") override final |
|
double | GetTriggerGlobalEfficiency (const xAOD::PhotonContainer &photons, const std::string &trigExpr="diPhoton") override final |
|
double | GetEleTriggerEfficiencySF (const xAOD::Electron &el, const std::string &trigExpr="SINGLE_E_2015_e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose_2016_2018_e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0") const override final |
|
double | GetTriggerGlobalEfficiencySF (const xAOD::ElectronContainer &electrons, const xAOD::MuonContainer &muons, const std::string &trigExpr="diLepton") override final |
|
double | GetTriggerGlobalEfficiencySF (const xAOD::PhotonContainer &photons, const std::string &trigExpr="diPhoton") override final |
|
double | GetTriggerGlobalEfficiencySFsys (const xAOD::ElectronContainer &electrons, const xAOD::MuonContainer &muons, const CP::SystematicSet &systConfig, const std::string &trigExpr="diLepton") override final |
|
double | GetTriggerGlobalEfficiencySFsys (const xAOD::PhotonContainer &photons, const CP::SystematicSet &systConfig, const std::string &trigExpr="diPhoton") override final |
|
float | GetTotalElectronSF (const xAOD::ElectronContainer &electrons, const bool recoSF=true, const bool idSF=true, const bool triggerSF=true, const bool isoSF=true, const std::string &trigExpr="singleLepton", const bool ecidsSF=false, const bool cidSF=false) override final |
|
float | GetTotalElectronSFsys (const xAOD::ElectronContainer &electrons, const CP::SystematicSet &systConfig, const bool recoSF=true, const bool idSF=true, const bool triggerSF=true, const bool isoSF=true, const std::string &trigExpr="singleLepton", const bool ecidsSF=false, const bool cidSF=false) override final |
|
double | GetSignalTauSF (const xAOD::TauJet &tau, const bool idSF=true, const bool triggerSF=true, const std::string &trigExpr="tau25_medium1_tracktwo") override final |
|
double | GetSignalTauSFsys (const xAOD::TauJet &tau, const CP::SystematicSet &systConfig, const bool idSF=true, const bool triggerSF=true, const std::string &trigExpr="tau25_medium1_tracktwo") override final |
|
double | GetTauTriggerEfficiencySF (const xAOD::TauJet &tau, const std::string &trigExpr="tau25_medium1_tracktwo") override final |
|
double | GetTotalTauSF (const xAOD::TauJetContainer &taus, const bool idSF=true, const bool triggerSF=true, const std::string &trigExpr="tau25_medium1_tracktwo") override final |
|
double | GetTotalTauSFsys (const xAOD::TauJetContainer &taus, const CP::SystematicSet &systConfig, const bool idSF=true, const bool triggerSF=true, const std::string &trigExpr="tau25_medium1_tracktwo") override final |
|
double | GetSignalPhotonSF (const xAOD::Photon &ph, const bool effSF=true, const bool isoSF=true, const bool triggerSF=false) const override final |
|
double | GetSignalPhotonSFsys (const xAOD::Photon &ph, const CP::SystematicSet &systConfig, const bool effSF=true, const bool isoSF=true, const bool triggerSF=false) override final |
|
double | GetTotalPhotonSF (const xAOD::PhotonContainer &photons, const bool effSF=true, const bool isoSF=true, const bool triggerSF=false) const override final |
|
double | GetTotalPhotonSFsys (const xAOD::PhotonContainer &photons, const CP::SystematicSet &systConfig, const bool effSF=true, const bool isoSF=true, const bool triggerSF=false) override final |
|
double | GetTotalJetSF (const xAOD::JetContainer *jets, const bool btagSF=true, const bool jvtSF=true, const bool fjvtSF=false) override final |
|
double | GetTotalJetSFsys (const xAOD::JetContainer *jets, const CP::SystematicSet &systConfig, const bool btagSF=true, const bool jvtSF=true, const bool fjvtSF=false) override final |
|
bool | IsMETTrigPassed (unsigned int runnumber=0, bool j400_OR=false) const override final |
|
bool | IsMETTrigPassed (const std::string &triggerName, bool j400_OR=false) const override final |
|
bool | IsTrigPassed (const std::string &, unsigned int condition=TrigDefs::Physics) const override final |
|
bool | IsTrigMatched (const xAOD::IParticle *part, const std::string &tr_item) override final |
|
bool | IsTrigMatched (const xAOD::IParticle *part1, const xAOD::IParticle *part2, const std::string &tr_item) override final |
|
bool | IsTrigMatched (const std::vector< const xAOD::IParticle * > &v, const std::string &tr_item) override final |
|
bool | IsTrigMatched (const std::initializer_list< const xAOD::IParticle * > &v, const std::string &tr_item) override final |
|
void | TrigMatch (const xAOD::IParticle *p, std::initializer_list< std::string >::iterator, std::initializer_list< std::string >::iterator) override final |
|
void | TrigMatch (const xAOD::IParticle *p, const std::vector< std::string > &items) override final |
|
void | TrigMatch (const xAOD::IParticle *p, const std::initializer_list< std::string > &items) override final |
|
void | TrigMatch (const xAOD::IParticleContainer *v, const std::vector< std::string > &items) override final |
|
void | TrigMatch (const xAOD::IParticleContainer *v, const std::initializer_list< std::string > &items) override final |
|
void | TrigMatch (const std::initializer_list< const xAOD::IParticle * > &v, const std::vector< std::string > &items) override final |
|
void | TrigMatch (const std::initializer_list< const xAOD::IParticle * > &v, const std::initializer_list< std::string > &items) override final |
|
void | TrigMatch (const xAOD::IParticle *p, const std::string &item) override final |
|
void | TrigMatch (const xAOD::IParticleContainer *v, const std::string &item) override final |
|
void | TrigMatch (const std::initializer_list< const xAOD::IParticle * > &v, const std::string &item) override final |
|
float | GetTrigPrescale (const std::string &) const override final |
|
const Trig::ChainGroup * | GetTrigChainGroup (const std::string &) const override final |
|
std::vector< std::string > | GetTriggerOR (const std::string &trigExpr) const |
|
void | GetTriggerTokens (std::string, std::vector< std::string > &, std::vector< std::string > &, std::vector< std::string > &, std::vector< std::string > &, std::vector< std::string > &) const |
|
Trig::FeatureContainer | GetTriggerFeatures (const std::string &chainName="EF_.*", unsigned int condition=TrigDefs::Physics) const |
|
const xAOD::EventInfo * | GetEventInfo () const override final |
|
float | GetPileupWeight () override final |
|
float | GetPileupWeightPrescaledTrigger (const std::string &trigger_expr) override final |
|
ULong64_t | GetPileupWeightHash () override final |
|
float | GetDataWeight (const std::string &) override final |
|
float | GetCorrectedAverageInteractionsPerCrossing (bool includeDataSF=false) override final |
|
float | GetCorrectedActualInteractionsPerCrossing (bool includeDataSF=false) override final |
|
double | GetSumOfWeights (int channel) override final |
|
unsigned int | GetRandomRunNumber (bool muDependentRRN=true) override final |
|
StatusCode | ApplyPRWTool (bool muDependentRRN=true) override final |
|
unsigned int | GetRunNumber () const override final |
|
const xAOD::TrackParticleContainer & | GetInDetLargeD0Tracks (const EventContext &ctx) const override final |
|
const xAOD::TrackParticleContainer & | GetInDetLargeD0GSFTracks (const EventContext &ctx) const override final |
|
StatusCode | ApplyLRTUncertainty () override final |
|
int | treatAsYear (const int runNumber=-1) const override final |
|
StatusCode | OverlapRemoval (const xAOD::ElectronContainer *electrons, const xAOD::MuonContainer *muons, const xAOD::JetContainer *jets, const xAOD::PhotonContainer *gamma=nullptr, const xAOD::TauJetContainer *taujet=nullptr, const xAOD::JetContainer *fatjets=nullptr) override final |
|
StatusCode | NearbyLeptonCorrections (xAOD::ElectronContainer *electrons=nullptr, xAOD::MuonContainer *muons=nullptr) const override final |
|
StatusCode | resetSystematics () override final |
|
const CP::SystematicSet & | currentSystematic () const |
|
StatusCode | applySystematicVariation (const CP::SystematicSet &systConfig) override final |
|
bool | isPrompt (const xAOD::IParticle *part) const override final |
|
StatusCode | FindSusyHP (int &pdgid1, int &pdgid2) const |
|
StatusCode | FindSusyHP (const xAOD::TruthParticleContainer *truthP, int &pdgid1, int &pdgid2, bool isTruth3=false) const override final |
|
StatusCode | FindSusyHP (const xAOD::TruthEvent *truthE, int &pdgid1, int &pdgid2) const override final |
|
std::string | TrigSingleLep () const override final |
|
bool | isNominal (const CP::SystematicSet &syst) const |
|
bool | isWeight (const CP::SystematicSet &systSet) const |
|
bool | isVariation (const CP::SystematicSet &syst) const |
|
bool | currentSystematicIsNominal () const |
|
bool | currentSystematicIsVariation () const |
|
bool | currentSystematicIsWeight () const |
|
ST::SystInfo | getSystInfo (const CP::SystematicVariation &sys) const override final |
|
std::vector< ST::SystInfo > | getSystInfoList () const override final |
|
float | getSherpaVjetsNjetsWeight () const override final |
|
float | getSherpaVjetsNjetsWeight (const std::string &jetContainer) const override final |
|
int | getMCShowerType (const std::string &sample_name="", const std::string &tagger="") const override final |
|
template<typename T > |
const T * | getProperty (const std::string &name) |
|
virtual void | print () const =0 |
| Print the state of the tool. More...
|
|
virtual StatusCode | sysInitialize () |
| Function initialising the tool in the correct way in Athena. More...
|
|
virtual void | print () const |
| Print the state of the tool. More...
|
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
|
StatusCode | autoconfigurePileupRWTool (const std::string &PRWfilesDir="dev/PileupReweighting/share/", const std::string &PRWfileName="", bool usePathResolver=true, bool RPVLLmode=false, bool Combinedmode=false, const std::string &HFFilter="") |
|
StatusCode | readConfig () override final |
|
StatusCode | validConfig (bool strict=false) const |
|
const std::vector< std::string > | split (const std::string &s, const std::string &delim) const |
|
void | getTauConfig (const std::string &tauConfigPath, std::vector< float > &pT_window, std::vector< float > &eta_window, bool &eleOLR, bool &muVeto, bool &muOLR) const |
|
void | configFromFile (bool &property, const std::string &propname, TEnv &rEnv, bool defaultValue) |
|
void | configFromFile (double &property, const std::string &propname, TEnv &rEnv, double defaultValue) |
|
void | configFromFile (int &property, const std::string &propname, TEnv &rEnv, int defaultValue) |
|
void | configFromFile (std::string &property, const std::string &propname, TEnv &rEnv, const std::string &defaultValue, bool allowEmpty=false) |
|
bool | check_isOption (const std::string &wp, const std::vector< std::string > &list) const |
|
bool | check_isTighter (const std::string &wp1, const std::string &wp, const std::vector< std::string > &list) const |
|
std::string | EG_WP (const std::string &wp) const |
|
std::vector< std::string > | getElSFkeys (const std::string &mapFile) const |
|
void | renounceArray (SG::VarHandleKeyArray &handlesArray) |
| remove all handles from I/O resolution More...
|
|
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > | renounce (T &h) |
|
void | extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps) |
| Add StoreName to extra input/output deps as needed. More...
|
|
|
int | m_dataSource |
|
int | m_jetInputType |
|
std::string | m_configFile |
|
bool | m_force_noElId |
|
bool | m_force_noMuId |
|
bool | m_doTTVAsf |
|
bool | m_doModifiedEleId |
|
bool | m_upstreamTriggerMatching |
|
std::string | m_trigMatchingPrefix |
| Use composite trigger matching tool if matching was done upstream. More...
|
|
std::string | m_jetUncertaintiesConfig |
| Prefix for trigger matchiing container name. More...
|
|
std::string | m_jetUncertaintiesAnalysisFile |
|
std::string | m_jetUncertaintiesCalibArea |
|
std::string | m_jetUncertaintiesMCType |
|
bool | m_jetUncertaintiesPDsmearing |
|
bool | m_useBtagging |
|
bool | m_useBtagging_trkJet |
|
bool | m_debug |
|
bool | m_strictConfigCheck |
|
std::string | m_badJetCut |
|
std::string | m_fatJetUncConfig |
|
std::string | m_fatJetUncVars |
|
TEnv | m_WconfigReader |
|
TEnv | m_ZconfigReader |
|
TEnv | m_TopconfigReader |
|
std::string | m_WDecorName |
|
std::string | m_ZDecorName |
|
std::string | m_TopDecorName |
|
std::string | m_WtagConfig |
|
std::string | m_ZtagConfig |
|
std::string | m_ToptagConfig |
|
std::string | m_WZTaggerCalibArea |
|
std::string | m_TopTaggerCalibArea |
|
std::string | m_WTagUncConfig |
|
std::string | m_ZTagUncConfig |
|
std::string | m_TopTagUncConfig |
|
std::string | m_JetTruthLabelName |
|
bool | m_tool_init |
|
bool | m_subtool_init |
|
std::string | m_eleTerm |
|
std::string | m_gammaTerm |
|
std::string | m_tauTerm |
|
std::string | m_jetTerm |
|
std::string | m_muonTerm |
|
std::string | m_inputMETSuffix |
|
std::string | m_inputMETMap |
|
std::string | m_inputMETCore |
|
std::string | m_inputMETRef |
|
std::string | m_outMETTerm |
|
bool | m_metRemoveOverlappingCaloTaggedMuons |
|
bool | m_metDoSetMuonJetEMScale |
|
bool | m_metDoRemoveMuonJets |
|
bool | m_metUseGhostMuons |
|
bool | m_metDoMuonEloss |
|
bool | m_metGreedyPhotons |
|
bool | m_metVeryGreedyPhotons |
|
std::string | m_metsysConfigPrefix |
|
bool | m_trkMETsyst |
|
bool | m_caloMETsyst |
|
bool | m_trkJetsyst |
|
int | m_softTermParam |
|
bool | m_treatPUJets |
|
bool | m_doPhiReso |
|
bool | m_autoconfigPRW |
|
std::string | m_autoconfigPRWPath |
|
std::string | m_autoconfigPRWFile |
|
bool | m_autoconfigPRWCombinedmode |
|
bool | m_autoconfigPRWRPVmode |
|
std::string | m_autoconfigPRWRtags |
|
std::string | m_mcCampaign |
|
int | m_mcChannel |
|
bool | m_useCommonPRWFiles |
|
std::string | m_commonPRWFileMC20a |
|
std::string | m_commonPRWFileMC20d |
|
std::string | m_commonPRWFileMC20e |
|
std::string | m_commonPRWFileMC21a |
|
std::string | m_commonPRWFileMC23a |
|
std::string | m_commonPRWFileMC23c |
|
std::string | m_commonPRWFileMC23d |
|
std::string | m_commonPRWFileMC23e |
|
std::vector< std::string > | m_prwConfFiles |
|
std::vector< std::string > | m_prwLcalcFiles |
|
std::string | m_prwActualMu2017File |
|
std::string | m_prwActualMu2018File |
|
std::string | m_prwActualMu2022File |
|
std::string | m_prwActualMu2023File |
|
std::string | m_prwActualMu2024File |
|
double | m_prwDataSF |
|
double | m_prwDataSF_UP |
|
double | m_prwDataSF_DW |
|
bool | m_runDepPrescaleWeightPRW |
|
std::vector< std::string > | m_el_id_support |
|
std::vector< std::string > | m_ph_id_support |
|
int | m_mu_id_support |
|
std::vector< std::string > | m_tau_id_support |
|
std::vector< std::string > | m_el_iso_support |
|
std::vector< std::string > | m_mu_iso_support |
|
std::map< std::string, std::string > | m_el_iso_fallback |
|
std::map< std::string, std::string > | m_mu_iso_fallback |
|
std::string | m_electronTriggerSFStringSingle |
|
std::map< std::string, std::string > | m_tau_trig_support |
|
std::string | m_eleId |
|
std::string | m_eleIdBaseline |
|
std::string | m_eleConfig |
|
std::string | m_eleConfigBaseline |
|
std::string | m_eleBaselineIso_WP |
|
bool | m_eleIdExpert |
|
int | m_muId |
|
int | m_muIdBaseline |
|
std::string | m_photonId |
|
std::string | m_photonIdBaseline |
|
std::string | m_tauId |
|
std::string | m_tauIdBaseline |
|
std::string | m_eleIso_WP |
|
std::string | m_eleIsoHighPt_WP |
|
double | m_eleIsoHighPtThresh |
|
std::string | m_eleChID_WP |
|
bool | m_eleLRT |
|
int | m_eleLRT_strat |
|
bool | m_eleChIso |
|
bool | m_eleChID_signal |
|
bool | m_runECIS |
|
std::string | m_photonBaselineIso_WP |
|
std::string | m_photonIso_WP |
|
std::string | m_photonTriggerName |
|
std::string | m_muBaselineIso_WP |
|
std::string | m_muIso_WP |
|
std::string | m_muIsoHighPt_WP |
|
double | m_muIsoHighPtThresh |
|
bool | m_muHighPtExtraSmear |
|
bool | m_muEffCorrForce1D |
|
std::string | m_BtagWP |
|
std::string | m_BtagTagger |
|
double | m_BtagMinPt |
|
std::string | m_BtagKeyOverride |
|
std::string | m_BtagSystStrategy |
|
std::string | m_EigenvectorReductionB |
|
std::string | m_EigenvectorReductionC |
|
std::string | m_EigenvectorReductionLight |
|
std::string | m_BtagWP_trkJet |
|
std::string | m_BtagTagger_trkJet |
|
double | m_BtagMinPt_trkJet |
|
double | m_eleBaselinePt |
|
double | m_eleBaselineEta |
|
bool | m_eleBaselineCrackVeto |
|
double | m_elePt |
|
double | m_eleEta |
|
bool | m_eleCrackVeto |
|
double | m_eled0sig |
|
double | m_elez0 |
|
double | m_elebaselined0sig |
|
double | m_elebaselinez0 |
|
std::string | m_eleEffMapFilePath |
|
std::string | m_eleEffMapFilePathRun2 |
|
bool | m_eleAllowRun3TrigSFFallback |
|
bool | m_eleForceFullSimCalib |
|
double | m_muBaselinePt |
|
double | m_muBaselineEta |
|
double | m_muPt |
|
double | m_muEta |
|
double | m_mud0sig |
|
double | m_muz0 |
|
double | m_mubaselined0sig |
|
double | m_mubaselinez0 |
|
bool | m_murequirepassedHighPtCuts |
|
double | m_muCosmicz0 |
|
double | m_muCosmicd0 |
|
double | m_badmuQoverP |
|
int | m_muCalibrationMode |
|
bool | m_muLRT |
|
double | m_photonBaselinePt |
|
double | m_photonBaselineEta |
|
double | m_photonEta |
|
double | m_photonPt |
|
bool | m_photonBaselineCrackVeto |
|
bool | m_photonCrackVeto |
|
bool | m_photonAllowLate |
|
double | m_tauPrePtCut |
|
double | m_tauPt |
|
double | m_tauEta |
|
std::string | m_tauConfigPath |
|
std::string | m_tauConfigPathBaseline |
|
bool | m_tauDoTTM |
|
std::string | m_tauSmearingToolRecommendationTag |
|
std::string | m_tauSmearingToolGenerator |
|
TEnv | m_tauConfigReader |
|
double | m_jetPt |
|
double | m_jetEta |
|
double | m_jetJvt |
|
std::string | m_JvtWP |
|
double | m_JvtPtMax |
|
std::string | m_JvtConfigRun2 |
|
std::string | m_JvtConfigRun3 |
|
double | m_trkJetPt |
|
double | m_trkJetEta |
|
bool | m_doFwdJVT |
|
std::string | m_fJvtWP |
|
double | m_fJvtPtMax |
|
double | m_fJvtEtaMin |
|
std::string | m_fJvtConfigRun2 |
|
std::string | m_fJvtConfigRun3 |
|
bool | m_JMScalib |
|
bool | m_orDoTau |
| Overlap removal options. More...
|
|
bool | m_orDoPhoton |
|
bool | m_orDoEleJet |
|
bool | m_orDoElEl |
|
bool | m_orDoElMu |
|
bool | m_orDoMuonJet |
|
bool | m_orDoBjet |
|
bool | m_orDoElBjet |
|
bool | m_orDoMuBjet |
|
bool | m_orDoTauBjet |
|
bool | m_orDoBoostedElectron |
|
double | m_orBoostedElectronC1 |
|
double | m_orBoostedElectronC2 |
|
double | m_orBoostedElectronMaxConeSize |
|
bool | m_orDoBoostedMuon |
|
double | m_orBoostedMuonC1 |
|
double | m_orBoostedMuonC2 |
|
double | m_orBoostedMuonMaxConeSize |
|
bool | m_orApplyRelPt |
|
double | m_orMuJetPtRatio |
|
double | m_orMuJetTrkPtRatio |
|
double | m_orMuJetInnerDR |
|
bool | m_orDoMuonJetGhostAssociation |
|
bool | m_orRemoveCaloMuons |
|
std::string | m_orBtagWP |
|
std::string | m_orInputLabel |
|
bool | m_orPhotonFavoured |
|
double | m_orBJetPtUpperThres |
|
bool | m_orLinkOverlapObjects |
|
bool | m_orDoFatjets |
|
double | m_EleFatJetDR |
|
double | m_JetFatJetDR |
|
bool | m_doIsoSignal |
|
bool | m_doElIsoSignal |
|
bool | m_doPhIsoSignal |
|
bool | m_doMuIsoSignal |
|
bool | m_useSigLepForIsoCloseByOR |
|
std::string | m_IsoCloseByORpassLabel |
|
bool | m_useTRUTH3 |
|
std::map< std::string, bool > | m_slices |
|
bool | m_isRun3 |
|
bool | m_isPHYSLITE |
|
std::string | m_metJetSelection |
|
int | m_showerType |
|
std::string | m_defaultJets |
|
std::string | m_defaultTrackJets |
|
std::string | m_fatJets |
|
std::string | m_defaultTruthJets |
|
CP::SystematicSet | m_defaultSyst = CP::SystematicSet() |
|
CP::SystematicSet | m_currentSyst |
|
std::string | m_EG_corrModel |
|
std::string | m_EG_corrFNList |
|
bool | m_applyJVTCut |
|
std::string | m_bTaggingCalibrationFilePath |
|
std::map< std::string, std::string > | m_legsPerTool |
|
std::map< std::string, std::string > | m_legsPerTool_ph |
|
asg::AnaToolHandle< IJetCalibrationTool > | m_jetCalibTool |
|
asg::AnaToolHandle< IJetCalibrationTool > | m_jetFatCalibTool |
|
asg::AnaToolHandle< ICPJetUncertaintiesTool > | m_jetUncertaintiesTool |
|
asg::AnaToolHandle< ICPJetUncertaintiesTool > | m_jetUncertaintiesPDSmearTool |
|
asg::AnaToolHandle< ICPJetUncertaintiesTool > | m_fatjetUncertaintiesTool |
|
asg::AnaToolHandle< IJetSelector > | m_jetCleaningTool |
|
asg::AnaToolHandle< JetPileupLabelingTool > | m_jetPileupLabelingTool |
|
asg::AnaToolHandle< JetVertexTaggerTool > | m_jetJvtMomentTool |
|
asg::AnaToolHandle< JetPileupTag::JetVertexNNTagger > | m_jetNNJvtMomentTool |
|
asg::AnaToolHandle< IAsgSelectionTool > | m_jetNNJvtSelectionTool |
|
asg::AnaToolHandle< CP::IJvtEfficiencyTool > | m_jetNNJvtEfficiencyTool |
|
asg::AnaToolHandle< IAsgSelectionTool > | m_jetfJvtSelectionTool |
|
asg::AnaToolHandle< CP::IJvtEfficiencyTool > | m_jetfJvtEfficiencyTool |
|
asg::AnaToolHandle< SmoothedWZTagger > | m_WTaggerTool |
|
asg::AnaToolHandle< SmoothedWZTagger > | m_ZTaggerTool |
|
asg::AnaToolHandle< JSSWTopTaggerDNN > | m_TopTaggerTool |
|
asg::AnaToolHandle< JetTruthLabelingTool > | m_jetTruthLabelingTool |
|
asg::AnaToolHandle< ICPJetUncertaintiesTool > | m_WTagjetUncertaintiesTool |
|
asg::AnaToolHandle< ICPJetUncertaintiesTool > | m_ZTagjetUncertaintiesTool |
|
asg::AnaToolHandle< ICPJetUncertaintiesTool > | m_TopTagjetUncertaintiesTool |
|
SG::ReadDecorHandleKey< xAOD::JetContainer > | m_label_truthKey |
|
std::string | m_jesConfig |
|
std::string | m_jesConfigJMS |
|
std::string | m_jesConfigJMSData |
|
std::string | m_jesConfigAFII |
|
std::string | m_jesConfigFat |
|
std::string | m_jesConfigFatData |
|
std::string | m_jesCalibSeq |
|
std::string | m_jesCalibSeqJMS |
|
std::string | m_jesCalibSeqFat |
|
std::string | m_jesCalibArea |
|
asg::AnaToolHandle< CP::IMuonSelectionTool > | m_muonSelectionTool |
|
asg::AnaToolHandle< CP::IMuonSelectionTool > | m_muonSelectionHighPtTool |
|
asg::AnaToolHandle< CP::IMuonSelectionTool > | m_muonSelectionToolBaseline |
|
asg::AnaToolHandle< CP::IMuonCalibrationAndSmearingTool > | m_muonCalibTool |
|
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > | m_muonEfficiencySFTool |
|
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > | m_muonEfficiencyBMHighPtSFTool |
|
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > | m_muonTTVAEfficiencySFTool |
|
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > | m_muonIsolationSFTool |
|
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > | m_muonHighPtIsolationSFTool |
|
asg::AnaToolHandle< CP::IMuonTriggerScaleFactors > | m_muonTriggerSFTool |
|
ToolHandleArray< CP::IMuonTriggerScaleFactors > | m_muonTrigSFTools |
|
asg::AnaToolHandle< CP::IMuonLRTOverlapRemovalTool > | m_muonLRTORTool |
|
SG::WriteHandleKey< xAOD::MuonContainer > | m_outMuonLocation {this, "OutputMuonLocation", "StdWithLRTMuons", "name of the muon container to write"} |
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecEfficiencySFTool_reco |
| Combined muon collection. More...
|
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecEfficiencySFTool_id |
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecEfficiencySFTool_trig_singleLep |
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecEfficiencySFTool_trigEff_singleLep |
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecEfficiencySFTool_iso |
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecEfficiencySFTool_isoHighPt |
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecEfficiencySFTool_chf |
|
std::vector< asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > > | m_elecEfficiencySFTool_trig_mixLep |
|
std::vector< asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > > | m_elecEfficiencySFTool_trigEff_mixLep |
|
ToolHandleArray< IAsgElectronEfficiencyCorrectionTool > | m_elecTrigSFTools |
|
ToolHandleArray< IAsgElectronEfficiencyCorrectionTool > | m_elecTrigEffTools |
|
asg::AnaToolHandle< CP::IElectronLRTOverlapRemovalTool > | m_elecLRTORTool |
|
SG::WriteHandleKey< xAOD::ElectronContainer > | m_outElectronLocation {this, "OutputElectronLocation", "StdWithLRTElectrons", "name of the muon container to write"} |
|
asg::AnaToolHandle< CP::IEgammaCalibrationAndSmearingTool > | m_egammaCalibTool |
| Combined electron collection. More...
|
|
asg::AnaToolHandle< IAsgElectronLikelihoodTool > | m_elecSelLikelihood |
|
asg::AnaToolHandle< IAsgElectronLikelihoodTool > | m_elecSelLikelihoodBaseline |
|
asg::AnaToolHandle< IAsgPhotonIsEMSelector > | m_photonSelIsEM |
|
asg::AnaToolHandle< IAsgPhotonIsEMSelector > | m_photonSelIsEMBaseline |
|
asg::AnaToolHandle< IAsgDeadHVCellRemovalTool > | m_deadHVTool |
|
asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > | m_photonEfficiencySFTool |
|
asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > | m_photonIsolationSFTool |
|
asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > | m_photonTriggerSFTool |
|
std::vector< asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > > | m_photonEfficiencySFTool_trigSF_AsymDiphoton |
|
std::vector< asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > > | m_photonEfficiencySFTool_trigEff_AsymDiphoton |
|
ToolHandleArray< IAsgPhotonEfficiencyCorrectionTool > | m_photonTrigSFTools |
|
ToolHandleArray< IAsgPhotonEfficiencyCorrectionTool > | m_photonTrigEffTools |
|
asg::AnaToolHandle< IEGammaAmbiguityTool > | m_egammaAmbiguityTool |
|
asg::AnaToolHandle< IAsgElectronLikelihoodTool > | m_elecChargeIDSelectorTool |
|
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > | m_elecChargeEffCorrTool |
|
asg::AnaToolHandle< TauAnalysisTools::ITauSelectionTool > | m_tauSelTool |
|
asg::AnaToolHandle< TauAnalysisTools::ITauSelectionTool > | m_tauSelToolBaseline |
|
asg::AnaToolHandle< TauAnalysisTools::ITauSmearingTool > | m_tauSmearingTool |
|
asg::AnaToolHandle< TauAnalysisTools::ITauTruthMatchingTool > | m_tauTruthMatch |
|
asg::AnaToolHandle< TauAnalysisTools::ITauEfficiencyCorrectionsTool > | m_tauEffTool |
|
std::vector< asg::AnaToolHandle< TauAnalysisTools::ITauEfficiencyCorrectionsTool > > | m_tauTrigEffTool |
|
asg::AnaToolHandle< IBTaggingEfficiencyTool > | m_btagEffTool |
|
asg::AnaToolHandle< IBTaggingSelectionTool > | m_btagSelTool |
|
asg::AnaToolHandle< IBTaggingSelectionTool > | m_btagSelTool_OR |
|
asg::AnaToolHandle< IBTaggingEfficiencyTool > | m_btagEffTool_trkJet |
|
asg::AnaToolHandle< IBTaggingSelectionTool > | m_btagSelTool_trkJet |
|
asg::AnaToolHandle< IMETMaker > | m_metMaker |
|
asg::AnaToolHandle< IMETSystematicsTool > | m_metSystTool |
|
asg::AnaToolHandle< IMETSignificance > | m_metSignif |
|
std::string | m_trig2015combination_singleLep |
|
std::string | m_trig2016combination_singleLep |
|
std::string | m_trig2017combination_singleLep |
|
std::string | m_trig2018combination_singleLep |
|
std::string | m_trig2022combination_singleLep |
|
int | m_trigNToys_diLep |
|
std::string | m_trig2015combination_diLep |
|
std::string | m_trig2016combination_diLep |
|
std::string | m_trig2017combination_diLep |
|
std::string | m_trig2018combination_diLep |
|
std::string | m_trig2022combination_diLep |
|
asg::AnaToolHandle< ITrigGlobalEfficiencyCorrectionTool > | m_trigGlobalEffCorrTool_diLep |
|
int | m_trigNToys_multiLep |
|
std::string | m_trig2015combination_multiLep |
|
std::string | m_trig2016combination_multiLep |
|
std::string | m_trig2017combination_multiLep |
|
std::string | m_trig2018combination_multiLep |
|
std::string | m_trig2022combination_multiLep |
|
asg::AnaToolHandle< ITrigGlobalEfficiencyCorrectionTool > | m_trigGlobalEffCorrTool_multiLep |
|
int | m_trigNToys_diPhoton |
|
std::string | m_trig2015combination_diPhoton |
|
std::string | m_trig2016combination_diPhoton |
|
std::string | m_trig2017combination_diPhoton |
|
std::string | m_trig2018combination_diPhoton |
|
std::string | m_trig2022combination_diPhoton |
|
asg::AnaToolHandle< ITrigGlobalEfficiencyCorrectionTool > | m_trigGlobalEffCorrTool_diPhoton |
|
asg::AnaToolHandle< TrigConf::ITrigConfigTool > | m_trigConfTool |
|
asg::AnaToolHandle< Trig::TrigDecisionTool > | m_trigDecTool |
|
asg::AnaToolHandle< Trig::IMatchingTool > | m_trigMatchingTool |
|
asg::AnaToolHandle< Trig::IMatchScoringTool > | m_trigMatchScoringTool |
|
asg::AnaToolHandle< Trig::IMatchScoringTool > | m_trigDRScoringTool |
|
asg::AnaToolHandle< CP::IIsolationCorrectionTool > | m_isoCorrTool |
|
asg::AnaToolHandle< CP::IIsolationSelectionTool > | m_isoTool |
|
asg::AnaToolHandle< CP::IIsolationSelectionTool > | m_isoBaselineTool |
|
asg::AnaToolHandle< CP::IIsolationSelectionTool > | m_isoHighPtTool |
|
asg::AnaToolHandle< CP::IIsolationCloseByCorrectionTool > | m_isoCloseByTool |
|
asg::AnaToolHandle< CP::IPileupReweightingTool > | m_prwTool |
|
asg::AnaToolHandle< InDet::IInclusiveTrackFilterTool > | m_LRTuncTool |
|
asg::AnaToolHandle< ORUtils::IOverlapTool > | m_tauJetORtool |
|
ORUtils::ToolBox | m_orToolbox |
|
asg::AnaToolHandle< IWeightTool > | m_pmgSHnjetWeighter |
|
asg::AnaToolHandle< IWeightTool > | m_pmgSHnjetWeighterWZ |
|
std::string | m_eleIdBaselineDFName |
|
std::string | m_eleIdDFName |
|
std::string | m_photonIdBaselineDFName |
|
std::string | m_photonIdDFName |
|
std::string | m_jetCleanDFName |
|
SG::ConstAccessor< char > | m_acc_eleIdBaseline |
|
SG::ConstAccessor< char > | m_acc_eleId |
|
SG::ConstAccessor< char > | m_acc_photonIdBaseline |
|
SG::ConstAccessor< char > | m_acc_photonId |
|
SG::ConstAccessor< char > | m_acc_jetClean |
|
Definition at line 140 of file SUSYObjDef_xAOD.h.
◆ MetaStore_t
◆ MetaStorePtr_t
Type of the metadata store pointer in standalone mode.
Definition at line 68 of file AsgMetadataTool.h.
◆ StoreGateSvc_t
◆ DataSource
◆ SUSYObjDef_xAOD()
ST::SUSYObjDef_xAOD::SUSYObjDef_xAOD |
( |
const std::string & |
name | ) |
|
Override for the b-tagging jet collection
Definition at line 101 of file SUSYObjDef_xAOD.cxx.
318 m_slices(std::map<std::string,bool>()),
809 "FCLoose",
"FCTight",
813 "TightTrackOnly_VarRad",
"TightTrackOnly_FixedRad",
814 "Tight_VarRad",
"Loose_VarRad",
815 "PLVLoose",
"PLVTight",
816 "PLImprovedTight",
"PLImprovedVeryTight"
821 "PflowLoose_FixedRad",
"PflowLoose_VarRad",
"PflowTight_FixedRad",
"PflowTight_VarRad",
822 "TightTrackOnly_FixedRad",
"TightTrackOnly_VarRad",
"HighPtTrackOnly",
823 "PLVLoose",
"PLVTight",
824 "Loose_VarRad",
"Loose_FixedRad",
"Tight_VarRad",
"Tight_FixedRad",
825 "PLImprovedTight",
"PLImprovedVeryTight"
◆ ~SUSYObjDef_xAOD()
ST::SUSYObjDef_xAOD::~SUSYObjDef_xAOD |
( |
| ) |
|
Definition at line 3084 of file SUSYObjDef_xAOD.cxx.
3086 #ifdef XAOD_STANDALONE
3092 if (asg::ToolStore::contains<Trig::TrigDecisionTool>(
"ToolSvc.TrigDecisionTool") ){
◆ ApplyLRTUncertainty()
StatusCode ST::SUSYObjDef_xAOD::ApplyLRTUncertainty |
( |
| ) |
|
|
finaloverridevirtual |
◆ ApplyPRWTool()
StatusCode ST::SUSYObjDef_xAOD::ApplyPRWTool |
( |
bool |
muDependentRRN = true | ) |
|
|
finaloverridevirtual |
◆ applySystematicVariation()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 2119 of file SUSYObjDef_xAOD.cxx.
2123 return StatusCode::FAILURE;
2126 ATH_MSG_DEBUG(
" in SUSYObjDef_xAOD::applySystematicVariation \"" << systConfig.
name() <<
"\" size " << systConfig.
size());
2134 if ( ret != StatusCode::SUCCESS) {
2135 ATH_MSG_VERBOSE(
"Cannot configure JetUncertaintiesTool for systematic var. " << systConfig.
name() );
2137 ATH_MSG_VERBOSE(
"Configured JetUncertaintiesTool for systematic var. " << systConfig.
name() );
2142 if ( ret != StatusCode::SUCCESS) {
2143 ATH_MSG_VERBOSE(
"Cannot configure JetUncertaintiesPDSmearTool for systematic var. " << systConfig.
name() );
2145 ATH_MSG_VERBOSE(
"Configured JetUncertaintiesPDSmearTool for systematic var. " << systConfig.
name() );
2150 if ( ret != StatusCode::SUCCESS) {
2151 ATH_MSG_VERBOSE(
"Cannot configure (Fat)JetUncertaintiesTool (WTag) for systematic var. " << systConfig.
name() );
2153 ATH_MSG_VERBOSE(
"Configured (Fat)JetUncertaintiesTool (WTag) for systematic var. " << systConfig.
name() );
2158 if ( ret != StatusCode::SUCCESS) {
2159 ATH_MSG_VERBOSE(
"Cannot configure (Fat)JetUncertaintiesTool (ZTag) for systematic var. " << systConfig.
name() );
2161 ATH_MSG_VERBOSE(
"Configured (Fat)JetUncertaintiesTool (ZTag) for systematic var. " << systConfig.
name() );
2167 if ( ret != StatusCode::SUCCESS) {
2168 ATH_MSG_VERBOSE(
"Cannot configure (Fat)JetUncertaintiesTool (TopTag) for systematic var. " << systConfig.
name() );
2170 ATH_MSG_VERBOSE(
"Configured (Fat)JetUncertaintiesTool (TopTag) for systematic var. " << systConfig.
name() );
2175 if ( ret != StatusCode::SUCCESS) {
2176 ATH_MSG_VERBOSE(
"Cannot configure (Fat)JetUncertaintiesTool (main) for systematic var. " << systConfig.
name() );
2178 ATH_MSG_VERBOSE(
"Configured (Fat)JetUncertaintiesTool (main) for systematic var. " << systConfig.
name() );
2183 if ( ret != StatusCode::SUCCESS) {
2184 ATH_MSG_VERBOSE(
"Cannot configure NNJvtEfficiency for systematic var. " << systConfig.
name() );
2191 if ( ret != StatusCode::SUCCESS) {
2192 ATH_MSG_VERBOSE(
"Cannot configure fJvtEfficiency for systematic var. " << systConfig.
name() );
2199 if (ret != StatusCode::SUCCESS) {
2200 ATH_MSG_ERROR(
"Cannot configure MuonCalibTool for systematic var. " << systConfig.
name() );
2208 if ( ret != StatusCode::SUCCESS) {
2209 ATH_MSG_ERROR(
"Cannot configure MuonEfficiencyScaleFactors for systematic var. " << systConfig.
name() );
2212 ATH_MSG_VERBOSE(
"MuonEfficiencyScaleFactors configured for systematic var. " << systConfig.
name() );
2217 if ( ret != StatusCode::SUCCESS) {
2218 ATH_MSG_ERROR(
"Cannot configure MuonBadMuonHighPtScaleFactors for systematic var. " << systConfig.
name() );
2221 ATH_MSG_VERBOSE(
"MuonBadMuonHighPtScaleFactors configured for systematic var. " << systConfig.
name() );
2226 if ( ret != StatusCode::SUCCESS) {
2227 ATH_MSG_ERROR(
"Cannot configure MuonTTVAEfficiencyScaleFactors for systematic var. " << systConfig.
name() );
2230 ATH_MSG_VERBOSE(
"MuonTTVAEfficiencyScaleFactors configured for systematic var. " << systConfig.
name() );
2235 if ( ret != StatusCode::SUCCESS) {
2236 ATH_MSG_ERROR(
"Cannot configure MuonIsolationScaleFactors for systematic var. " << systConfig.
name() );
2239 ATH_MSG_VERBOSE(
"MuonIsolationScaleFactors configured for systematic var. " << systConfig.
name() );
2244 if ( ret != StatusCode::SUCCESS) {
2245 ATH_MSG_ERROR(
"Cannot configure MuonTriggerScaleFactors for systematic var. " << systConfig.
name() );
2248 ATH_MSG_VERBOSE(
"MuonTriggerScaleFactors configured for systematic var. " << systConfig.
name() );
2253 if (ret != StatusCode::SUCCESS) {
2254 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (reco) for systematic var. " << systConfig.
name() );
2257 ATH_MSG_VERBOSE(
"AsgElectronEfficiencyCorrectionTool (reco) configured for systematic var. " << systConfig.
name() );
2262 if (ret != StatusCode::SUCCESS) {
2263 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (id) for systematic var. " << systConfig.
name() );
2266 ATH_MSG_VERBOSE(
"AsgElectronEfficiencyCorrectionTool (id) configured for systematic var. " << systConfig.
name() );
2271 if (ret != StatusCode::SUCCESS) {
2272 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (trigger) for systematic var. " << systConfig.
name() );
2275 ATH_MSG_VERBOSE(
"AsgElectronEfficiencyCorrectionTool (trigger) configured for systematic var. " << systConfig.
name() );
2280 if (ret != StatusCode::SUCCESS) {
2281 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (trigger SFTool) for systematic var. " << systConfig.
name() );
2284 ATH_MSG_VERBOSE(
"AsgElectronEfficiencyCorrectionTool (trigger SFTool) configured for systematic var. " << systConfig.
name() );
2290 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2291 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_elecTrigEffTools (dilepton trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2294 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2295 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_elecTrigSFTools (dilepton trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2298 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2299 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_muonTrigSFTools (dilepton trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2301 if (ret != StatusCode::SUCCESS) {
2302 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (dilepton trigger) for systematic var. " << systConfig.
name() );
2305 ATH_MSG_VERBOSE(
"TrigGlobalEfficiencyCorrectionTool (dilepton trigger) configured for systematic var. " << systConfig.
name() );
2311 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2312 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_elecTrigEffTools (multilep trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2315 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2316 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_elecTrigSFTools (multilep trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2319 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2320 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_muonTrigSFTools (multilep trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2322 if (ret != StatusCode::SUCCESS) {
2323 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (multi-lepton trigger) for systematic var. " << systConfig.
name() );
2326 ATH_MSG_VERBOSE(
"TrigGlobalEfficiencyCorrectionTool (multi-lepton trigger) configured for systematic var. " << systConfig.
name() );
2331 if (ret != StatusCode::SUCCESS) {
2332 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (iso) for systematic var. " << systConfig.
name() );
2335 ATH_MSG_VERBOSE(
"AsgElectronEfficiencyCorrectionTool (iso) configured for systematic var. " << systConfig.
name() );
2340 if (ret != StatusCode::SUCCESS) {
2341 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (iso high-pt) for systematic var. " << systConfig.
name() );
2344 ATH_MSG_VERBOSE(
"AsgElectronEfficiencyCorrectionTool (iso high-pt) configured for systematic var. " << systConfig.
name() );
2349 if (ret != StatusCode::SUCCESS) {
2350 ATH_MSG_ERROR(
"Cannot configure ElectronChargeEffCorrectionTool for systematic var. " << systConfig.
name() );
2353 ATH_MSG_VERBOSE(
"ElectronChargeEffCorrectionTool configured for systematic var. " << systConfig.
name() );
2358 if (ret != StatusCode::SUCCESS) {
2359 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (reco) for systematic var. " << systConfig.
name() );
2362 ATH_MSG_VERBOSE(
"AsgPhotonEfficiencyCorrectionTool (reco) configured for systematic var. " << systConfig.
name() );
2367 if (ret != StatusCode::SUCCESS) {
2368 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (iso) for systematic var. " << systConfig.
name() );
2371 ATH_MSG_VERBOSE(
"AsgPhotonEfficiencyCorrectionTool configured (iso) for systematic var. " << systConfig.
name() );
2376 if (ret != StatusCode::SUCCESS) {
2377 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (trigger) for systematic var. " << systConfig.
name() );
2380 ATH_MSG_VERBOSE(
"AsgPhotonEfficiencyCorrectionTool configured (trigger) for systematic var. " << systConfig.
name() );
2386 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2387 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_photonTrigEffTools (diphoton trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2390 StatusCode ret1 = sfop->applySystematicVariation(systConfig);
2391 if (ret1 != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure m_photonTrigSFTools (diphoton trigger) for systematic var. " << systConfig.
name() );
return ret1; }
2393 if (ret != StatusCode::SUCCESS) {
2394 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (diphoton trigger) for systematic var. " << systConfig.
name() );
2397 ATH_MSG_VERBOSE(
"TrigGlobalEfficiencyCorrectionTool (diphoton trigger) configured for systematic var. " << systConfig.
name() );
2402 if (ret != StatusCode::SUCCESS) {
2403 ATH_MSG_ERROR(
"Cannot configure EgammaCalibrationAndSmearingTool for systematic var. " << systConfig.
name() );
2406 ATH_MSG_VERBOSE(
"EgammaCalibrationAndSmearingTool configured for systematic var. " << systConfig.
name() );
2411 if (ret != StatusCode::SUCCESS) {
2412 ATH_MSG_ERROR(
"Cannot configure IsolationCorrectionTool for systematic var. " << systConfig.
name() );
2415 ATH_MSG_VERBOSE(
"IsolationCorrectionTool configured for systematic var. " << systConfig.
name() );
2421 if ( ret != StatusCode::SUCCESS) {
2422 ATH_MSG_ERROR(
"Cannot configure xAODBTaggingEfficiency for systematic var. " << systConfig.
name() );
2425 ATH_MSG_VERBOSE(
"Configured xAODBTaggingEfficiency for systematic var. " << systConfig.
name() );
2431 if ( ret != StatusCode::SUCCESS) {
2432 ATH_MSG_ERROR(
"Cannot configure xAODBTaggingEfficiency (track jets) for systematic var. " << systConfig.
name() );
2435 ATH_MSG_VERBOSE(
"Configured xAODBTaggingEfficiency (track jets) for systematic var. " << systConfig.
name() );
2440 if ( ret != StatusCode::SUCCESS) {
2441 ATH_MSG_ERROR(
"Cannot configure TauSmearingTool for systematic var. " << systConfig.
name() );
2449 if ( ret != StatusCode::SUCCESS) {
2450 ATH_MSG_ERROR(
"Cannot configure TauEfficiencyCorrectionsTool for systematic var. " << systConfig.
name() );
2453 ATH_MSG_VERBOSE(
"Configured TauEfficiencyCorrectionsTool for systematic var. " << systConfig.
name() );
2458 if (ret != StatusCode::SUCCESS) {
2459 ATH_MSG_ERROR(
"Cannot configure " <<
tool->name() <<
" for systematic var. " << systConfig.
name() );
2467 if ( ret != StatusCode::SUCCESS) {
2468 ATH_MSG_ERROR(
"Cannot configure METSystematicsTool for systematic var. " << systConfig.
name() );
2471 ATH_MSG_VERBOSE(
"Configured METSystematicsTool for systematic var. " << systConfig.
name() );
2476 if ( ret != StatusCode::SUCCESS) {
2477 ATH_MSG_ERROR(
"Cannot configure PileupReweightingTool for systematic var. " << systConfig.
name() );
2480 ATH_MSG_VERBOSE(
"Configured PileupReweightingTool for systematic var. " << systConfig.
name() );
2486 if ( ret != StatusCode::SUCCESS) {
2487 ATH_MSG_ERROR(
"Cannot configure InDetTrackFilterTool for systematic var. " << systConfig.
name() );
2490 ATH_MSG_VERBOSE(
"Configured InDetTrackFilterTool for systematic var. " << systConfig.
name() );
2494 return StatusCode::SUCCESS;
◆ autoconfigurePileupRWTool()
StatusCode ST::SUSYObjDef_xAOD::autoconfigurePileupRWTool |
( |
const std::string & |
PRWfilesDir = "dev/PileupReweighting/share/" , |
|
|
const std::string & |
PRWfileName = "" , |
|
|
bool |
usePathResolver = true , |
|
|
bool |
RPVLLmode = false , |
|
|
bool |
Combinedmode = false , |
|
|
const std::string & |
HFFilter = "" |
|
) |
| |
|
protected |
Definition at line 1001 of file SUSYObjDef_xAOD.cxx.
1005 std::string prwConfigFile(
"");
1009 prwConfigFile = PRWfilesDir;
1013 std::string mcCampaignMD(
"");
1014 std::string simFlavour(
"");
1015 std::string simType(
"");
1020 std::map<std::string,std::vector<std::string>> PRWRtags = {};
1021 std::string allcampaigns =
"mc20a.mc20d.mc20e.mc21a.mc23a.mc23c.mc23d.mc23e";
1022 bool standard_like =
true;
1024 std::string icampaign = campaign_rtags.substr(0, campaign_rtags.find(
":"));
1025 std::vector<std::string> irtags =
split( campaign_rtags.substr(campaign_rtags.find(
":")+1),
"_" );
1026 PRWRtags[icampaign] = irtags;
1027 ATH_MSG_DEBUG(
"PRW autoconfigure considering rtags " << campaign_rtags.substr(campaign_rtags.find(
"_")+1) <<
" for campaign " << icampaign );
1029 for (
const auto&
x : PRWRtags ) {
1030 if ( allcampaigns.find(
x.first)==string::npos ) {
1033 return StatusCode::FAILURE;
1043 if(simFlavour.starts_with(
"ATLFASTII")) simType =
"AFII";
1044 else if(simFlavour.starts_with(
"ATLFAST3")) simType =
"AF3";
1045 else simType =
"FS";
1048 while ( mcCampaignMD.empty() ) {
1049 for (
const auto& campaign_rtags : PRWRtags ) {
1050 for (
const auto& rtag: campaign_rtags.second ) {
1051 if (
found)
continue;
1052 if (
amiTag.find(rtag)!=string::npos) {
1053 mcCampaignMD = campaign_rtags.first.substr(0,5);
1054 standard_like = (campaign_rtags.first.find(
"ns")?
true:
false);
1061 ATH_MSG_ERROR(
"autoconfigurePileupRWTool(): unrecognized xAOD::FileMetaData::amiTag, \'" <<
amiTag <<
"'. Please check your input sample.");
1062 return StatusCode::FAILURE;
1065 ATH_MSG_INFO(
"Setting up autoconfigurePileupRWTool for mc campaign " << mcCampaignMD <<
" (from amiTag " <<
amiTag <<
") (standard-like = " << (standard_like?
"true":
"false") <<
")." );
1066 if ( (!standard_like) && (!RPVLLmode) )
1067 ATH_MSG_WARNING(
"Non-standard r-tag found (" <<
amiTag.data() <<
"), but RPVLLmode not set. Perhaps you want to set \"PRW.autoconfigPRWRPVmode: 1\" in the config?");
1070 #ifndef XAOD_STANDALONE
1071 ATH_MSG_ERROR(
"autoconfigurePileupRWTool(): access to FileMetaData failed, can't get mc channel number.");
1072 return StatusCode::FAILURE;
1078 ATH_MSG_WARNING(
"autoconfigurePileupRWTool(): access to FileMetaData failed -> getting the mc channel number (DSID) and campaign from configuration." );
1079 std::string NoMetadataButPropertyOK(
"");
1080 NoMetadataButPropertyOK +=
"autoconfigurePileupRWTool(): 'mcCampaign' is used and passed to SUSYTools as '";
1082 NoMetadataButPropertyOK +=
"'. 'mcChannel' is used and passed to SUSYTools as '";
1084 NoMetadataButPropertyOK +=
"'. Autocongiguring PRW accordingly.";
1090 ATH_MSG_WARNING(
"autoconfigurePileupRWTool(): access to FileMetaData failed -> getting the mc channel number (DSID) from the event store." );
1094 std::string NoMetadataButPropertyOK(
"");
1095 NoMetadataButPropertyOK +=
"autoconfigurePileupRWTool(): 'mcCampaign' is used and passed to SUSYTools as '";
1097 NoMetadataButPropertyOK +=
"'. Autoconfiguring PRW accordingly.";
1102 ATH_MSG_ERROR(
"autoconfigurePileupRWTool(): `mcCampaign' is not set properly.");
1103 return StatusCode::FAILURE;
1110 ATH_MSG_INFO(
"autoconfigurePileupRWTool(): retrieving the common PRW file for MC campaign: " << mcCampaignMD );
1120 ATH_MSG_ERROR(
"autoconfigurePileupRWTool(): no common PRW file known for MC campaign: " << mcCampaignMD);
1121 return StatusCode::FAILURE;
1127 int DSID_INT =
static_cast<int>(
dsid);
1128 prwConfigFile +=
"DSID" +
std::to_string(DSID_INT/1000) +
"xxx/pileup_" + mcCampaignMD +
"_dsid" +
std::to_string(DSID_INT) +
"_" + simType +
".root";
1130 if (RPVLLmode) prwConfigFile = TString(prwConfigFile).ReplaceAll(
".root",
"_rpvll.root").Data();
1134 if (!PRWfileName.empty()) {
1135 prwConfigFile = PRWfilesDir + PRWfileName;
1136 ATH_MSG_INFO(
"autoconfigurePileupRWTool(): PRW file was specifed by user: " << prwConfigFile.data() );
1144 if (mcCampaignMD.find(
"mc20") == std::string::npos) {
1145 ATH_MSG_ERROR(
"autoconfigurePileupRWTool(): combined mode currently onlys supported for mc20! Impossible to autoconfigure PRW. Aborting." );
1146 return StatusCode::FAILURE;
1156 m_prwConfFiles.emplace_back( TString(prwConfigFile).ReplaceAll(mcCampaignMD,
"mc20a").
Data() );
1157 m_prwConfFiles.emplace_back( TString(prwConfigFile).ReplaceAll(mcCampaignMD,
"mc20d").
Data() );
1158 m_prwConfFiles.emplace_back( TString(prwConfigFile).ReplaceAll(mcCampaignMD,
"mc20e").
Data() );
1164 if ( mcCampaignMD ==
"mc20d") {
1166 }
else if (mcCampaignMD ==
"mc20e") {
1168 }
else if (mcCampaignMD ==
"mc21a" || mcCampaignMD ==
"mc23a") {
1170 }
else if (mcCampaignMD ==
"mc23c" || mcCampaignMD ==
"mc23d") {
1172 }
else if (mcCampaignMD ==
"mc23e") {
1180 TFile testF(prwConfigFile.data(),
"read");
1181 if (testF.IsZombie()) {
1182 ATH_MSG_ERROR(
"autoconfigurePileupRWTool(): file not found -> " << prwConfigFile.data() <<
" ! Impossible to autoconfigure PRW. Aborting." );
1183 if ( (!standard_like) && (!RPVLLmode) )
1184 ATH_MSG_WARNING(
"Running with non-standard r-tag (" <<
amiTag.data() <<
"), but RPVLLmode not set. Perhaps you want to set \"PRW.autoconfigPRWRPVmode: 1\" in the config?");
1185 return StatusCode::FAILURE;
1188 ATH_MSG_INFO(
"autoconfigurePileupRWTool(): configuring PRW tool using " << prwConfigFile.data() );
1191 return StatusCode::SUCCESS;
◆ beginEvent()
StatusCode asg::AsgMetadataTool::beginEvent |
( |
| ) |
|
|
protectedvirtualinherited |
Function called when a new events is loaded.
Dummy implementation that can be overridden by the derived tool.
Reimplemented in AsgElectronEfficiencyCorrectionTool, TrigConf::xAODConfigTool, TauAnalysisTools::TauSelectionTool, TauAnalysisTools::DiTauSelectionTool, TauAnalysisTools::CommonSmearingTool, TauAnalysisTools::DiTauEfficiencyCorrectionsTool, Trig::TrigDecisionTool, TauAnalysisTools::TauEfficiencyCorrectionsTool, Trig::TrigConfBunchCrossingTool, xAODMaker::TriggerMenuMetaDataTool, and Trig::xAODBunchCrossingTool.
Definition at line 196 of file AsgMetadataTool.cxx.
199 return StatusCode::SUCCESS;
◆ beginInputFile()
StatusCode asg::AsgMetadataTool::beginInputFile |
( |
| ) |
|
|
protectedvirtualinherited |
Function called when a new input file is opened.
Dummy implementation that can be overridden by the derived tool.
Reimplemented in AsgElectronEfficiencyCorrectionTool, TrigConf::xAODConfigTool, PMGTools::PMGTruthWeightTool, BookkeeperTool, xAODMaker::FileMetaDataTool, BookkeeperDumperTool, Trig::TrigDecisionTool, xAODMaker::TriggerMenuMetaDataTool, xAODMaker::TruthMetaDataTool, Trig::xAODBunchCrossingTool, TauAnalysisTools::TauEfficiencyCorrectionsTool, and TauAnalysisTools::TauSmearingTool.
Definition at line 180 of file AsgMetadataTool.cxx.
183 return StatusCode::SUCCESS;
◆ BtagSF()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 791 of file Jets.cxx.
798 if ( std::abs(
jet->eta()) > 2.5 ) {
799 ATH_MSG_VERBOSE(
"Trying to retrieve b-tagging SF for jet with |eta|>2.5 (jet eta=" <<
jet->eta() <<
"), jet will be skipped");
800 }
else if (
jet->pt() < 20
e3 ){
801 ATH_MSG_VERBOSE(
"Trying to retrieve b-tagging SF for jet with invalid pt (jet pt=" <<
jet->pt() <<
"), jet will be skipped");
806 if (!
jet->getAttribute(
"HadronConeExclTruthLabelID", truthlabel)) {
817 ATH_MSG_ERROR(
"Failed to retrieve SF for b-tagged jets in SUSYTools_xAOD::BtagSF" );
820 ATH_MSG_VERBOSE(
"No valid SF for b-tagged jets in SUSYTools_xAOD::BtagSF" );
823 ATH_MSG_VERBOSE(
"Retrieve SF for b-tagged jets in SUSYTools_xAOD::BtagSF with value " <<
sf );
831 ATH_MSG_ERROR(
"Failed to retrieve SF for non-b-tagged jets in SUSYTools_xAOD::BtagSF" );
834 ATH_MSG_VERBOSE(
"No valid inefficiency SF for non-b-tagged jets in SUSYTools_xAOD::BtagSF" );
837 ATH_MSG_VERBOSE(
"Retrieve SF for non-b-tagged jets in SUSYTools_xAOD::BtagSF with value " <<
sf );
842 dec_effscalefact(*
jet) =
sf;
844 if( acc_signal(*
jet) && acc_passOR(*
jet) ) totalSF *=
sf;
◆ BtagSF_trkJet()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 872 of file Jets.cxx.
875 for (
const xAOD::Jet* trkjet : *trkjets ) {
879 if ( std::abs(trkjet->eta()) > 2.5 ) {
880 ATH_MSG_VERBOSE(
"Trying to retrieve b-tagging SF for trkjet with |eta|>2.5 (trkjet eta=" << trkjet->eta() <<
"), trkjet will be skipped");
881 }
else if ( trkjet->pt() < 10
e3 ){
882 ATH_MSG_VERBOSE(
"Trying to retrieve b-tagging SF for trkjet with invalid pt (trkjet pt=" << trkjet->pt() <<
"), jet will be skipped");
887 if (!trkjet->getAttribute(
"HadronConeExclTruthLabelID", truthlabel)) {
890 ATH_MSG_VERBOSE(
"This jet is " << (acc_bjet(*trkjet) ?
"" :
"not ") <<
"b-tagged.");
893 if ( acc_bjet(*trkjet) ) {
898 ATH_MSG_ERROR(
"Failed to retrieve SF for b-tagged trk jets in SUSYTools_xAOD::BtagSF_trkJet" );
901 ATH_MSG_VERBOSE(
"No valid SF for b-tagged trk jets in SUSYTools_xAOD::BtagSF_trkJet" );
904 ATH_MSG_VERBOSE(
"Retrieve SF for b-tagged trk jets in SUSYTools_xAOD::BtagSF_trkJet with value " <<
sf );
912 ATH_MSG_ERROR(
"Failed to retrieve SF for non-b-tagged trk jets in SUSYTools_xAOD::BtagSF_trkJet" );
915 ATH_MSG_VERBOSE(
"No valid inefficiency SF for non-b-tagged trk jets in SUSYTools_xAOD::BtagSF_trkJet" );
918 ATH_MSG_VERBOSE(
"Retrieve SF for non-b-tagged trk jets in SUSYTools_xAOD::BtagSF_trkJet with value " <<
sf );
923 dec_effscalefact(*trkjet) =
sf;
925 if( acc_signal(*trkjet) ) totalSF *=
sf;
◆ BtagSFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 852 of file Jets.cxx.
858 if ( ret != StatusCode::SUCCESS) {
859 ATH_MSG_ERROR(
"Cannot configure BTaggingEfficiencyTool for systematic var. " << systConfig.
name() );
865 if ( ret != StatusCode::SUCCESS) {
866 ATH_MSG_ERROR(
"Cannot configure BTaggingEfficiencyTool for systematic var. " << systConfig.
name() );
◆ BtagSFsys_trkJet()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 933 of file Jets.cxx.
939 if ( ret != StatusCode::SUCCESS) {
940 ATH_MSG_ERROR(
"Cannot configure BTaggingEfficiencyTool (track jets) for systematic var. " << systConfig.
name() );
946 if ( ret != StatusCode::SUCCESS) {
947 ATH_MSG_ERROR(
"Cannot configure BTaggingEfficiencyTool (track jets) for systematic var. " << systConfig.
name() );
◆ check_isOption()
bool ST::SUSYObjDef_xAOD::check_isOption |
( |
const std::string & |
wp, |
|
|
const std::vector< std::string > & |
list |
|
) |
| const |
|
protected |
◆ check_isTighter()
bool ST::SUSYObjDef_xAOD::check_isTighter |
( |
const std::string & |
wp1, |
|
|
const std::string & |
wp, |
|
|
const std::vector< std::string > & |
list |
|
) |
| const |
|
protected |
◆ configFromFile() [1/4]
void ST::SUSYObjDef_xAOD::configFromFile |
( |
bool & |
property, |
|
|
const std::string & |
propname, |
|
|
TEnv & |
rEnv, |
|
|
bool |
defaultValue |
|
) |
| |
|
protected |
Definition at line 1245 of file SUSYObjDef_xAOD.cxx.
1249 ATH_MSG_INFO(
"configFromFile(): property \"" << propname <<
"\" already set with value " << property <<
". Ignoring change request." );
1250 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
1253 property = rEnv.GetValue(propname.c_str(),
static_cast<int>(defaultValue));
1254 ATH_MSG_INFO(
"configFromFile(): Loaded property \"" << propname <<
"\" with value " << property );
1256 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
◆ configFromFile() [2/4]
void ST::SUSYObjDef_xAOD::configFromFile |
( |
double & |
property, |
|
|
const std::string & |
propname, |
|
|
TEnv & |
rEnv, |
|
|
double |
defaultValue |
|
) |
| |
|
protected |
Definition at line 1260 of file SUSYObjDef_xAOD.cxx.
1264 if (property > -90.) {
1265 ATH_MSG_INFO(
"configFromFile(): property \"" << propname <<
"\" already set with value " << property <<
". Ignoring change request." );
1266 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
1269 property = rEnv.GetValue(propname.c_str(), defaultValue);
1270 ATH_MSG_INFO(
"configFromFile(): Loaded property \"" << propname <<
"\" with value " << property );
1272 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
◆ configFromFile() [3/4]
void ST::SUSYObjDef_xAOD::configFromFile |
( |
int & |
property, |
|
|
const std::string & |
propname, |
|
|
TEnv & |
rEnv, |
|
|
int |
defaultValue |
|
) |
| |
|
protected |
Definition at line 1276 of file SUSYObjDef_xAOD.cxx.
1280 if (property > -90){
1281 ATH_MSG_INFO(
"configFromFile(): property \"" << propname <<
"\" already set with value " << property <<
". Ignoring change request." );
1282 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
1285 property = rEnv.GetValue(propname.c_str(), defaultValue);
1286 ATH_MSG_INFO(
"configFromFile(): Loaded property \"" << propname <<
"\" with value " << property );
1288 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
◆ configFromFile() [4/4]
void ST::SUSYObjDef_xAOD::configFromFile |
( |
std::string & |
property, |
|
|
const std::string & |
propname, |
|
|
TEnv & |
rEnv, |
|
|
const std::string & |
defaultValue, |
|
|
bool |
allowEmpty = false |
|
) |
| |
|
protected |
Definition at line 1292 of file SUSYObjDef_xAOD.cxx.
1296 if (!property.empty()){
1297 ATH_MSG_INFO(
"configFromFile(): property \"" << propname <<
"\" already set with value " << property <<
". Ignoring change request." );
1298 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
1301 property = rEnv.GetValue(propname.c_str(), defaultValue.c_str());
1302 if (property.empty() && !allowEmpty) {
1303 ATH_MSG_FATAL(
"Read empty string property from text file (property name: " << propname <<
")");
1307 std::string tmp_prop =
property.substr(0, property.find(
'#', 0));
1308 property = TString(tmp_prop).ReplaceAll(
" ",
"").Data();
1311 if (property==
"None" || property==
"NONE" || property==
"none") {
1312 ATH_MSG_VERBOSE(
"Property \"" << propname <<
"\" being set to empty string due to specification of \"" << property <<
"\"" );
1316 ATH_MSG_INFO(
"configFromFile(): Loaded property \"" << propname <<
"\" with value " << property );
1318 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(propname.c_str() ) );
◆ currentSystematic()
◆ currentSystematicIsNominal()
bool ST::SUSYObjDef_xAOD::currentSystematicIsNominal |
( |
| ) |
const |
◆ currentSystematicIsVariation()
bool ST::SUSYObjDef_xAOD::currentSystematicIsVariation |
( |
| ) |
const |
◆ currentSystematicIsWeight()
bool ST::SUSYObjDef_xAOD::currentSystematicIsWeight |
( |
| ) |
const |
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
253 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
229 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
338 return PBASE::declareProperty(
name, property,
doc);
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ EG_WP()
std::string ST::SUSYObjDef_xAOD::EG_WP |
( |
const std::string & |
wp | ) |
const |
|
protected |
Definition at line 1214 of file SUSYObjDef_xAOD.cxx.
1217 TString
copy = TString(
wp).Copy().ReplaceAll(
"AndBLayer",
"BL").ReplaceAll(
"LLH",
"LHElectron");
1219 if (
wp.find(
"DNNnoCF") != std::string::npos)
1220 copy.ReplaceAll(
"DNNnoCF",
"DNNnoCFElectron");
1221 else if (
wp.find(
"DNN") != std::string::npos)
1222 copy.ReplaceAll(
"DNN",
"DNNElectron");
◆ emulateHLT()
bool ST::SUSYObjDef_xAOD::emulateHLT |
( |
const std::string & |
triggerName | ) |
const |
|
private |
Definition at line 99 of file Trigger.cxx.
102 auto funcItr = m_metTriggerFuncs.find(triggerName);
103 if (funcItr != m_metTriggerFuncs.end() )
104 return funcItr->second();
107 if (triggerName.substr(0,6) !=
"HLT_xe") {
108 ATH_MSG_ERROR(
"Requested trigger " << triggerName <<
" isn't a MET trigger! (HLT MET items should begin with 'HLT_xe'). Will return false." );
113 std::vector<std::pair<int, std::string> > hypos;
114 std::string temp(triggerName);
117 auto pos = temp.find(
"_AND_");
118 std::string itemName = temp.substr(0,
pos);
120 if (
pos == std::string::npos)
123 temp = temp.substr(
pos + 5);
125 std::regex expr(
"HLT_xe([[:digit:]]+)_?(mht|pufit|pueta|tc_lcw|)_?(?:L1XE([[:digit:]]+)|)");
127 if (!std::regex_match(itemName, sm, expr) ) {
128 ATH_MSG_WARNING(
"Regex reading for item " << itemName <<
" (" << triggerName <<
") failed! Will be ignored!" );
132 ATH_MSG_WARNING(
"Regex failed to capture the right groups for item " << itemName <<
" (" << triggerName <<
") failed! Will be ignored!" );
133 for (
unsigned int ii = 0; ii < sm.size(); ++ii) {
139 std::string algKey = sm[2];
140 std::string metContBaseName =
"HLT_xAOD__TrigMissingETContainer_TrigEFMissingET";
141 if (algKey.empty()) hypos.push_back(std::make_pair(
threshold, metContBaseName) );
142 else if (algKey ==
"mht") hypos.push_back(std::make_pair(
threshold, metContBaseName+
"_mht") );
143 else if (algKey ==
"pufit") hypos.push_back(std::make_pair(
threshold, metContBaseName+
"_topocl_PUC") );
144 else if (algKey ==
"pueta") hypos.push_back(std::make_pair(
threshold, metContBaseName+
"_topocl_PS") );
145 else if (algKey ==
"tc_lcw") hypos.push_back(std::make_pair(
threshold, metContBaseName+
"topocl") );
147 ATH_MSG_DEBUG(
"Container: " << hypos.back().second <<
", Threshold: " << hypos.back().first );
149 if (sm[3] !=
"" && sm[3] !=
"50") {
150 ATH_MSG_WARNING(
"The trigger requires a different L1 item to L1_XE50! This currently isn't allowed for in the code so the emulation will be slightly wrong" );
154 while (!temp.empty());
158 std::function<
bool()> lambda;
159 bool hasRequired =
true;
160 if (hypos.empty()) lambda = [] () {
return false;};
162 for (
const auto& pair : hypos) {
164 auto lambda_hypo = [
this, pair] () {
167 if (cont->empty())
return false;
168 float ex = cont->front()->ex() * 0.001;
169 float ey = cont->front()->ey() * 0.001;
170 float met = std::sqrt(ex*ex + ey*ey);
171 return met > pair.first;
179 lambda = [lambda, lambda_hypo] () {
180 return lambda() && lambda_hypo();
184 lambda = lambda_hypo;
194 m_metTriggerFuncs[triggerName] = lambda;
195 return m_metTriggerFuncs.at(triggerName)();
198 std::vector<std::string> replacementTriggers({
"HLT_xe110_mht_L1XE50",
"HLT_xe100_mht_L1XE50",
"HLT_xe90_mht_L1XE50",
"HLT_xe70_mht"});
199 for (
const std::string& trigName : replacementTriggers) {
201 ATH_MSG_WARNING(
"Trigger " << triggerName <<
" not available and direct emulation impossible! Will use " << trigName <<
" instead!");
202 m_metTriggerFuncs[triggerName] = [
this, trigName] () {
205 return m_metTriggerFuncs.at(triggerName)();
208 ATH_MSG_ERROR(
"Cannot find the trigger in the menu, direct emulation is impossible and no replacement triggers are available! Will return false" );
209 m_metTriggerFuncs.at(triggerName) = [] () {
return false;};
210 return m_metTriggerFuncs.at(triggerName)();
◆ endInputFile()
StatusCode asg::AsgMetadataTool::endInputFile |
( |
| ) |
|
|
protectedvirtualinherited |
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ FillElectron()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 221 of file Electrons.cxx.
227 dec_baseline(
input) =
false;
228 dec_selected(
input) = 0;
229 dec_signal(
input) =
false;
230 dec_isol(
input) =
false;
231 dec_isolHighPt(
input) =
false;
232 dec_passSignalID(
input) =
false;
233 dec_passChID(
input) =
false;
234 dec_ecisBDT(
input) = -999.;
241 ATH_MSG_DEBUG(
"No primary track particle for this electron. Skipping.");
242 return StatusCode::SUCCESS;
244 double primvertex_z =
pv ?
pv->z() : 0;
245 double el_z0 =
track->z0() +
track->vz() - primvertex_z;
246 dec_z0sinTheta(
input) = el_z0 * TMath::Sin(
input.p4().Theta());
252 float d0sigError = -99.;
253 ATH_MSG_WARNING(
"FillElectron : Exception catched from d0significance() calculation. Setting dummy decoration d0sig=" << d0sigError );
254 dec_d0sig(
input) = d0sigError;
258 if (
input.pt() < 4
e3 )
return StatusCode::SUCCESS;
259 if ( !
input.caloCluster() ) {
ATH_MSG_WARNING(
"FillElectron: no caloCluster found: " <<
input.caloCluster() );
return StatusCode::SUCCESS; }
265 unsigned char el_nPixHits(0), el_nSCTHits(0);
278 ATH_MSG_INFO(
"ELECTRON nPixHits: " <<
static_cast<int>(el_nPixHits));
279 ATH_MSG_INFO(
"ELECTRON nSCTHits: " <<
static_cast<int>(el_nSCTHits));
280 ATH_MSG_INFO(
"ELECTRON deadHVTools: " <<
static_cast<bool>(pass_deadHVTool));
283 if (!pass_deadHVTool)
return StatusCode::SUCCESS;
288 return StatusCode::FAILURE;
291 bool passBaseID =
false;
298 ATH_MSG_VERBOSE (
"DFCommonElectronsLHxxx variables are not found. Calculating the ID from LH tool..");
309 if (std::abs(
input.caloCluster()->etaBE(2)) >= etacut)
return StatusCode::SUCCESS;
312 if ( std::abs(
input.caloCluster()->etaBE(2) ) >1.37 && std::abs(
input.caloCluster()->etaBE(2) ) <1.52) {
313 return StatusCode::SUCCESS;
319 ATH_MSG_ERROR(
"FillElectron: EgammaCalibTool applyCorrection failed ");
322 ATH_MSG_ERROR(
"FillElectron: IsolationCorrectionTool applyCorrection failed");
326 if (
input.pt() < etcut)
return StatusCode::SUCCESS;
334 dec_baseline(
input) =
true;
335 dec_selected(
input) = 2;
351 dec_passChID(
input) =
true;
356 return StatusCode::SUCCESS;
◆ FillJet()
StatusCode ST::SUSYObjDef_xAOD::FillJet |
( |
xAOD::Jet & |
input, |
|
|
const bool |
doCalib = true , |
|
|
bool |
isFat = false , |
|
|
bool |
doLargeRdecorations = false |
|
) |
| |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 384 of file Jets.cxx.
403 dec_bad(
input) =
false;
404 dec_signal(
input) =
false;
405 dec_bjet_loose(
input) =
false;
406 dec_effscalefact(
input) = 1.;
407 dec_passOR(
input) =
true;
408 dec_bjet_jetunc(
input) =
false;
409 dec_btag_weight(
input) = -999.;
411 dec_wtagged(
input) = -1;
412 dec_ztagged(
input) = -1;
413 dec_toptagged(
input) = -1;
414 if (doLargeRdecorations) {
422 if ( !acc_wValidKinRange(
input) ) {
423 ATH_MSG_VERBOSE(
"Large-R W candidate jet outside of recommended tagging range. Will set score to 0.");
424 dec_wtagged(
input) = 0;
430 if ( !acc_zValidKinRange(
input) ) {
431 ATH_MSG_VERBOSE(
"Large-R Z candidate jet outside of recommended tagging range. Will set score to 0.");
432 dec_ztagged(
input) = 0;
438 if ( !acc_topValidKinRange(
input) ) {
439 ATH_MSG_VERBOSE(
"Large-R Top candidate jet outside of recommended tagging range. Will set score to 0.");
440 dec_toptagged(
input) = 0;
442 else dec_toptagged(
input) = acc_toptagged(
input);
453 ATH_MSG_ERROR(
"Failed to apply largeR W-tag jet scale uncertainties.");
454 return StatusCode::FAILURE;
457 ATH_MSG_VERBOSE(
"No valid pt/eta/m range for largeR W-tag jet scale uncertainties. ");
463 ATH_MSG_DEBUG(
"No valid large-R W-tagged fat jet uncertainty, but FillJet called with a fat jet. Skipping uncertainties." );
470 ATH_MSG_ERROR(
"Failed to apply largeR Z-tag jet scale uncertainties.");
471 return StatusCode::FAILURE;
474 ATH_MSG_VERBOSE(
"No valid pt/eta/m range for largeR Z-tag jet scale uncertainties. ");
480 ATH_MSG_DEBUG(
"No valid large-R Z-tagged fat jet uncertainty, but FillJet called with a fat jet. Skipping uncertainties." );
487 ATH_MSG_ERROR(
"Failed to apply largeR Top-tag jet scale uncertainties.");
488 return StatusCode::FAILURE;
491 ATH_MSG_VERBOSE(
"No valid pt/eta/m range for largeR Top-tag jet scale uncertainties. ");
497 ATH_MSG_DEBUG(
"No valid large-R Top-tagged fat jet uncertainty, but FillJet called with a fat jet. Skipping uncertainties." );
504 ATH_MSG_ERROR(
"Failed to apply largeR jet scale uncertainties.");
505 return StatusCode::FAILURE;
508 ATH_MSG_VERBOSE(
"No valid pt/eta/m range for largeR jet scale uncertainties. ");
514 ATH_MSG_DEBUG(
"No valid fat jet uncertainty, but FillJet called with a fat jet. Skipping uncertainties." );
518 return StatusCode::SUCCESS;
524 dec_passOR(
input) =
true;
525 dec_bjet_jetunc(
input) =
false;
574 dec_bad(
input) =
false;
575 dec_signal_less_JVT(
input) =
false;
576 dec_signal(
input) =
false;
577 dec_bjet_loose(
input) =
false;
578 dec_effscalefact(
input) = 1.;
581 if (acc_baseline(
input) ){
582 if( acc_passJvt(
input) ) dec_selected(
input) = 2;
583 else dec_selected(
input) = 1;
586 dec_selected(
input) = 0;
605 return StatusCode::SUCCESS;
◆ FillMuon()
StatusCode ST::SUSYObjDef_xAOD::FillMuon |
( |
xAOD::Muon & |
input, |
|
|
const float |
ptcut, |
|
|
const float |
etacut |
|
) |
| |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 205 of file Muons.cxx.
209 dec_baseline(
input) =
false;
210 dec_selected(
input) = 0;
211 dec_signal(
input) =
false;
212 dec_isol(
input) =
false;
213 dec_isolHighPt(
input) =
false;
214 dec_passedHighPtCuts(
input) =
false;
215 dec_passSignalID(
input) =
false;
218 dec_DFCommonJetDr(
input) = -2.0;
220 dec_dRJet(
input) = -2.0;
224 if (
input.pt() < 3
e3 )
return StatusCode::SUCCESS;
241 double primvertex_z =
pv ?
pv->z() : 0;
244 if (
input.muonType() == xAOD::Muon::SiliconAssociatedForwardMuon) {
245 track =
input.trackParticle(xAOD::Muon::CombinedTrackParticle);
246 if (!
track)
return StatusCode::SUCCESS;
254 dec_z0sinTheta(
input) = (
track->z0() +
track->vz() - primvertex_z) * TMath::Sin(
input.p4().Theta());
263 dec_d0sig(
input) = -99.;
266 float d0sigError = -99.;
267 ATH_MSG_WARNING(
"FillMuon : Exception caught from d0significance() calculation. Setting dummy decoration d0sig=" << d0sigError );
268 dec_d0sig(
input) = d0sigError;
275 unsigned char nBLHits(0), nPixHits(0), nPixelDeadSensors(0), nPixHoles(0),
298 ATH_MSG_INFO(
"MUON bHit: " <<
static_cast<int>( nBLHits ));
299 ATH_MSG_INFO(
"MUON pHit: " <<
static_cast<int>( nPixHits ));
300 ATH_MSG_INFO(
"MUON pDead:" <<
static_cast<int>( nPixelDeadSensors ));
301 ATH_MSG_INFO(
"MUON pHole:" <<
static_cast<int>( nPixHoles ));
303 ATH_MSG_INFO(
"MUON sDead:" <<
static_cast<int>( nSCTDeadSensors ));
306 ATH_MSG_INFO(
"MUON tOut: " <<
static_cast<int>( nTRTOutliers ));
309 input.trackParticle( xAOD::Muon::InnerDetectorTrackParticle );
320 if (
input.pt() <=
ptcut || std::abs(
input.eta()) >= etacut)
return StatusCode::SUCCESS;
328 dec_baseline(
input) =
true;
329 dec_selected(
input) = 2;
337 return StatusCode::SUCCESS;
◆ FillPhoton()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 78 of file Photons.cxx.
82 if ( !
input.caloCluster() ) {
84 return StatusCode::SUCCESS;
98 ATH_MSG_INFO(
"PHOTON deadHVTools: " << pass_deadHVTool );
101 dec_baseline(
input) =
false;
102 dec_selected(
input) = 0;
103 dec_isol(
input) =
false;
106 if (!pass_deadHVTool)
return StatusCode::SUCCESS;
110 return StatusCode::SUCCESS;
113 ATH_MSG_ERROR(
"FillPhoton: EgammaCalibTool applyCorrection failed");
116 ATH_MSG_ERROR(
"FillPhoton: IsolationCorrectionTool applyCorrection failed");
120 if (
input.pt() <
ptcut || std::abs(
input.caloCluster()->etaBE(2)) >= etacut)
return StatusCode::SUCCESS;
123 if ( std::abs(
input.caloCluster()->etaBE(2) ) >1.37 && std::abs(
input.caloCluster()->etaBE(2) ) <1.52) {
124 return StatusCode::SUCCESS;
130 return StatusCode::SUCCESS;
133 bool passPhCleaning =
false;
134 if (acc_passPhCleaning.isAvailable(
input) && acc_passPhCleaningNoTime.isAvailable(
input)) {
141 if (!passPhCleaning)
return StatusCode::SUCCESS;
144 bool passBaseID =
false;
150 if (!passBaseID)
return StatusCode::SUCCESS;
155 dec_baseline(
input) =
true;
156 dec_selected(
input) = 2;
160 return StatusCode::SUCCESS;
◆ FillTau()
StatusCode ST::SUSYObjDef_xAOD::FillTau |
( |
xAOD::TauJet & |
input | ) |
|
|
finaloverridevirtual |
◆ FillTrackJet()
StatusCode ST::SUSYObjDef_xAOD::FillTrackJet |
( |
xAOD::Jet & |
input | ) |
|
|
finaloverridevirtual |
◆ FindSusyHardProc() [1/2]
bool ST::SUSYObjDef_xAOD::FindSusyHardProc |
( |
const xAOD::TruthEvent * |
truthE, |
|
|
int & |
pdgid1, |
|
|
int & |
pdgid2 |
|
) |
| |
|
static |
Definition at line 231 of file Truth.cxx.
245 if ((
tp->absPdgId() > 1000000 &&
tp->absPdgId() < 1000007) ||
246 (
tp->absPdgId() > 1000010 &&
tp->absPdgId() < 1000017) ||
247 (
tp->absPdgId() > 2000000 &&
tp->absPdgId() < 2000007) ||
248 (
tp->absPdgId() > 2000010 &&
tp->absPdgId() < 2000017) ||
249 (
tp->absPdgId() > 1000020 &&
tp->absPdgId() < 1000040)) {
251 if (
tp->nParents() != 0) {
252 if (
tp->parent(0)->absPdgId() < 1000000) {
255 }
else if (!secondsp) {
279 if (!firstsp && !secondsp)
return true;
281 if (firstsp->nChildren() == 1) {
291 if (secondsp->nChildren() == 1) {
301 if (firstsp->absPdgId() > 1000000) pdgid1 = firstsp->pdgId();
302 if (secondsp->absPdgId() > 1000000) pdgid2 = secondsp->pdgId();
◆ FindSusyHardProc() [2/2]
Definition at line 125 of file Truth.cxx.
132 if(!truthP || truthP->
size()<2){
137 pdgid1 = (*truthP)[0]->pdgId();
138 pdgid2 = (*truthP)[1]->pdgId();
146 if (!truthP || truthP->
empty()) {
152 if ((
tp->absPdgId() > 1000000 &&
tp->absPdgId() < 1000007) ||
153 (
tp->absPdgId() > 1000010 &&
tp->absPdgId() < 1000017) ||
154 (
tp->absPdgId() > 2000000 &&
tp->absPdgId() < 2000007) ||
155 (
tp->absPdgId() > 2000010 &&
tp->absPdgId() < 2000017) ||
156 (
tp->absPdgId() > 1000020 &&
tp->absPdgId() < 1000040)) {
158 if (
tp->nParents() != 0) {
159 if (
tp->parent(0)->absPdgId() < 1000000) {
162 }
else if (!secondsp) {
186 if (!firstsp && !secondsp)
return true;
188 if (firstsp->nChildren() == 1) {
197 if (secondsp->nChildren() == 1) {
206 if (firstsp->absPdgId() > 1000000) pdgid1 = firstsp->pdgId();
207 if (secondsp->absPdgId() > 1000000) pdgid2 = secondsp->pdgId();
◆ FindSusyHP() [1/3]
StatusCode ST::SUSYObjDef_xAOD::FindSusyHP |
( |
const xAOD::TruthEvent * |
truthE, |
|
|
int & |
pdgid1, |
|
|
int & |
pdgid2 |
|
) |
| const |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 214 of file Truth.cxx.
218 return StatusCode::FAILURE;
222 return StatusCode::FAILURE;
224 if (pdgid1 == 0 || pdgid2 == 0) {
227 return StatusCode::SUCCESS;
◆ FindSusyHP() [2/3]
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 105 of file Truth.cxx.
108 return StatusCode::FAILURE;
110 if (truthP->
empty()) {
112 return StatusCode::FAILURE;
116 return StatusCode::FAILURE;
118 if (pdgid1 == 0 || pdgid2 == 0) {
121 return StatusCode::SUCCESS;
◆ FindSusyHP() [3/3]
StatusCode ST::SUSYObjDef_xAOD::FindSusyHP |
( |
int & |
pdgid1, |
|
|
int & |
pdgid2 |
|
) |
| const |
Definition at line 75 of file Truth.cxx.
78 bool isTruth3 =
false;
79 std::string key_T1 =
"TruthParticles";
80 std::string key_T3 =
"TruthBSM";
82 ATH_MSG_DEBUG(
"Contains " << key_T1 <<
": " << ((
evtStore()->contains<xAOD::TruthParticleContainer>( key_T1 ))?1:0));
83 ATH_MSG_DEBUG(
"Contains " << key_T3 <<
": " << ((
evtStore()->contains<xAOD::TruthParticleContainer>( key_T3 ))?1:0));
85 if(
evtStore()->contains<xAOD::TruthParticleContainer>( key_T1 )){
88 if (truthP->
empty()) {
ATH_MSG_WARNING(key_T1 <<
" is empty. Skipping FindSusyHP.");
return StatusCode::SUCCESS; }
90 else if(
evtStore()->contains<xAOD::TruthParticleContainer>( key_T3 )){
94 if (truthP->
empty()) {
ATH_MSG_WARNING(key_T3 <<
" is empty. Skipping FindSusyHP.");
return StatusCode::SUCCESS; }
97 ATH_MSG_WARNING(
"Neither " << key_T1 <<
" nor " << key_T3 <<
" are avaible. Skipping FindSusyHP.");
98 return StatusCode::SUCCESS;
◆ FJVT_SF()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 1025 of file Jets.cxx.
1033 if (acc_signal_less_JVT(*
jet) && acc_passOR(*
jet)) {
1034 fjvtjets.push_back(
jet);
1039 float current_sf = 0;
1043 if (acc_passFJvt(*
jet)) {
1057 ATH_MSG_VERBOSE(
"Skip SF application in SUSYTools_xAOD::FJVT_SF as jet outside validate range" );
1060 ATH_MSG_VERBOSE(
"Retrieve SF for jet in SUSYTools_xAOD::FJVT_SF with value " << current_sf );
1061 totalSF *= current_sf;
1066 ATH_MSG_VERBOSE(
"Retrieve total SF for jet container in SUSYTools_xAOD::FJVT_SF with value " << totalSF );
◆ FJVT_SFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 1071 of file Jets.cxx.
1078 if ( ret != StatusCode::SUCCESS) {
1079 ATH_MSG_ERROR(
"Cannot configure fJvtEfficiencyTool for systematic var. " << systConfig.
name() );
1087 if ( ret != StatusCode::SUCCESS) {
1088 ATH_MSG_ERROR(
"Cannot configure fJvtEfficiencyTool for systematic var. " << systConfig.
name() );
◆ GetCorrectedActualInteractionsPerCrossing()
float ST::SUSYObjDef_xAOD::GetCorrectedActualInteractionsPerCrossing |
( |
bool |
includeDataSF = false | ) |
|
|
finaloverridevirtual |
◆ GetCorrectedAverageInteractionsPerCrossing()
float ST::SUSYObjDef_xAOD::GetCorrectedAverageInteractionsPerCrossing |
( |
bool |
includeDataSF = false | ) |
|
|
finaloverridevirtual |
◆ GetDataWeight()
float ST::SUSYObjDef_xAOD::GetDataWeight |
( |
const std::string & |
trig | ) |
|
|
finaloverridevirtual |
◆ GetElectrons()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 118 of file Electrons.cxx.
122 return StatusCode::FAILURE;
126 auto outputCol = std::make_unique<xAOD::ElectronContainer>();
127 std::unique_ptr<xAOD::ElectronAuxContainer> outputAuxCol;
128 outputAuxCol = std::make_unique<xAOD::ElectronAuxContainer>();
129 outputCol->setStore(outputAuxCol.get());
132 if (
bool(
m_eleLRT) && !lrtelekey.empty() &&
evtStore()->contains<xAOD::ElectronContainer>(lrtelekey)){
136 if (
evtStore()->contains<xAOD::ElectronContainer>(
"StdWithLRTElectrons")) {
137 ATH_MSG_DEBUG(
"Merged prompt/LRT container already created in TStore");
139 ATH_MSG_DEBUG(
"Creating merged prompt/LRT container in TStore");
146 auto filtered_electrons = std::make_unique<xAOD::ElectronContainer>();
147 std::unique_ptr<xAOD::ElectronAuxContainer> filtered_electrons_aux = std::make_unique<xAOD::ElectronAuxContainer>();
148 filtered_electrons->setStore(filtered_electrons_aux.get());
152 std::set<const xAOD::Electron *> ElectronsToRemove;
168 }
else if (!lrtelekey.empty()) {
169 if(
evtStore()->contains<xAOD::ElectronContainer>(lrtelekey) ==
false &&
bool(
m_eleLRT) ==
true)
ATH_MSG_WARNING(
"prompt/LRT OR procedure attempted but " << lrtelekey <<
" not in ROOT file, check config!");
170 ATH_MSG_DEBUG(
"Not applying prompt/LRT electron OR procedure");
173 if (
m_isPHYSLITE && elekey.find(
"AnalysisElectrons")==std::string::npos){
174 ATH_MSG_ERROR(
"You are running on PHYSLITE derivation. Please change the Electrons container to 'AnalysisElectrons'");
175 return StatusCode::FAILURE;
179 if (
bool(
m_eleLRT) &&
evtStore()->contains<xAOD::ElectronContainer>(lrtelekey)){
186 if (containerToBeCopied !=
nullptr) {
198 copy = shallowcopy.first;
199 copyaux = shallowcopy.second;
204 ATH_MSG_DEBUG(
"Not retrieving electron collection, using existing one provided by user");
217 return StatusCode::SUCCESS;
◆ GetEleTriggerEfficiency()
double ST::SUSYObjDef_xAOD::GetEleTriggerEfficiency |
( |
const xAOD::Electron & |
el, |
|
|
const std::string & |
trigExpr = "SINGLE_E_2015_e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose_2016_2018_e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0" |
|
) |
| const |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 588 of file Electrons.cxx.
590 std::string single_str =
"SINGLE_E";
591 std::string single_str_2022 =
"2022_";
592 std::string dilep_str =
"DI_E";
593 std::string multi_str =
"MULTI_L";
598 if ( trigExpr.find(single_str) != std::string::npos || trigExpr.find(single_str_2022) != std::string::npos)
600 else if ( trigExpr.find(dilep_str) != std::string::npos )
601 ATH_MSG_ERROR(
"Use GetTriggerGlobalEfficiency for logical OR of lepton triggers");
602 else if ( trigExpr.find(multi_str) != std::string::npos )
603 ATH_MSG_ERROR(
"Use GetTriggerGlobalEfficiency for logical OR of lepton triggers");
605 ATH_MSG_ERROR(
"The trigger expression (" << trigExpr <<
") is not supported by the electron trigger efficiency!");
609 ATH_MSG_ERROR(
"Failed to retrieve signal electron trigger efficiency");
612 ATH_MSG_VERBOSE(
"OutOfValidityRange found for signal electron trigger efficiency");
◆ GetEleTriggerEfficiencySF()
double ST::SUSYObjDef_xAOD::GetEleTriggerEfficiencySF |
( |
const xAOD::Electron & |
el, |
|
|
const std::string & |
trigExpr = "SINGLE_E_2015_e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose_2016_2018_e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0" |
|
) |
| const |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 554 of file Electrons.cxx.
558 std::string single_str =
"SINGLE_E";
559 std::string single_str_2022 =
"2022_";
560 std::string dilep_str =
"DI_E";
561 std::string multi_str =
"MULTI_L";
564 if ( trigExpr.find(single_str) != std::string::npos || trigExpr.find(single_str_2022) != std::string::npos)
566 else if ( trigExpr.find(dilep_str) != std::string::npos )
567 ATH_MSG_ERROR(
"Use GetTriggerGlobalEfficiency for logical OR of lepton triggers");
568 else if ( trigExpr.find(multi_str) != std::string::npos )
569 ATH_MSG_ERROR(
"Use GetTriggerGlobalEfficiency for logical OR of lepton triggers");
571 ATH_MSG_ERROR(
"The trigger expression (" << trigExpr <<
") is not supported by the electron trigger SF!");
575 ATH_MSG_ERROR(
"Failed to retrieve signal electron trigger SF");
578 ATH_MSG_VERBOSE(
"OutOfValidityRange found for signal electron trigger SF");
◆ getElSFkeys()
std::vector< std::string > ST::SUSYObjDef_xAOD::getElSFkeys |
( |
const std::string & |
mapFile | ) |
const |
|
protected |
Definition at line 1226 of file SUSYObjDef_xAOD.cxx.
1228 if( mapFile.empty() )
1231 std::vector<std::string> theKeys;
1238 theKeys.push_back(
tokens.at(0));
◆ GetEventInfo()
◆ GetFatJets()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 243 of file Jets.cxx.
247 return StatusCode::FAILURE;
251 ATH_MSG_ERROR(
"JetFatCalibTool was not initialized for largeR jet!!");
252 return StatusCode::FAILURE;
255 std::string jetkey_tmp = jetkey;
256 if (jetkey.empty()) {
262 if (containerToBeCopied !=
nullptr) {
263 jets = containerToBeCopied;
271 copy = shallowcopy.first;
272 copyaux = shallowcopy.second;
275 ATH_MSG_WARNING(
"Failed to set original object links on " << jetkey_tmp);
278 ATH_MSG_DEBUG(
"Not retrieving jet collection, using existing one provided by user");
282 if(
jets->size()==0) {
284 return StatusCode::SUCCESS;
292 ATH_MSG_DEBUG(
"Checking if decorator for JetTruthLabelingTool is available:");
302 for (
const auto&
jet : *
copy) {
307 if ( acc_baseline(*
jet) ){
308 dec_selected(*
jet) = 1;
311 dec_selected(*
jet) = 0;
318 return StatusCode::SUCCESS;
◆ GetInDetLargeD0GSFTracks()
◆ GetInDetLargeD0Tracks()
◆ GetJets()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 74 of file Jets.cxx.
78 return StatusCode::FAILURE;
81 if (
m_isPHYSLITE && jetkey.find(
"AnalysisJets") == std::string::npos){
82 ATH_MSG_ERROR(
"You are running on PHYSLITE derivation. Please change the Jets container to 'AnalysisJets'");
83 return StatusCode::FAILURE;
93 if (!jetkey.empty()) {
98 ATH_MSG_DEBUG(
"Key for retrieving jet collection: jetkey = " << jetkey_tmp);
102 if (containerToBeCopied !=
nullptr) {
103 jets = containerToBeCopied;
110 copy = shallowcopy.first;
111 copyaux = shallowcopy.second;
114 ATH_MSG_WARNING(
"Failed to set original object links on " << jetkey_tmp);
117 ATH_MSG_DEBUG(
"Not retrieving jet collecton, using existing one provided by user");
130 for (
const auto&
jet : *
copy) {
138 for (
const auto&
jet : *
copy) {
142 for (
const auto&
jet : *copy) {
145 dec_passJvt(*
jet) = acc_passFJvt(*
jet) && acc_passJvt(*
jet);
146 dec_fjvt(*
jet) = acc_fjvt(*
jet);
149 if ( acc_baseline(*
jet) ){
150 if( acc_passJvt(*
jet) ) dec_selected(*
jet) = 2;
151 else dec_selected(*
jet) = 1;
154 dec_selected(*
jet) = 0;
162 std::string auxname = copyaux->
name();
163 if (auxname.compare(
"UNKNOWN")==0) copyaux->
setName(std::string(
"STCalib" + jetkey_tmp +
m_currentSyst.
name() +
"AuxCopy").c_str());
167 return StatusCode::SUCCESS;
◆ GetJetsSyst()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 322 of file Jets.cxx.
326 return StatusCode::FAILURE;
329 std::string jetkey_tmp = jetkey;
330 if (jetkey.empty()) {
335 copy = shallowcopy.first;
336 copyaux = shallowcopy.second;
340 ATH_MSG_WARNING(
"Failed to set original object links on " << jetkey_tmp);
347 if (jetkey!=
"AnalysisJets"){
355 for (
const auto&
jet : *
copy) {
359 for (
const auto&
jet : *copy) {
362 dec_passJvt(*
jet) = acc_passFJvt(*
jet) && acc_passJvt(*
jet);
365 if ( acc_baseline(*
jet) ){
366 if( acc_passJvt(*
jet) ) dec_selected(*
jet) = 2;
367 else dec_selected(*
jet) = 1;
370 dec_selected(*
jet) = 0;
381 return StatusCode::SUCCESS;
◆ getKey()
Get the (hashed) key of an object that is in the event store.
This is a bit of a special one. StoreGateSvc
and xAOD::TEvent
both provide ways for getting the SG::sgkey_t
key for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.
In order to allow tools to efficiently perform this operation, they can use this helper function.
- See also
- asg::AsgTool::getName
- Parameters
-
ptr | The bare pointer to the object that the event store should know about |
- Returns
- The hashed key of the object in the store. If not found, an invalid (zero) key.
Definition at line 119 of file AsgTool.cxx.
121 #ifdef XAOD_STANDALONE
127 return (
proxy ==
nullptr ? 0 :
proxy->sgkey() );
128 #endif // XAOD_STANDALONE
◆ getMCShowerType()
int ST::SUSYObjDef_xAOD::getMCShowerType |
( |
const std::string & |
sample_name = "" , |
|
|
const std::string & |
tagger = "" |
|
) |
| const |
|
inlinefinaloverridevirtual |
◆ GetMET()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 23 of file MET.cxx.
33 return StatusCode::FAILURE;
39 return StatusCode::FAILURE;
44 return StatusCode::FAILURE;
49 std::string softTerm =
"SoftClus";
51 softTerm =
"PVSoftTrk";
52 }
else if (doJVTCut) {
53 ATH_MSG_WARNING(
"Requested CST MET and a JVT cut. This is not a recommended configuration - please consider switching to TST." );
56 metHelper.resetObjSelectionFlags();
68 if (acc_baseline(*
el)) {
72 if (ipart ==
el) {
veto =
true;
break;}
75 if (!
veto) metelectron.push_back(
el);
86 if (acc_baseline(*ph)) {
90 if (ipart == ph) {
veto =
true;
break;}
93 if (!
veto) metgamma.push_back(ph);
104 if (acc_baseline(*tau)) {
108 if (ipart == tau) {
veto =
true;
break;}
111 if (!
veto) mettau.push_back(tau);
123 if (acc_baseline(*
mu)) {
126 if (ipart ==
mu) {
veto =
true;
break;}
129 if (!
veto) metmuon.push_back(
mu);
136 ATH_MSG_WARNING(
"Invalid jet container specified for MET rebuilding!");
137 return StatusCode::SUCCESS;
157 return StatusCode::SUCCESS;
◆ GetMETSig()
StatusCode ST::SUSYObjDef_xAOD::GetMETSig |
( |
xAOD::MissingETContainer & |
met, |
|
|
double & |
metSignificance, |
|
|
bool |
doTST = true , |
|
|
bool |
doJVTCut = true |
|
) |
| |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 240 of file MET.cxx.
244 std::string softTerm =
"SoftClus";
246 softTerm =
"PVSoftTrk";
247 }
else if (doJVTCut) {
248 ATH_MSG_WARNING(
"Requested CST MET and a JVT cut. This is not a recommended configuration - please consider switching to TST." );
257 return StatusCode::SUCCESS;
◆ GetMuons()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 100 of file Muons.cxx.
104 return StatusCode::FAILURE;
108 auto outputCol = std::make_unique<xAOD::MuonContainer>();
109 std::unique_ptr<xAOD::MuonAuxContainer> outputAuxCol;
110 outputAuxCol = std::make_unique<xAOD::MuonAuxContainer>();
111 outputCol->setStore(outputAuxCol.get());
114 if (
bool(
m_muLRT) && !lrtmuonkey.empty() &&
evtStore()->contains<xAOD::MuonContainer>(lrtmuonkey)){
118 if (
evtStore()->contains<xAOD::MuonContainer>(
"StdWithLRTMuons")) {
119 ATH_MSG_DEBUG(
"Merged prompt/LRT container already created in TStore");
121 ATH_MSG_DEBUG(
"Creating merged prompt/LRT container in TStore");
128 auto filtered_muons = std::make_unique<xAOD::MuonContainer>();
129 std::unique_ptr<xAOD::MuonAuxContainer> filtered_muons_aux = std::make_unique<xAOD::MuonAuxContainer>();
130 filtered_muons->setStore(filtered_muons_aux.get());
134 std::vector<bool> writePromptMuon;
135 std::vector<bool> writeLRTMuon;
152 }
else if (!lrtmuonkey.empty()) {
153 if (
evtStore()->contains<xAOD::MuonContainer>(lrtmuonkey) ==
false &&
bool(
m_muLRT) ==
true)
ATH_MSG_WARNING(
"prompt/LRT OR procedure attempted but " << lrtmuonkey <<
" not in ROOT file, check config!");
157 if (
m_isPHYSLITE && muonkey.find(
"AnalysisMuons")==std::string::npos){
158 ATH_MSG_ERROR(
"You are running on PHYSLITE derivation. Please change the Muons container to 'AnalysisMuons'");
159 return StatusCode::FAILURE;
163 if (
bool(
m_muLRT) &&
evtStore()->contains<xAOD::MuonContainer>(lrtmuonkey)){
170 if (containerToBeCopied !=
nullptr) {
172 muons = containerToBeCopied;
182 copy = shallowcopy.first;
183 copyaux = shallowcopy.second;
188 ATH_MSG_DEBUG(
"Not retrieving muon collection, using existing one provided by user");
202 return StatusCode::SUCCESS;
◆ GetMuonTriggerEfficiency()
double ST::SUSYObjDef_xAOD::GetMuonTriggerEfficiency |
( |
const xAOD::Muon & |
mu, |
|
|
const std::string & |
trigExpr, |
|
|
const bool |
isdata = false |
|
) |
| |
|
finaloverridevirtual |
◆ getName()
const std::string & asg::AsgTool::getName |
( |
const void * |
ptr | ) |
const |
|
inherited |
Get the name of an object that is / should be in the event store.
This is a bit of a special one. StoreGateSvc
and xAOD::TEvent
both provide ways for getting the std::string
name for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.
In order to allow tools to efficiently perform this operation, they can use this helper function.
- See also
- asg::AsgTool::getKey
- Parameters
-
ptr | The bare pointer to the object that the event store should know about |
- Returns
- The string name of the object in the store. If not found, an empty string.
Definition at line 106 of file AsgTool.cxx.
108 #ifdef XAOD_STANDALONE
114 static const std::string
dummy =
"";
116 #endif // XAOD_STANDALONE
◆ GetPhotons()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 33 of file Photons.cxx.
37 return StatusCode::FAILURE;
40 if (
m_isPHYSLITE && photonkey.find(
"AnalysisPhotons")==std::string::npos){
41 ATH_MSG_ERROR(
"You are running on PHYSLITE derivation. Please change the Photons container to 'AnalysisPhotons'");
42 return StatusCode::FAILURE;
47 if (containerToBeCopied !=
nullptr) {
48 photons = containerToBeCopied;
54 copy = shallowcopy.first;
55 copyaux = shallowcopy.second;
58 ATH_MSG_WARNING(
"Failed to set original object links on " << photonkey);
61 ATH_MSG_DEBUG(
"Not retrieving photon collecton, using existing one provided by user");
74 return StatusCode::SUCCESS;
◆ GetPileupWeight()
float ST::SUSYObjDef_xAOD::GetPileupWeight |
( |
| ) |
|
|
finaloverridevirtual |
◆ GetPileupWeightHash()
ULong64_t ST::SUSYObjDef_xAOD::GetPileupWeightHash |
( |
| ) |
|
|
finaloverridevirtual |
◆ GetPileupWeightPrescaledTrigger()
float ST::SUSYObjDef_xAOD::GetPileupWeightPrescaledTrigger |
( |
const std::string & |
trigger_expr | ) |
|
|
finaloverridevirtual |
◆ GetPrimVtx()
◆ getProperty() [1/2]
template<typename T >
const T* ST::ISUSYObjDef_xAODTool::getProperty |
( |
const std::string & |
name | ) |
|
|
inlineinherited |
◆ getProperty() [2/2]
template<class T >
const T* asg::AsgTool::getProperty |
( |
const std::string & |
name | ) |
const |
|
inherited |
Get one of the tool's properties.
◆ GetRandomRunNumber()
unsigned int ST::SUSYObjDef_xAOD::GetRandomRunNumber |
( |
bool |
muDependentRRN = true | ) |
|
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 2995 of file SUSYObjDef_xAOD.cxx.
2998 if (randomrunnumber.isAvailable(*(evtInfo)) && muDependentRRN) {
2999 return randomrunnumber(*(evtInfo));
3001 else if (!muDependentRRN) {
3004 ATH_MSG_ERROR (
"Failed to find RandomRunNumber decoration! You need to call ApplyPRWTool() beforehand!" );
◆ GetRunNumber()
unsigned int ST::SUSYObjDef_xAOD::GetRunNumber |
( |
| ) |
const |
|
finaloverridevirtual |
◆ getSherpaVjetsNjetsWeight() [1/2]
float ST::SUSYObjDef_xAOD::getSherpaVjetsNjetsWeight |
( |
| ) |
const |
|
finaloverridevirtual |
◆ getSherpaVjetsNjetsWeight() [2/2]
float ST::SUSYObjDef_xAOD::getSherpaVjetsNjetsWeight |
( |
const std::string & |
jetContainer | ) |
const |
|
finaloverridevirtual |
◆ GetSignalElecSF()
float ST::SUSYObjDef_xAOD::GetSignalElecSF |
( |
const xAOD::Electron & |
el, |
|
|
const bool |
recoSF = true , |
|
|
const bool |
idSF = true , |
|
|
const bool |
triggerSF = true , |
|
|
const bool |
isoSF = true , |
|
|
const std::string & |
trigExpr = "singleLepton" , |
|
|
const bool |
ecidsSF = false , |
|
|
const bool |
cidSF = false |
|
) |
| |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 418 of file Electrons.cxx.
428 ATH_MSG_ERROR(
"No signal electron ID or trigger scale factors provided for the selected working point!");
433 std::string singleLepStr =
"singleLepton";
434 std::string diLepStr =
"diLepton";
435 std::string multiLepStr =
"multiLepton";
448 ATH_MSG_ERROR(
"Failed to retrieve signal electron reco SF");
451 ATH_MSG_VERBOSE(
"OutOfValidityRange found for signal electron reco SF");
470 ATH_MSG_VERBOSE(
"OutOfValidityRange found for signal electron id SF");
479 std::vector<std::string> trigMChains={};
480 std::string theExpr (
"");
481 if(trigExpr==singleLepStr) {
490 ATH_MSG_WARNING(
"Only single lepton trigger SFs are supported in GetSignalElecSF(). Use GetTriggerGlobalEfficiencySF() for dilepton or multilepton triggers!");
496 if(!acc_trigmatched(
el)){
497 ATH_MSG_DEBUG(
"Electron was not matched to trigger " << theExpr <<
" - scale factor does not apply (year " << this->
treatAsYear() <<
") Returning 1." );
500 if (trigExpr==multiLepStr || trigExpr==diLepStr) {
501 ATH_MSG_WARNING(
"The dilepton or multilepton trigger SFs are not supported in GetSignalElecSF(). Use GetTriggerGlobalEfficiencySF()!");
526 ATH_MSG_VERBOSE(
"OutOfValidityRange found for signal electron iso SF");
534 if ( ecidsSF || cidSF ) {
544 dec_sfChIDEff(
el) = chf_sf;
549 dec_effscalefact(
el) =
sf;
◆ GetSignalMuonSF()
float ST::SUSYObjDef_xAOD::GetSignalMuonSF |
( |
const xAOD::Muon & |
mu, |
|
|
const bool |
recoSF = true , |
|
|
const bool |
isoSF = true , |
|
|
const bool |
doBadMuonHP = true , |
|
|
const bool |
warnOVR = true |
|
) |
| |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 477 of file Muons.cxx.
484 if(warnOVR)
ATH_MSG_WARNING(
" GetSignalMuonSF: Reco getEfficiencyScaleFactor out of validity range");
492 if(warnOVR)
ATH_MSG_WARNING(
" GetSignalMuonSF: TTVA getEfficiencyScaleFactor out of validity range");
498 float sf_badHighPt(1.);
499 if(
m_muId == 4 && doBadMuonHP){
501 if(warnOVR)
ATH_MSG_WARNING(
" GetSignalMuonSF: BadMuonHighPt getEfficiencyScaleFactor out of validity range");
513 if(warnOVR)
ATH_MSG_WARNING(
" GetSignalMuonSF: high-pt Iso getEfficiencyScaleFactor out of validity range");
517 if(warnOVR)
ATH_MSG_WARNING(
" GetSignalMuonSF: Iso getEfficiencyScaleFactor out of validity range");
525 dec_effscalefact(
mu) =
sf;
◆ GetSignalPhotonSF()
◆ GetSignalPhotonSFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 244 of file Photons.cxx.
250 if (ret != StatusCode::SUCCESS) {
251 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (reco) for systematic var. " << systConfig.
name() );
255 if (ret != StatusCode::SUCCESS) {
256 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (iso) for systematic var. " << systConfig.
name() );
260 if (ret != StatusCode::SUCCESS) {
261 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (trigger) for systematic var. " << systConfig.
name() );
286 double sf_trigger = 1.;
296 if (ret != StatusCode::SUCCESS) {
297 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool back to default.");
301 if (ret != StatusCode::SUCCESS) {
302 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (iso) for systematic var. " << systConfig.
name() );
306 if (ret != StatusCode::SUCCESS) {
307 ATH_MSG_ERROR(
"Cannot configure AsgPhotonEfficiencyCorrectionTool (trigger) for systematic var. " << systConfig.
name() );
312 dec_effscalefact(ph) =
sf;
◆ GetSignalTauSF()
double ST::SUSYObjDef_xAOD::GetSignalTauSF |
( |
const xAOD::TauJet & |
tau, |
|
|
const bool |
idSF = true , |
|
|
const bool |
triggerSF = true , |
|
|
const std::string & |
trigExpr = "tau25_medium1_tracktwo" |
|
) |
| |
|
finaloverridevirtual |
◆ GetSignalTauSFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 159 of file Taus.cxx.
169 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure TauEfficiencyCorrectionsTool for systematic var. " << systConfig.
name() ); }
172 ret =
tool->applySystematicVariation(systConfig);
173 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure " <<
tool->name() <<
" for systematic var. " << systConfig.
name()); }
180 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure TauEfficiencyCorrectionsTool back to default"); }
184 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure " <<
tool->name() <<
" back to default"); }
187 dec_effscalefact(tau) =
sf;
◆ GetSumOfWeights()
double ST::SUSYObjDef_xAOD::GetSumOfWeights |
( |
int |
channel | ) |
|
|
finaloverridevirtual |
◆ getSystInfo()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 2540 of file SUSYObjDef_xAOD.cxx.
2543 sysInfo.affectsKinematics =
false;
2544 sysInfo.affectsWeights =
false;
2545 sysInfo.affectedWeights.clear();
2546 sysInfo.systset.insert(
sys);
2550 sysInfo.affectsWeights =
true;
2552 sysInfo.affectedWeights.insert(ST::Weights::Jet::JVT);
2558 sysInfo.affectsWeights =
true;
2560 sysInfo.affectedWeights.insert(ST::Weights::Jet::FJVT);
2564 if (
sys.name().find(
"__2") == std::string::npos) {
2567 sysInfo.affectsKinematics =
true;
2572 if (
sys.name().find(
"__2") != std::string::npos) {
2575 sysInfo.affectsKinematics =
true;
2583 sysInfo.affectsKinematics =
true;
2589 sysInfo.affectsKinematics =
true;
2595 sysInfo.affectsKinematics =
true;
2601 sysInfo.affectsKinematics =
true;
2608 sysInfo.affectsKinematics =
true;
2614 sysInfo.affectsWeights =
true;
2616 sysInfo.affectedWeights.insert(ST::Weights::Electron::Trigger);
2621 sysInfo.affectsWeights =
true;
2623 sysInfo.affectedWeights.insert(ST::Weights::Electron::Trigger);
2628 sysInfo.affectsWeights =
true;
2630 sysInfo.affectedWeights.insert(ST::Weights::Muon::Reconstruction);
2635 sysInfo.affectsWeights =
true;
2637 sysInfo.affectedWeights.insert(ST::Weights::Muon::Reconstruction);
2642 sysInfo.affectsWeights =
true;
2644 sysInfo.affectedWeights.insert(ST::Weights::Muon::Reconstruction);
2649 sysInfo.affectsWeights =
true;
2651 sysInfo.affectedWeights.insert(ST::Weights::Muon::Isolation);
2656 sysInfo.affectsWeights =
true;
2658 sysInfo.affectedWeights.insert(ST::Weights::Muon::Trigger);
2663 sysInfo.affectsWeights =
true;
2665 sysInfo.affectedWeights.insert(ST::Weights::Electron::Reconstruction);
2670 sysInfo.affectsWeights =
true;
2672 sysInfo.affectedWeights.insert(ST::Weights::Electron::ID);
2677 sysInfo.affectsWeights =
true;
2679 sysInfo.affectedWeights.insert(ST::Weights::Electron::Trigger);
2684 sysInfo.affectsWeights =
true;
2686 sysInfo.affectedWeights.insert(ST::Weights::Electron::Trigger);
2691 sysInfo.affectsWeights =
true;
2693 sysInfo.affectedWeights.insert(ST::Weights::Electron::Isolation);
2698 sysInfo.affectsWeights =
true;
2700 sysInfo.affectedWeights.insert(ST::Weights::Electron::Isolation);
2705 sysInfo.affectsKinematics =
true;
2706 if (
sys.basename().compare(0, 3,
"EG_") == 0) {
2708 }
else if (
sys.basename().compare(0, 3,
"PH_") == 0) {
2710 }
else if (
sys.basename().compare(0, 3,
"EL_") == 0) {
2717 sysInfo.affectsWeights =
false;
2718 sysInfo.affectsKinematics =
true;
2724 sysInfo.affectsWeights =
true;
2726 sysInfo.affectedWeights.insert(ST::Weights::Photon::Reconstruction);
2731 sysInfo.affectsWeights =
true;
2733 sysInfo.affectedWeights.insert(ST::Weights::Photon::Isolation);
2738 sysInfo.affectsWeights =
true;
2740 sysInfo.affectedWeights.insert(ST::Weights::Photon::Trigger);
2745 sysInfo.affectsWeights =
true;
2747 sysInfo.affectedWeights.insert(ST::Weights::Photon::Trigger);
2752 sysInfo.affectsWeights =
true;
2754 sysInfo.affectedWeights.insert(ST::Weights::Jet::Btag);
2759 sysInfo.affectsWeights =
true;
2761 sysInfo.affectedWeights.insert(ST::Weights::Jet::Btag_Track);
2766 sysInfo.affectsKinematics =
true;
2772 sysInfo.affectsWeights =
true;
2774 sysInfo.affectedWeights.insert(ST::Weights::Tau::Reconstruction);
2778 if(
tool->isAffectedBySystematic(
sys)) {
2779 sysInfo.affectsWeights =
true;
2781 sysInfo.affectedWeights.insert(ST::Weights::Tau::Trigger);
2787 sysInfo.affectsKinematics =
true;
2805 sysInfo.affectsWeights =
true;
2812 sysInfo.affectsKinematics =
true;
2817 std::string affectedType;
2818 switch (sysInfo.affectsType) {
2819 case Unknown : affectedType =
"UNKNOWN";
break;
2820 case Jet : affectedType =
"JET";
break;
2821 case Egamma : affectedType =
"EGAMMA";
break;
2822 case Electron : affectedType =
"ELECTRON";
break;
2823 case Photon : affectedType =
"PHOTON";
break;
2824 case Muon : affectedType =
"MUON";
break;
2825 case Tau : affectedType =
"TAU";
break;
2826 case BTag : affectedType =
"BTAG";
break;
2827 case MET_TST : affectedType =
"MET_TST";
break;
2828 case MET_CST : affectedType =
"MET_CST";
break;
2829 case MET_Track : affectedType =
"MET_Track";
break;
2830 case EventWeight : affectedType =
"EVENT WEIGHT";
break;
2831 case LRT_Object : affectedType =
"LRT_OBJECT";
break;
2835 << ( sysInfo.affectsWeights ?
"weights " :
"" )
2836 << ( sysInfo.affectsKinematics ?
"kinematics " :
"" )
2837 <<
"for " << affectedType );
◆ getSystInfoList()
std::vector< ST::SystInfo > ST::SUSYObjDef_xAOD::getSystInfoList |
( |
| ) |
const |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 2497 of file SUSYObjDef_xAOD.cxx.
2500 return vector<ST::SystInfo>();
2509 vector<SystInfo> sysInfoList;
2510 sysInfoList.reserve(recommendedSystematics.
size() * 2);
2514 infodef.affectsKinematics =
false;
2515 infodef.affectsWeights =
false;
2516 infodef.affectsType =
Unknown;
2517 infodef.affectedWeights.clear();
2518 sysInfoList.push_back(infodef);
2523 for (
const auto&
sys : systSet) {
2527 std::string JER_systematicName =
sys.name();
2528 JER_systematicName = std::regex_replace(JER_systematicName,
std::regex(
"__1"),
"__2");
2536 ATH_MSG_INFO(
"Returning list of " << sysInfoList.size() <<
" systematic variations");
◆ getTauConfig()
void ST::SUSYObjDef_xAOD::getTauConfig |
( |
const std::string & |
tauConfigPath, |
|
|
std::vector< float > & |
pT_window, |
|
|
std::vector< float > & |
eta_window, |
|
|
bool & |
eleOLR, |
|
|
bool & |
muVeto, |
|
|
bool & |
muOLR |
|
) |
| const |
|
protected |
Definition at line 1812 of file SUSYObjDef_xAOD.cxx.
1814 if(tauConfigPath.empty())
return;
1818 rEnv.ReadFile(
filename.c_str(), kEnvAll);
1820 std::vector<std::string>
cuts;
1821 if (rEnv.Defined(
"SelectionCuts")) {
1822 cuts =
split(rEnv.GetValue(
"SelectionCuts",
" "),
" ");
1824 auto *
l = rEnv.GetTable();
1825 for( Int_t
i = 0;
i <
l->GetEntries(); ++
i ) {
1826 cuts.push_back(
l->At(
i)->GetName() );
1835 static const std::string trueBool =
"TRUE";
1838 std::vector<std::string> v_pT_window;
1839 std::vector<std::string> v_eta_window;
1842 float pT_min = -99.0;
1843 float pT_max = -99.0;
1844 float eta_min = -99.0;
1845 float eta_max = -99.0;
1846 for (
const auto&
cut :
cuts) {
1847 if(
cut ==
"PtRegion") {
1848 v_pT_window =
split(rEnv.GetValue(
"PtRegion",
""),
";");
1851 std::back_inserter(pT_window),
1852 [](
const std::string&
s) {
return std::stof(
s); }
1854 }
else if (
cut ==
"PtMin") {
1855 pT_min = rEnv.GetValue(
"PtMin", NAN);
1856 }
else if (
cut ==
"PtMax") {
1857 pT_max = rEnv.GetValue(
"PtMax", NAN);
1858 }
else if (
cut ==
"AbsEtaRegion") {
1859 v_eta_window =
split(rEnv.GetValue(
"AbsEtaRegion",
""),
";");
1862 std::back_inserter(eta_window),
1863 [](
const std::string&
s) {
return std::stof(
s); }
1865 }
else if (
cut ==
"AbsEtaMin") {
1866 eta_min = rEnv.GetValue(
"AbsEtaMin", NAN);
1867 }
else if (
cut ==
"AbsEtaMax") {
1868 eta_max = rEnv.GetValue(
"AbsEtaMax", NAN);
1872 else if (
cut ==
"EleOLR"){
1873 eleOLR = (rEnv.GetValue(
"EleOLR",
"FALSE") == trueBool);
1875 else if (
cut ==
"MuonVeto"){
1876 muVeto = (rEnv.GetValue(
"MuonVeto",
"FALSE") == trueBool);
1878 else if (
cut ==
"MuonOLR"){
1879 muOLR = (rEnv.GetValue(
"MuonOLR",
"FALSE") == trueBool);
1883 if(pT_window.empty()) {
1884 if(pT_min == pT_min) {
1886 pT_window.push_back(pT_min);
1888 pT_window.push_back(-std::numeric_limits<float>::infinity());
1891 if(pT_max == pT_max) {
1893 pT_window.push_back(pT_max);
1895 pT_window.push_back(std::numeric_limits<float>::infinity());
1899 if(eta_window.empty()) {
1900 if(eta_min == eta_min) {
1902 eta_window.push_back(eta_min);
1904 eta_window.push_back(-std::numeric_limits<float>::infinity());
1907 if(eta_max == eta_max) {
1909 eta_window.push_back(eta_max);
1911 eta_window.push_back(std::numeric_limits<float>::infinity());
◆ GetTaus()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 30 of file Taus.cxx.
35 return StatusCode::FAILURE;
38 if (
m_isPHYSLITE && taukey.find(
"AnalysisTauJets")==std::string::npos){
39 ATH_MSG_ERROR(
"You are running on PHYSLITE derivation. Please change the Taus container to 'AnalysisTauJets'");
40 return StatusCode::FAILURE;
45 if (containerToBeCopied !=
nullptr) {
46 taus = containerToBeCopied;
52 copy = shallowcopy.first;
53 copyaux = shallowcopy.second;
59 ATH_MSG_DEBUG(
"Not retrieving tau collecton, using existing one provided by user");
63 for (
const auto& tau : *
copy) {
71 return StatusCode::SUCCESS;
◆ GetTauTriggerEfficiencySF()
double ST::SUSYObjDef_xAOD::GetTauTriggerEfficiencySF |
( |
const xAOD::TauJet & |
tau, |
|
|
const std::string & |
trigExpr = "tau25_medium1_tracktwo" |
|
) |
| |
|
finaloverridevirtual |
◆ GetTotalElectronSF()
◆ GetTotalElectronSFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 636 of file Electrons.cxx.
641 if (ret != StatusCode::SUCCESS) {
642 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (reco) for systematic var. " << systConfig.
name() );
646 if (ret != StatusCode::SUCCESS) {
647 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (id) for systematic var. " << systConfig.
name() );
651 if (ret != StatusCode::SUCCESS) {
652 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (trigger) for systematic var. " << systConfig.
name() );
656 if (ret != StatusCode::SUCCESS) {
657 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (iso) for systematic var. " << systConfig.
name() );
661 if (ret != StatusCode::SUCCESS) {
662 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (iso high-pt) for systematic var. " << systConfig.
name() );
666 if (ret != StatusCode::SUCCESS) {
667 ATH_MSG_ERROR(
"Cannot configure ElectronChargeEfficiencyCorrectionTool for systematic var. " << systConfig.
name() );
676 if (ret != StatusCode::SUCCESS) {
677 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (reco) back to default.");
681 if (ret != StatusCode::SUCCESS) {
682 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (id) back to default.");
686 if (ret != StatusCode::SUCCESS) {
687 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (trigger) back to default.");
691 if (ret != StatusCode::SUCCESS) {
692 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (iso) back to default.");
696 if (ret != StatusCode::SUCCESS) {
697 ATH_MSG_ERROR(
"Cannot configure AsgElectronEfficiencyCorrectionTool (iso high-pt) back to default.");
701 if (ret != StatusCode::SUCCESS) {
702 ATH_MSG_ERROR(
"Cannot configure ElectronChargeEfficiencyCorrectionTool back to default.");
◆ GetTotalJetSF()
◆ GetTotalJetSFsys()
◆ GetTotalMuonSF()
double ST::SUSYObjDef_xAOD::GetTotalMuonSF |
( |
const xAOD::MuonContainer & |
muons, |
|
|
const bool |
recoSF = true , |
|
|
const bool |
isoSF = true , |
|
|
const std::string & |
trigExpr = "HLT_mu20_iloose_L1MU15_OR_HLT_mu50" , |
|
|
const bool |
bmhptSF = true |
|
) |
| |
|
finaloverridevirtual |
◆ GetTotalMuonSFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 619 of file Muons.cxx.
623 if ( ret != StatusCode::SUCCESS) {
624 ATH_MSG_ERROR(
"Cannot configure MuonEfficiencyScaleFactors for systematic var. " << systConfig.
name() );
628 if ( ret != StatusCode::SUCCESS) {
629 ATH_MSG_ERROR(
"Cannot configure MuonBadMuonHighPtScaleFactors for systematic var. " << systConfig.
name() );
633 if ( ret != StatusCode::SUCCESS) {
634 ATH_MSG_ERROR(
"Cannot configure MuonTTVAEfficiencyScaleFactors for systematic var. " << systConfig.
name() );
638 if ( ret != StatusCode::SUCCESS) {
639 ATH_MSG_ERROR(
"Cannot configure MuonIsolationScaleFactors for systematic var. " << systConfig.
name() );
643 if ( ret != StatusCode::SUCCESS) {
644 ATH_MSG_ERROR(
"Cannot configure MuonHighPtIsolationScaleFactors for systematic var. " << systConfig.
name() );
648 if ( ret != StatusCode::SUCCESS) {
649 ATH_MSG_ERROR(
"Cannot configure MuonTriggerScaleFactors for systematic var. " << systConfig.
name() );
653 if (ret != StatusCode::SUCCESS) {
654 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (trigger) for systematic var. " << systConfig.
name() );
658 if (ret != StatusCode::SUCCESS) {
659 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (trigger) for systematic var. " << systConfig.
name() );
666 if ( ret != StatusCode::SUCCESS) {
667 ATH_MSG_ERROR(
"Cannot configure MuonEfficiencyScaleFactors back to default.");
671 if ( ret != StatusCode::SUCCESS) {
672 ATH_MSG_ERROR(
"Cannot configure MuonBadMuonHighPtScaleFactors back to default.");
676 if ( ret != StatusCode::SUCCESS) {
677 ATH_MSG_ERROR(
"Cannot configure MuonTTVAEfficiencyScaleFactors back to default.");
681 if ( ret != StatusCode::SUCCESS) {
682 ATH_MSG_ERROR(
"Cannot configure MuonIsolationScaleFactors back to default.");
686 if ( ret != StatusCode::SUCCESS) {
687 ATH_MSG_ERROR(
"Cannot configure MuonIsolationScaleFactors back to default.");
691 if ( ret != StatusCode::SUCCESS) {
692 ATH_MSG_ERROR(
"Cannot configure MuonTriggerScaleFactors back to default.");
696 if (ret != StatusCode::SUCCESS) {
697 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (trigger) back to default.");
701 if (ret != StatusCode::SUCCESS) {
702 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (trigger) back to default.");
◆ GetTotalMuonTriggerSF()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 544 of file Muons.cxx.
546 if (trigExpr.empty() || sfmuons.
empty())
return 1.;
552 const char *
tmp = trigExpr.c_str();
553 while( (
tmp = strstr(
tmp,
"mu")) ){
558 bool isdimuon = (trigExpr.find(
"2mu") != std::string::npos);
559 bool isOR = (trigExpr.find(
"OR") != std::string::npos);
561 if((!isdimuon && mulegs<2) || (isdimuon && sfmuons.
size()==2) || (mulegs>=2 && isOR)){
569 else if(mulegs!=2 && isOR){
570 ATH_MSG_WARNING(
"SF for " << trigExpr <<
" are only supported for two muon events!");
574 std::string newtrigExpr = TString(trigExpr).Copy().ReplaceAll(
"HLT_2",
"").Data();
577 if (isdimuon) { newtrigExpr +=
"_"+newtrigExpr; }
578 boost::replace_all(newtrigExpr,
"HLT_",
"");
579 boost::char_separator<char>
sep(
"_");
581 for (
const auto& mutrig : boost::tokenizer<boost::char_separator<char>>(newtrigExpr,
sep)) {
582 double dataFactor = 1.;
583 double mcFactor = 1.;
590 if( (1-mcFactor) > 0. )
591 trig_sf *= (1-dataFactor)/(1-mcFactor);
◆ GetTotalPhotonSF()
◆ GetTotalPhotonSFsys()
◆ GetTotalTauSF()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 227 of file Taus.cxx.
233 if (!acc_passOR.isAvailable(*tau)) {
234 ATH_MSG_WARNING(
"Tau does not have Overlap Removal decision set. You should only call GetTotalTauSF with taus that have been passed through OR. SF will NOT be applied!");
240 if (acc_signal(*tau) && acc_passOR(*tau)) {
◆ GetTotalTauSFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 249 of file Taus.cxx.
254 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure TauEfficiencyCorrectionsTool for systematic var. " << systConfig.
name() ); }
257 ret =
tool->applySystematicVariation(systConfig);
258 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure " <<
tool->name() <<
" for systematic var. " << systConfig.
name()); }
265 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure TauEfficiencyCorrectionsTool back to default"); }
269 if (ret != StatusCode::SUCCESS) {
ATH_MSG_ERROR(
"Cannot configure " <<
tool->name() <<
" back to default"); }
◆ GetTrackJets()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 170 of file Jets.cxx.
174 return StatusCode::FAILURE;
178 ATH_MSG_DEBUG(
"Function argument jetkey (trkjet): " << jetkey);
184 if (!jetkey.empty()) {
189 ATH_MSG_DEBUG(
"Key for retrieving trkjet collection (as well as bjet info): jetkey = " << jetkey_tmp);
193 if (containerToBeCopied !=
nullptr) {
194 jets = containerToBeCopied;
201 copy = shallowcopy.first;
202 copyaux = shallowcopy.second;
205 ATH_MSG_WARNING(
"Failed to set original object links on " << jetkey_tmp);
208 ATH_MSG_DEBUG(
"Not retrieving jet collection, using existing one provided by user");
216 for (
const auto&
jet : *
copy) {
224 if (!acc_signal(*jet1))
continue;
227 if (!acc_baseline(*jet2))
continue;
230 const xAOD::Jet* to_check = acc_VRradius(*jet1) < acc_VRradius(*jet2) ? jet1 : jet2;
231 if( dr_jets < acc_VRradius(*to_check)) dec_passDRcut(*to_check) =
false;
240 return StatusCode::SUCCESS;
◆ GetTrackMET()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 161 of file MET.cxx.
167 return StatusCode::FAILURE;
173 return StatusCode::FAILURE;
178 return StatusCode::FAILURE;
183 metHelper.resetObjSelectionFlags();
190 if (acc_baseline(*
el)) metelectron.push_back(
el);
200 if (acc_baseline(*
mu)) metmuon.push_back(
mu);
206 ATH_MSG_WARNING(
"Invalid jet container specified for MET rebuilding!");
207 return StatusCode::SUCCESS;
211 std::string softTerm =
"PVSoftTrk";
220 ATH_MSG_WARNING(
"GetMET: Failed to apply MET track (PVSoftTrk) systematics.");
226 ATH_MSG_WARNING(
"GetMET: Failed to apply MET track (RefJet) systematics.");
235 ATH_MSG_VERBOSE(
"Track MET: Missing Et (x,y): (" <<
met[
"Track"]->mpx() <<
"," <<
met[
"Track"]->mpy() <<
")");
237 return StatusCode::SUCCESS;
◆ GetTrigChainGroup()
◆ GetTriggerFeatures()
Trig::FeatureContainer ST::SUSYObjDef_xAOD::GetTriggerFeatures |
( |
const std::string & |
chainName = "EF_.*" , |
|
|
unsigned int |
condition = TrigDefs::Physics |
|
) |
| const |
◆ GetTriggerGlobalEfficiency() [1/2]
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 555 of file Trigger.cxx.
558 double trig_eff_data(1.);
560 if (trigExpr!=
"multiLepton" && trigExpr!=
"diLepton") {
561 ATH_MSG_ERROR(
"Failed to retrieve multi-lepton trigger efficiency");
565 std::vector<const xAOD::Electron*> elec_trig;
567 if (!acc_passOR(*
electron))
continue;
568 if (!acc_signal(*
electron))
continue;
572 std::vector<const xAOD::Muon*> muon_trig;
574 if (!acc_passOR(*
muon))
continue;
575 if (!acc_signal(*
muon))
continue;
576 muon_trig.push_back(
muon);
580 if ((elec_trig.size()+muon_trig.size())>1 && trigExpr==
"diLepton") {
582 ATH_MSG_ERROR (
"trigGlobEffCorrTool::Trigger matching could not be checked, interrupting execution.");
584 }
else if ((elec_trig.size()+muon_trig.size())>2 && trigExpr==
"multiLepton") {
586 ATH_MSG_ERROR (
"trigGlobEffCorrTool::Trigger matching could not be checked, interrupting execution.");
591 if ((elec_trig.size()+muon_trig.size())>1 && trigExpr==
"diLepton" &&
matched) {
594 else if ((elec_trig.size()+muon_trig.size())>2 && trigExpr==
"multiLepton" &&
matched) {
600 ATH_MSG_ERROR(
"Failed to retrieve multi-lepton trigger efficiency");
603 ATH_MSG_VERBOSE(
"OutOfValidityRange found for multi-lepton trigger efficiency");
609 if (
isData())
return trig_eff_data;
610 else return trig_eff;
◆ GetTriggerGlobalEfficiency() [2/2]
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 616 of file Trigger.cxx.
619 double trig_eff_data(1.);
621 if (trigExpr!=
"diPhoton") {
622 ATH_MSG_ERROR(
"Failed to retrieve diphoton trigger efficiency");
626 std::vector<const xAOD::Photon*> ph_trig;
628 if (!acc_passOR(*
photon))
continue;
629 if (!acc_signal(*
photon))
continue;
630 ph_trig.push_back(
photon);
634 if (ph_trig.size()>1) {
640 ATH_MSG_ERROR(
"Failed to retrieve diphoton trigger efficiency");
643 ATH_MSG_VERBOSE(
"OutOfValidityRange found for diphoton trigger efficiency");
649 if (
isData())
return trig_eff_data;
650 else return trig_eff;
◆ GetTriggerGlobalEfficiencySF() [1/2]
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 400 of file Trigger.cxx.
404 if (trigExpr!=
"multiLepton" && trigExpr!=
"diLepton") {
405 ATH_MSG_ERROR(
"Failed to retrieve multi-lepton trigger SF");
409 std::vector<const xAOD::Electron*> elec_trig;
411 if (!acc_passOR(*
electron))
continue;
412 if (!acc_signal(*
electron))
continue;
416 std::vector<const xAOD::Muon*> muon_trig;
418 if (!acc_passOR(*
muon))
continue;
419 if (!acc_signal(*
muon))
continue;
420 muon_trig.push_back(
muon);
424 if ((elec_trig.size()+muon_trig.size())>1 && trigExpr==
"diLepton") {
426 ATH_MSG_ERROR (
"trigGlobEffCorrTool::Trigger matching could not be checked, interrupting execution.");
428 }
else if ((elec_trig.size()+muon_trig.size())>2 && trigExpr==
"multiLepton") {
430 ATH_MSG_ERROR (
"trigGlobEffCorrTool::Trigger matching could not be checked, interrupting execution.");
435 if ((elec_trig.size()+muon_trig.size())>1 && trigExpr==
"diLepton" &&
matched) {
438 else if ((elec_trig.size()+muon_trig.size())>2 && trigExpr==
"multiLepton" &&
matched) {
444 ATH_MSG_ERROR(
"Failed to retrieve multi-lepton trigger SF");
447 ATH_MSG_VERBOSE(
"OutOfValidityRange found for multi-lepton trigger SF");
◆ GetTriggerGlobalEfficiencySF() [2/2]
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 498 of file Trigger.cxx.
502 if (trigExpr!=
"diPhoton") {
507 std::vector<const xAOD::Photon*> ph_trig;
509 if (!acc_passOR(*
photon))
continue;
510 if (!acc_signal(*
photon))
continue;
511 ph_trig.push_back(
photon);
515 if (ph_trig.size()>1) {
◆ GetTriggerGlobalEfficiencySFsys() [1/2]
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 456 of file Trigger.cxx.
461 if (trigExpr ==
"diLepton") {
463 if (ret != StatusCode::SUCCESS) {
464 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (dilepton trigger) for systematic var. " << systConfig.
name() );
468 if (trigExpr ==
"multiLepton") {
470 if (ret != StatusCode::SUCCESS) {
471 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (multi-lepton trigger) for systematic var. " << systConfig.
name() );
479 if (trigExpr ==
"diLepton") {
481 if (ret != StatusCode::SUCCESS) {
482 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (dilepton trigger) back to default.");
485 if (trigExpr ==
"multiLepton") {
487 if (ret != StatusCode::SUCCESS) {
488 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (multi-lepton trigger) back to default.");
◆ GetTriggerGlobalEfficiencySFsys() [2/2]
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 533 of file Trigger.cxx.
539 if (ret != StatusCode::SUCCESS) {
540 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (diphoton trigger) for systematic var. " << systConfig.
name() );
548 if (ret != StatusCode::SUCCESS) {
549 ATH_MSG_ERROR(
"Cannot configure TrigGlobalEfficiencyCorrectionTool (diphoton trigger) back to default.");
◆ GetTriggerOR()
std::vector< std::string > ST::SUSYObjDef_xAOD::GetTriggerOR |
( |
const std::string & |
trigExpr | ) |
const |
Definition at line 322 of file Trigger.cxx.
324 static const std::string delOR =
"_OR_";
325 std::vector<std::string> trigchains = {};
326 std::string newtrigExpr = TString(trigExpr).Copy().ReplaceAll(
"||",delOR).Data();
327 newtrigExpr = TString(trigExpr).Copy().ReplaceAll(
" ",
"").Data();
330 while ((
pos = newtrigExpr.find(delOR)) != std::string::npos) {
331 trigchains.push_back(
"HLT_"+newtrigExpr.substr(0,
pos) );
332 newtrigExpr.erase(0,
pos + delOR.length());
334 if(
pos==std::string::npos)
335 trigchains.push_back(
"HLT_"+newtrigExpr);
◆ GetTriggerTokens()
void ST::SUSYObjDef_xAOD::GetTriggerTokens |
( |
std::string |
trigExpr, |
|
|
std::vector< std::string > & |
v_trigs15_cache, |
|
|
std::vector< std::string > & |
v_trigs16_cache, |
|
|
std::vector< std::string > & |
v_trigs17_cache, |
|
|
std::vector< std::string > & |
v_trigs18_cache, |
|
|
std::vector< std::string > & |
v_trigs22_cache |
|
) |
| const |
Definition at line 340 of file Trigger.cxx.
344 static const std::string del15 =
"_2015_";
345 static const std::string del16 =
"_2016_";
346 static const std::string del17 =
"_2017_";
347 static const std::string del18 =
"_2018_";
348 static const std::string del22 =
"_2022_";
351 std::string token15, token16, token17, token18, token22;
354 if ( (
pos = trigExpr.find(del15)) != std::string::npos) {
355 trigExpr.erase(0,
pos + del15.length());
358 while ((
pos = trigExpr.find(del16)) != std::string::npos) {
359 token15 = trigExpr.substr(0,
pos);
360 token16 = trigExpr.erase(0,
pos + del16.length() + del17.length() - 1);
367 if ( (
pos = trigExpr.find(del22)) != std::string::npos) {
368 trigExpr.erase(0,
pos + del22.length());
373 if(token15.empty()) token15 = trigExpr;
374 if(token16.empty()) token16 = trigExpr;
375 if(token17.empty()) token17 = trigExpr;
376 if(token18.empty()) token18 = trigExpr;
379 if(token22.empty()) token22 = trigExpr;
◆ GetTrigPrescale()
float ST::SUSYObjDef_xAOD::GetTrigPrescale |
( |
const std::string & |
tr_item | ) |
const |
|
finaloverridevirtual |
◆ handle()
void asg::AsgMetadataTool::handle |
( |
const Incident & |
inc | ) |
|
|
protectedvirtualinherited |
Function receiving incidents from IncidentSvc/TEvent.
Reimplemented in Trig::TrigDecisionTool.
Definition at line 130 of file AsgMetadataTool.cxx.
136 if( inc.type() == IncidentType::BeginInputFile ) {
140 throw std::runtime_error(
"Couldn't call beginInputFile()" );
142 }
else if( inc.type() == IncidentType::EndInputFile ) {
145 throw std::runtime_error(
"Couldn't call endInputFile()" );
147 }
else if( inc.type() == IncidentType::BeginEvent ) {
155 throw std::runtime_error(
"Couldn't call beginInputFile()" );
160 throw std::runtime_error(
"Couldn't call beginEvent()" );
163 #ifdef XAOD_STANDALONE
164 }
else if( inc.type() == IncidentType::MetaDataStop ) {
167 throw std::runtime_error(
"Couldn't call metaDataStop()" );
170 #endif // XAOD_STANDALONE
172 ATH_MSG_WARNING(
"Unknown incident type received in AsgMetaDataTool: " << inc.type() );
◆ initialize()
StatusCode ST::SUSYObjDef_xAOD::initialize |
( |
| ) |
|
|
finaloverridevirtual |
Dummy implementation of the initialisation function.
It's here to allow the dual-use tools to skip defining an initialisation function. Since many are doing so...
Reimplemented from asg::AsgTool.
Definition at line 872 of file SUSYObjDef_xAOD.cxx.
875 ATH_MSG_ERROR(
"Initialising for a second time -- something is wrong!");
876 return StatusCode::FAILURE;
882 bool autoconf(
false);
883 #ifndef XAOD_STANDALONE // For now metadata is Athena-only
886 ATH_MSG_INFO(
"Autoconfiguring: dataSource, mcCampaign, isPHYSLITE");
887 std::string projectName =
"";
889 if ( projectName ==
"IS_SIMULATION" ) {
890 std::string simFlavour =
"";
892 TString
s(simFlavour);
s.ToUpper();
894 }
else if (projectName.compare(0, 4,
"data") == 0 ) {
897 ATH_MSG_ERROR(
"Failed to autoconfigure -- project_name matches neither IS_SIMULATION nor data!");
898 return StatusCode::FAILURE;
911 ATH_MSG_FATAL(
"You must set the DataSource property to Data, FullSim or AtlfastII !!");
912 if (autoconf)
ATH_MSG_FATAL(
"Autoconfiguration seems to have failed!");
915 return StatusCode::FAILURE;
927 return StatusCode::FAILURE;
962 m_eleIdDFName =
m_eleId.find(
"DNN") == std::string::npos ?
"DFCommonElectronsLH" :
"DFCommonElectronsDNN";
963 m_eleIdDFName += TString(
m_eleId).ReplaceAll(
"LooseAndBLayer",
"LooseBL").ReplaceAll(
"LLH",
"").ReplaceAll(
"DNNnoCF",
"").ReplaceAll(
"DNN",
"").Data();
964 if (
m_eleId.find(
"noCF") != std::string::npos)
998 return StatusCode::SUCCESS;
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ inputMetaStore()
AsgMetadataTool::MetaStorePtr_t asg::AsgMetadataTool::inputMetaStore |
( |
| ) |
const |
|
inherited |
Accessor for the input metadata store.
Definition at line 88 of file AsgMetadataTool.cxx.
90 #ifdef XAOD_STANDALONE
92 #else // XAOD_STANDALONE
94 #endif // XAOD_STANDALONE
◆ isAtlfast()
bool ST::SUSYObjDef_xAOD::isAtlfast |
( |
| ) |
const |
|
inlinefinaloverridevirtual |
◆ IsBadJet()
◆ IsBadMuon()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 402 of file Muons.cxx.
405 dec_bad(
input) =
false;
408 dec_bad_highPt(
input) =
false;
411 if (
input.muonType() == xAOD::Muon::SiliconAssociatedForwardMuon) {
412 track =
input.trackParticle(xAOD::Muon::CombinedTrackParticle);
413 if (!
track)
return false;
418 ATH_MSG_WARNING(
"Non-SAF muon without a track; cannot test IsBadMuon criteria");
425 bool isbad = Rerr > qopcut;
426 bool isbadHighPt = Rerr > qopcut;
434 dec_bad(
input) = isbad;
435 dec_bad_highPt(
input) = isbadHighPt;
◆ IsBJet()
◆ IsBJetContinuous()
int ST::SUSYObjDef_xAOD::IsBJetContinuous |
( |
const xAOD::Jet & |
input | ) |
const |
|
finaloverridevirtual |
◆ IsBJetLoose()
bool ST::SUSYObjDef_xAOD::IsBJetLoose |
( |
const xAOD::Jet & |
input | ) |
const |
|
finaloverridevirtual |
◆ IsCosmicMuon()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 441 of file Muons.cxx.
443 dec_cosmic(
input) =
false;
446 if (
input.muonType() == xAOD::Muon::SiliconAssociatedForwardMuon) {
447 track =
input.trackParticle(xAOD::Muon::CombinedTrackParticle);
449 ATH_MSG_VERBOSE(
"WARNING: SAF muon without CB track found. Not possible to check cosmic muon criteria");
456 ATH_MSG_WARNING(
"Non-SAF muon without primary track particle found. Not possible to check cosmic muon criteria");
461 double mu_d0 =
track->d0();
463 double primvertex_z =
pv ?
pv->z() : 0;
464 double mu_z0_exPV =
track->z0() +
track->vz() - primvertex_z;
466 bool isCosmicMuon = (std::abs(mu_z0_exPV) >= z0cut || std::abs(mu_d0) >= d0cut);
469 ATH_MSG_VERBOSE(
"COSMIC PV Z = " << primvertex_z <<
", track z0 = " << mu_z0_exPV <<
", track d0 = " << mu_d0);
472 dec_cosmic(
input) = isCosmicMuon;
◆ isData()
bool ST::SUSYObjDef_xAOD::isData |
( |
| ) |
const |
|
inlinefinaloverridevirtual |
◆ IsHighPtMuon()
◆ IsMETTrigPassed() [1/2]
bool ST::SUSYObjDef_xAOD::IsMETTrigPassed |
( |
const std::string & |
triggerName, |
|
|
bool |
j400_OR = false |
|
) |
| const |
|
finaloverridevirtual |
◆ IsMETTrigPassed() [2/2]
bool ST::SUSYObjDef_xAOD::IsMETTrigPassed |
( |
unsigned int |
runnumber = 0 , |
|
|
bool |
j400_OR = false |
|
) |
| const |
|
finaloverridevirtual |
◆ isNominal()
◆ IsPFlowCrackVetoCleaning()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 261 of file MET.cxx.
268 bool passPFlowCVCleaning =
true;
272 if (acc_passCrackVetoCleaning.isAvailable(*
el)) {
273 if (!acc_passCrackVetoCleaning(*
el)) {
274 passPFlowCVCleaning =
false;
278 ATH_MSG_WARNING(
"DFCommonCrackVetoCleaning variable is not available! Use p3830 onwards for PFlow jets!");
283 if (passPFlowCVCleaning &&
gamma) {
285 if (acc_passCrackVetoCleaning.isAvailable(*ph)) {
286 if (!acc_passCrackVetoCleaning(*ph)) {
287 passPFlowCVCleaning =
false;
291 ATH_MSG_WARNING(
"DFCommonCrackVetoCleaning variable is not available! Use p3830 onwards for PFlow jets!");
296 return passPFlowCVCleaning;
◆ isPrompt()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 23 of file Truth.cxx.
25 const int type = acc_truthType(*
part);
26 int origin = acc_truthOrigin(*
part);
28 if(acc_bkgTruthOrigin.isAvailable(*
part)){
29 originbkg = acc_bkgTruthOrigin(*
part);
32 ATH_MSG_DEBUG(
"::isPrompt() : No bkgTruthOrigin decoration available. Returning false by default.");
44 case MCTruthPartClassifier::IsoElectron:
66 ATH_MSG_DEBUG(
"::isPrompt() : Only Electrons supported at the moment!");
◆ IsSignalElectron()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 360 of file Electrons.cxx.
362 if (!acc_baseline(
input))
return false;
364 dec_passSignalID(
input) =
false;
373 ATH_MSG_VERBOSE (
"DFCommonElectronsLHxxx variables are not found. Calculating the ID from LH tool..");
381 if (!acc_passSignalID(
input))
return false;
383 if (
input.p4().Perp2() <= etcut * etcut ||
input.p4().Perp2() == 0)
return false;
384 if ( etacut==DUMMYDEF ){
385 if(std::abs(
input.caloCluster()->etaBE(2)) >
m_eleEta )
return false;
387 else if ( std::abs(
input.caloCluster()->etaBE(2)) > etacut )
return false;
390 if ( std::abs(
input.caloCluster()->etaBE(2) ) >1.37 && std::abs(
input.caloCluster()->etaBE(2) ) <1.52) {
395 if (acc_d0sig(
input) != 0) {
396 if (d0sigcut > 0.0 && std::abs(acc_d0sig(
input)) > d0sigcut)
return false;
399 if (z0cut > 0.0 && std::abs(acc_z0sinTheta(
input)) > z0cut)
return false;
411 dec_signal(
input) =
true;
◆ IsSignalJet()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 658 of file Jets.cxx.
659 if ( !acc_baseline(
input) || !acc_passOR(
input) )
return false;
661 if (
input.pt() <=
ptcut || std::abs(
input.eta()) >= etacut)
return false;
663 bool isgoodjet = !acc_bad(
input) && acc_passJvt(
input);
665 dec_signal(
input) = isgoodjet;
672 float emfrac, hecf, LArQuality, HECQuality, Timing, fracSamplingMax, NegativeE, AverageLArQF;
673 std::vector<float> sumpttrk_vec;
686 if (!sumpttrk_vec.empty() && this->GetPrimVtx()) {
700 ATH_MSG_INFO(
"JET fracSamplingMax: " << fracSamplingMax );
◆ IsSignalMuon()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 341 of file Muons.cxx.
343 if (!acc_baseline(
input))
return false;
344 if (!acc_passSignalID(
input))
return false;
347 if ( etacut==DUMMYDEF ){
350 else if ( std::abs(
input.eta()) > etacut )
return false;
352 if (z0cut > 0.0 && std::abs(acc_z0sinTheta(
input)) > z0cut)
return false;
353 if (acc_d0sig(
input) != 0) {
354 if (d0sigcut > 0.0 && std::abs(acc_d0sig(
input)) > d0sigcut)
return false;
365 dec_signal(
input) =
true;
369 <<
" signal? " <<
static_cast<int>(acc_signal(
input))
370 <<
" isolation? " <<
static_cast<int>(acc_isol(
input))
371 <<
" passedHighPtCuts? " <<
static_cast<int>(acc_passedHighPtCuts(
input)));
374 <<
" signal? " <<
static_cast<int>( acc_signal(
input))
375 <<
" isolation? " <<
static_cast<int>( acc_isol(
input)));
379 return acc_signal(
input);
◆ IsSignalPhoton()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 164 of file Photons.cxx.
166 dec_signal(
input) =
false;
168 if ( !acc_baseline(
input) )
return false;
173 if ( etacut==DUMMYDEF ){
176 else if ( std::abs(
input.caloCluster()->etaBE(2)) > etacut )
return false;
179 if ( std::abs(
input.caloCluster()->etaBE(2) ) >1.37 && std::abs(
input.caloCluster()->etaBE(2) ) <1.52) {
192 ATH_MSG_VERBOSE (
"DFCommonPhotonsIsEMxxx variables are not found. Calculating the ID from Photon ID tool..");
195 if ( !passID )
return false;
197 dec_signal(
input) =
true;
◆ IsSignalTau()
◆ IsTrackBJet()
bool ST::SUSYObjDef_xAOD::IsTrackBJet |
( |
const xAOD::Jet & |
input | ) |
const |
|
finaloverridevirtual |
◆ IsTrackBJetContinuous()
int ST::SUSYObjDef_xAOD::IsTrackBJetContinuous |
( |
const xAOD::Jet & |
input | ) |
const |
|
finaloverridevirtual |
◆ isTrigInTDT()
bool ST::SUSYObjDef_xAOD::isTrigInTDT |
( |
std::scoped_lock< std::mutex > & |
lock, |
|
|
const std::string & |
triggerName |
|
) |
| const |
|
private |
Definition at line 85 of file Trigger.cxx.
88 auto mapItr = m_checkedTriggers.find(triggerName);
89 if ( mapItr == m_checkedTriggers.end() ) {
94 return mapItr->second;
◆ IsTrigMatched() [1/4]
◆ IsTrigMatched() [2/4]
◆ IsTrigMatched() [3/4]
◆ IsTrigMatched() [4/4]
◆ IsTrigPassed()
bool ST::SUSYObjDef_xAOD::IsTrigPassed |
( |
const std::string & |
tr_item, |
|
|
unsigned int |
condition = TrigDefs::Physics |
|
) |
| const |
|
finaloverridevirtual |
◆ IsTruthBJet()
bool ST::SUSYObjDef_xAOD::IsTruthBJet |
( |
const xAOD::Jet & |
input | ) |
const |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 309 of file Truth.cxx.
312 if (acc_signal(
input)) {
315 if (!
input.getAttribute(
"HadronConeExclTruthLabelID", truthlabel)) {
319 isBjet = std::abs(truthlabel) == 5;
323 dec_bjet_jetunc(
input) = isBjet;
◆ isVariation()
◆ isWeight()
Definition at line 2085 of file SUSYObjDef_xAOD.cxx.
2087 bool affectsWeights =
false;
2088 for (
const auto&
sys : systSet) {
2090 if(
info.affectsKinematics) {
return false; }
2091 affectsWeights = affectsWeights or
info.affectsWeights;
2093 return affectsWeights;
◆ JetPassJVT()
bool ST::SUSYObjDef_xAOD::JetPassJVT |
( |
xAOD::Jet & |
input | ) |
|
|
finaloverridevirtual |
◆ JVT_SF()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 953 of file Jets.cxx.
961 if (acc_signal_less_JVT(*
jet) && acc_passOR(*
jet)) {
962 jvtjets.push_back(
jet);
967 float current_sf = 0;
971 if (acc_passJvt(*
jet)) {
985 ATH_MSG_VERBOSE(
"Skip SF application in SUSYTools_xAOD::JVT_SF as jet outside validate range" );
988 ATH_MSG_VERBOSE(
"Retrieve SF for jet in SUSYTools_xAOD::JVT_SF with value " << current_sf );
989 totalSF *= current_sf;
994 ATH_MSG_VERBOSE(
"Retrieve total SF for jet container in SUSYTools_xAOD::JVT_SF with value " << totalSF );
◆ JVT_SFsys()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 1000 of file Jets.cxx.
1007 if ( ret != StatusCode::SUCCESS) {
1008 ATH_MSG_ERROR(
"Cannot configure NNjvtEfficiencyTool for systematic var. " << systConfig.
name() );
1017 if ( ret != StatusCode::SUCCESS) {
1018 ATH_MSG_ERROR(
"Cannot configure NNjvtEfficiencyTool for systematic var. " << systConfig.
name() );
◆ MergeElectrons()
◆ MergeMuons()
◆ metaDataStop()
StatusCode asg::AsgMetadataTool::metaDataStop |
( |
| ) |
|
|
protectedvirtualinherited |
◆ msg() [1/2]
◆ msg() [2/2]
◆ msg_level_name()
const std::string & asg::AsgTool::msg_level_name |
( |
| ) |
const |
|
inherited |
A deprecated function for getting the message level's name.
Instead of using this, weirdly named function, user code should get the string name of the current minimum message level (in case they really need it...), with:
MSG::name( msg().level() )
This function's name doesn't follow the ATLAS coding rules, and as such will be removed in the not too distant future.
- Returns
- The string name of the current minimum message level that's printed
Definition at line 101 of file AsgTool.cxx.
◆ msgLvl()
◆ NearbyLeptonCorrections()
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ outputMetaStore()
AsgMetadataTool::MetaStorePtr_t asg::AsgMetadataTool::outputMetaStore |
( |
| ) |
const |
|
inherited |
Accessor for the output metadata store.
Definition at line 97 of file AsgMetadataTool.cxx.
99 #ifdef XAOD_STANDALONE
101 #else // XAOD_STANDALONE
103 #endif // XAOD_STANDALONE
◆ OverlapRemoval()
◆ prepareLRTElectrons()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 90 of file Electrons.cxx.
95 if ( acc_lrtFilter.isAvailable(*idtrack) )
97 if (
static_cast<int>(acc_lrtFilter(*idtrack) ) ){
98 std::unique_ptr<xAOD::Electron> copyElectron = std::make_unique<xAOD::Electron>(*
electron);
103 copy->push_back( std::move(copyElectron) );
108 std::unique_ptr<xAOD::Electron> copyElectron = std::make_unique<xAOD::Electron>(*
electron);
111 copy->push_back( std::move(copyElectron) );
114 return StatusCode::SUCCESS;
◆ prepareLRTMuons()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 73 of file Muons.cxx.
78 if ( acc_lrtFilter.isAvailable(*idtrack) )
80 if (
static_cast<int>(acc_lrtFilter(*idtrack) ) ){
81 std::unique_ptr<xAOD::Muon> copyMuon = std::make_unique<xAOD::Muon>(*
muon);
85 copy->push_back( std::move(copyMuon) );
90 std::unique_ptr<xAOD::Muon> copyMuon = std::make_unique<xAOD::Muon>(*
muon);
93 copy->push_back( std::move(copyMuon) );
97 return StatusCode::SUCCESS;
◆ print() [1/2]
void asg::AsgTool::print |
( |
| ) |
const |
|
virtualinherited |
Print the state of the tool.
Implements asg::IAsgTool.
Reimplemented in JetRecTool, JetFinder, JetModifiedMassDrop, JetFromPseudojet, JetReclusterer, JetReclusteringTool, JetTruthLabelingTool, JetPileupLabelingTool, HI::HIPileupTool, JetDumper, JetBottomUpSoftDrop, JetRecursiveSoftDrop, JetSoftDrop, JetConstituentsRetriever, JetSubStructureMomentToolsBase, JetSplitter, JetToolRunner, JetPruner, JetPseudojetRetriever, JetTrimmer, AsgHelloTool, and KtDeltaRTool.
Definition at line 131 of file AsgTool.cxx.
◆ print() [2/2]
virtual void asg::IAsgTool::print |
( |
| ) |
const |
|
pure virtualinherited |
Print the state of the tool.
Implemented in JetRecTool, JetFinder, JetModifiedMassDrop, JetFromPseudojet, JetReclusterer, JetReclusteringTool, JetTruthLabelingTool, JetPileupLabelingTool, HI::HIPileupTool, asg::AsgTool, JetDumper, JetBottomUpSoftDrop, JetRecursiveSoftDrop, JetSoftDrop, JetConstituentsRetriever, JetSubStructureMomentToolsBase, JetSplitter, JetToolRunner, JetPruner, JetPseudojetRetriever, JetTrimmer, AsgHelloTool, and KtDeltaRTool.
◆ readConfig()
StatusCode ST::SUSYObjDef_xAOD::readConfig |
( |
| ) |
|
|
finaloverrideprotectedvirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 1322 of file SUSYObjDef_xAOD.cxx.
1329 success = rEnv.ReadFile(
m_configFile.c_str(), kEnvAll);
1330 if (success != 0)
return StatusCode::FAILURE;
1339 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(
"Jet.InputType") );
1342 int muIdTmp = rEnv.GetValue(
"Muon.Id", 1);
1343 m_muId = (muIdTmp<4 ? static_cast<int>(xAOD::Muon::Quality(muIdTmp)) : muIdTmp);
1346 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(
"Muon.Id") );
1349 int muIdTmp = rEnv.GetValue(
"MuonBaseline.Id", 1);
1350 m_muIdBaseline = (muIdTmp<4 ? static_cast<int>(xAOD::Muon::Quality(muIdTmp)) : muIdTmp);
1353 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(
"MuonBaseline.Id") );
1357 std::string prop = rEnv.GetValue(
"Jet.JVT_WP",
"");
1358 if ( !prop.empty() ) {
1359 ATH_MSG_WARNING(
"readConfig(): Found deprecated property name Jet.JVT_WP. Please move to using Jet.JvtWP. Propagating for now.");
1360 rEnv.SetValue(
"Jet.JvtWP", prop.c_str());
1361 rEnv.GetTable()->Remove( rEnv.GetTable()->FindObject(
"Jet.JVT_WP") );
1370 m_conf_to_prop[
"EleBaseline.CrackVeto"] =
"EleBaselineCrackVeto";
1372 m_conf_to_prop[
"Ele.AllowRun3TrigSFFallback"] =
"EleAllowRun3TrigSFFallback";
1376 m_conf_to_prop[
"PhotonBaseline.CrackVeto"] =
"PhotonBaselineCrackVeto";
1384 m_conf_to_prop[
"OR.DoMuonJetGhostAssociation"] =
"ORDoMuonJetGhostAssociation";
1399 m_conf_to_prop[
"Trigger.UpstreamMatching"] =
"TriggerUpstreamMatching";
1405 m_conf_to_prop[
"SigLepPh.IsoCloseByOR"] =
"SigLepPhIsoCloseByOR";
1406 m_conf_to_prop[
"MET.RemoveOverlappingCaloTaggedMuons"] =
"METRemoveORCaloTaggedMuons";
1407 m_conf_to_prop[
"MET.DoSetMuonJetEMScale"] =
"METDoSetMuonJetEMScale";
1459 configFromFile(
m_electronTriggerSFStringSingle,
"Ele.TriggerSFStringSingle", rEnv,
"SINGLE_E_2015_e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose_2016_2018_e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0");
1470 configFromFile(
m_trig2015combination_diLep,
"Trig.Dilep2015", rEnv,
"e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose || mu20_iloose_L1MU15_OR_mu40 || 2e12_lhloose_L12EM10VH || e17_lhloose_mu14 || e7_lhmedium_mu24 || mu18_mu8noL1 || 2mu10");
1471 configFromFile(
m_trig2016combination_diLep,
"Trig.Dilep2016", rEnv,
"e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0 || mu26_ivarmedium_OR_mu50 || 2e17_lhvloose_nod0 || e17_lhloose_nod0_mu14 || e7_lhmedium_nod0_mu24 || e26_lhmedium_nod0_L1EM22VHI_mu8noL1 || mu22_mu8noL1 || 2mu14");
1472 configFromFile(
m_trig2017combination_diLep,
"Trig.Dilep2017", rEnv,
"e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0 || mu26_ivarmedium_OR_mu50 || 2e24_lhvloose_nod0 || e17_lhloose_nod0_mu14 || e7_lhmedium_nod0_mu24 || e26_lhmedium_nod0_mu8noL1 || mu22_mu8noL1 || 2mu14");
1473 configFromFile(
m_trig2018combination_diLep,
"Trig.Dilep2018", rEnv,
"e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0 || mu26_ivarmedium_OR_mu50 || 2e24_lhvloose_nod0 || e17_lhloose_nod0_mu14 || e7_lhmedium_nod0_mu24 || e26_lhmedium_nod0_mu8noL1 || mu22_mu8noL1 || 2mu14");
1476 configFromFile(
m_trig2015combination_multiLep,
"Trig.Multi2015", rEnv,
"e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose || mu20_iloose_L1MU15_OR_mu40 || 2e12_lhloose_L12EM10VH || e17_lhloose_2e9_lhloose || 2e12_lhloose_mu10 || e12_lhloose_2mu10 || e17_lhloose_mu14 || e7_lhmedium_mu24 || mu18_mu8noL1 || 2mu10 || 3mu6");
1477 configFromFile(
m_trig2016combination_multiLep,
"Trig.Multi2016", rEnv,
"e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0 || mu26_ivarmedium_OR_mu50 || 2e17_lhvloose_nod0 || e17_lhloose_nod0_mu14 || e7_lhmedium_nod0_mu24 || e26_lhmedium_nod0_L1EM22VHI_mu8noL1 || e17_lhloose_nod0_2e9_lhloose_nod0 || e12_lhloose_nod0_2mu10 || 2e12_lhloose_nod0_mu10 || mu22_mu8noL1 || 2mu14 || 3mu6");
1478 configFromFile(
m_trig2017combination_multiLep,
"Trig.Multi2017", rEnv,
"e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0 || mu26_ivarmedium_OR_mu50 || 2e24_lhvloose_nod0 || e17_lhloose_nod0_mu14 || e7_lhmedium_nod0_mu24 || e26_lhmedium_nod0_mu8noL1 || e24_lhvloose_nod0_2e12_lhvloose_nod0_L1EM20VH_3EM10VH || e12_lhloose_nod0_2mu10 || 2e12_lhloose_nod0_mu10 || mu22_mu8noL1 || 2mu14 || 3mu6");
1479 configFromFile(
m_trig2018combination_multiLep,
"Trig.Multi2018", rEnv,
"e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0 || mu26_ivarmedium_OR_mu50 || 2e24_lhvloose_nod0 || e17_lhloose_nod0_mu14 || e7_lhmedium_nod0_mu24 || e26_lhmedium_nod0_mu8noL1 || e24_lhvloose_nod0_2e12_lhvloose_nod0_L1EM20VH_3EM10VH || e12_lhloose_nod0_2mu10 || 2e12_lhloose_nod0_mu10 || mu22_mu8noL1 || 2mu14 || 3mu6");
1557 configFromFile(
m_WtagConfig,
"Jet.WtaggerConfig", rEnv,
"SmoothedContainedWTagger_AntiKt10UFOCSSKSoftDrop_FixedSignalEfficiency80_20220221.dat");
1558 configFromFile(
m_ZtagConfig,
"Jet.ZtaggerConfig", rEnv,
"SmoothedContainedZTagger_AntiKt10UFOCSSKSoftDrop_FixedSignalEfficiency80_20220221.dat");
1563 configFromFile(
m_jesConfig,
"Jet.JESConfig", rEnv,
m_isRun3 ?
"AntiKt4EMPFlow_MC23a_PreRecR22_Phase2_CalibConfig_ResPU_EtaJES_GSC_240306_InSitu.config" :
"PreRec_R22_PFlow_ResPU_EtaJES_GSC_February23_230215.config");
1564 configFromFile(
m_jesConfigAFII,
"Jet.JESConfigAFII", rEnv,
m_isRun3 ?
"AntiKt4EMPFlow_MC23a_PreRecR22_Phase2_CalibConfig_ResPU_EtaJES_GSC_240306_InSitu.config" :
"PreRec_R22_PFlow_ResPU_EtaJES_GSC_February23_230215.config");
1565 configFromFile(
m_jesConfigJMS,
"Jet.JESConfigJMS", rEnv,
"JES_JMS_MC16Recommendation_Consolidated_MC_only_EMTopo_July2019_Rel21.config");
1567 configFromFile(
m_jesConfigFat,
"Jet.JESConfigFat", rEnv,
"JES_MC20PreRecommendation_R10_UFO_CSSK_SoftDrop_JMS_R21Insitu_10Mar2023.config");
1676 configFromFile(
m_prwActualMu2017File,
"PRW.ActualMu2017File", rEnv,
"GoodRunsLists/data17_13TeV/20180619/physics_25ns_Triggerno17e33prim.actualMu.OflLumi-13TeV-010.root");
1677 configFromFile(
m_prwActualMu2018File,
"PRW.ActualMu2018File", rEnv,
"GoodRunsLists/data18_13TeV/20190318/physics_25ns_Triggerno17e33prim.actualMu.OflLumi-13TeV-010.root");
1689 configFromFile(
m_autoconfigPRWRtags,
"PRW.autoconfigPRWRtags", rEnv,
"mc20a:r13167_r14859,mc20d:r13144_r14860,mc20e:r13145_r14861,mc21a:r13752_r13829,mc23a:r14622_r14932_r15540,mc23c:r14799_r14908,mc23d:r15224_r15530,mc23e:r16083");
1702 if (rEnv.GetTable() && rEnv.GetTable()->GetSize()>0){
1703 ATH_MSG_ERROR(
"Found " << rEnv.GetTable()->GetSize() <<
" unparsed environment options:");
1706 return StatusCode::FAILURE;
1711 if (
m_WtagConfig.find(
"Efficiency50") != std::string::npos){
1714 else if (
m_WtagConfig.find(
"Efficiency80") != std::string::npos){
1718 ATH_MSG_ERROR(
"You have specified a large-R W-tag config without a matching uncertainties file. Please fix this. Currently the 50% and 80% WPs are supported");
1722 if (
m_ZtagConfig.find(
"Efficiency50") != std::string::npos){
1725 else if (
m_ZtagConfig.find(
"Efficiency80") != std::string::npos){
1729 ATH_MSG_ERROR(
"You have specified a large-R Z-tag config without a matching uncertainties file. Please fix this. Currently the 50% and 80% WPs are supported");
1732 std::string TopTagEff =
"";
1733 std::string TopTagType =
"";
1742 ATH_MSG_ERROR(
"You have specified a large-R Top-tag config without a matching uncertainties file. Please fix this. Currently the 50% and 80% WPs are supported");
1746 TopTagType =
"Inclusive";
1749 TopTagType =
"Contained";
1752 ATH_MSG_ERROR(
"You have specified a large-R Top-tag config without a matching uncertainties file. Please fix this. Currently the contained and inclusive WPs are supported");
1754 m_TopTagUncConfig =
"R10_SF_LCTopo_TopTag"+TopTagType+
"_SigEff"+TopTagEff+
".config";
1784 return StatusCode::SUCCESS;
◆ renounce()
◆ renounceArray()
◆ resetSystematics()
StatusCode ST::SUSYObjDef_xAOD::resetSystematics |
( |
| ) |
|
|
finaloverridevirtual |
◆ setBoolProperty()
StatusCode ST::SUSYObjDef_xAOD::setBoolProperty |
( |
const std::string & |
name, |
|
|
const bool & |
property |
|
) |
| |
|
finaloverridevirtual |
◆ SetBtagWeightDecorations()
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 1120 of file Jets.cxx.
1123 ATH_MSG_ERROR( btagSelTool->name() <<
": could not retrieve b-tag weight (" << btagTagger <<
")." );
1124 return StatusCode::FAILURE;
1129 double btag_pb(-10), btag_pc(-10), btag_pu(-10), btag_ptau(-10);
1131 std::string actualTagger = btagTagger;
1132 if (btagTagger ==
"GN2v00LegacyWP" || btagTagger ==
"GN2v00NewAliasWP"){
1133 actualTagger =
"GN2v00";
1139 dec_btag_pb(
input) = btag_pb;
1140 dec_btag_pc(
input) = btag_pc;
1141 dec_btag_pu(
input) = btag_pu;
1142 dec_btag_ptau(
input) = btag_ptau;
1143 ATH_MSG_DEBUG( btagSelTool->name() <<
" b-tag " << btagTagger <<
"-type pb: " << btag_pb );
1144 ATH_MSG_DEBUG( btagSelTool->name() <<
" b-tag " << btagTagger <<
"-type pc: " << btag_pc );
1145 ATH_MSG_DEBUG( btagSelTool->name() <<
" b-tag " << btagTagger <<
"-type pu: " << btag_pu );
1146 ATH_MSG_DEBUG( btagSelTool->name() <<
" b-tag " << btagTagger <<
"-type ptau: " << btag_ptau );
1148 if ( btagSelTool->name().find(
"DL1")!=std::string::npos ) {
1149 dec_btag_dl1pb(
input) = btag_pb;
1150 dec_btag_dl1pc(
input) = btag_pc;
1151 dec_btag_dl1pu(
input) = btag_pu;
1154 dec_btag_dl1pb(
input) = -10;
1155 dec_btag_dl1pc(
input) = -10;
1156 dec_btag_dl1pu(
input) = -10;
1158 return StatusCode::SUCCESS;
◆ setDataSource()
void ST::SUSYObjDef_xAOD::setDataSource |
( |
int |
source | ) |
|
◆ setUseIncidents()
void asg::AsgMetadataTool::setUseIncidents |
( |
const bool |
flag | ) |
|
|
inlineprotectedinherited |
◆ split()
const std::vector< std::string > ST::SUSYObjDef_xAOD::split |
( |
const std::string & |
s, |
|
|
const std::string & |
delim |
|
) |
| const |
|
protected |
Definition at line 1788 of file SUSYObjDef_xAOD.cxx.
1789 assert(delim.length() == 1);
1790 std::vector<std::string>
retval;
1793 if (
s.find(delim)==std::string::npos) {
1801 while ((
next =
s.find(delim, last)) != std::string::npos) {
1803 last =
next + delim.length();
1807 retval.emplace_back(
s.substr(last));
◆ SUSYToolsInit()
StatusCode SUSYObjDef_xAOD::SUSYToolsInit |
( |
| ) |
|
|
private |
Definition at line 109 of file SUSYToolsInit.cxx.
113 ATH_MSG_FATAL(
"You must set the DataSource property to Data, FullSim or AtlfastII !!");
114 ATH_MSG_FATAL(
"Expect segfaults if you're not checking status codes, which you should be !!");
115 return StatusCode::FAILURE;
119 ATH_MSG_INFO(
"SUSYTools subtools already created. Ignoring this call.");
120 ATH_MSG_INFO(
"Note: No longer necessary to explicitly call SUSYToolsInit. Will avoid creating tools again.");
121 return StatusCode::SUCCESS;
129 std::vector<std::string> file_conf;
135 std::vector<std::string> file_ilumi;
165 ATH_MSG_INFO(
"Using user-configured LRT uncertainty tool");
169 std::string toolName;
171 std::string jetname,
jetcoll,fatjetcoll;
181 toolName =
"JetCalibTool_" + jetname;
183 std::string JES_config_file, calibseq;
187 return StatusCode::FAILURE;
192 ATH_MSG_WARNING(
"Jet JES/JER recommendations currently not available for fast sim in Run 3, falling back to full sim version");
197 JES_config_file = JESconfig;
201 std::string insitu(
"_Insitu");
202 auto found = calibseq.find(insitu);
203 if(
found != std::string::npos){
204 calibseq.erase(
found, insitu.length());
210 ATH_MSG_ERROR(
"JMS calibration is not supported yet for R22. Please modify your settings.");
211 return StatusCode::FAILURE;
229 if(fatjetcoll ==
"AnalysisLargeRJets") {
230 ATH_MSG_DEBUG(
"Fall back to calibration for AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets, original name for AnalysisLargeRJets");
231 fatjetcoll =
"AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets";
233 if (fatjetcoll.size()>3)fatjetcoll.erase(fatjetcoll.size()-4,4);
235 toolName =
"JetFatCalibTool_" +
m_fatJets;
241 if(
isData()) jesCalibSeqFat +=
"_Insitu";
265 #ifndef XAOD_STANDALONE
274 ATH_MSG_ERROR(
"Error while reading large-R config file : " << WConfigPath );
275 return StatusCode::FAILURE;
277 else ATH_MSG_DEBUG(
"Successfully read large-R config file : " << WConfigPath );
292 #ifndef XAOD_STANDALONE
301 ATH_MSG_ERROR(
"Error while reading large-R config file : " << ZConfigPath );
302 return StatusCode::FAILURE;
304 else ATH_MSG_DEBUG(
"Successfully read large-R config file : " << ZConfigPath );
319 #ifndef XAOD_STANDALONE
328 ATH_MSG_ERROR(
"Error while reading large-R config file : " << TopConfigPath );
329 return StatusCode::FAILURE;
331 else ATH_MSG_DEBUG(
"Successfully read large-R config file : " << TopConfigPath );
372 if(jetdef !=
"AntiKt4EMPFlow"){
373 ATH_MSG_WARNING(
"Jet Uncertaintes recommendations only exist for PFlow jets, falling back to AntiKt4EMPFlow");
374 jetdef =
"AntiKt4EMPFlow";
376 toolName =
"JetUncertaintiesTool_" + jetdef;
379 ATH_MSG_WARNING(
"Jet Uncertaintes pre-recommendations for Run3 only exist for full sim");
394 ATH_MSG_INFO(
"Set up Jet PD Smear Uncertainty tool...");
399 if(jetdef !=
"AntiKt4EMPFlow"){
400 ATH_MSG_WARNING(
"Jet Uncertaintes recommendations only exist for PFlow jets, falling back to AntiKt4EMPFlow");
401 jetdef =
"AntiKt4EMPFlow";
403 toolName =
"JetUncertaintiesPDSmearTool_" + jetdef;
410 ATH_MSG_ERROR(
"You are trying to use the SimpleJER set, with PDsmearing. There is no functionality for this. Please fix your config file. Either run with PDSmear set to false, or run with the AllJER or FullJER sets.");
411 return StatusCode::FAILURE;
421 ATH_MSG_DEBUG(
"Do not retrieve the jet PD Smearing tool if it is not configured");
427 ATH_MSG_INFO(
"Won't initialise jet uncertainty tool for fat jets until we get rec for UFO");
464 ATH_MSG_INFO(
" Won't initialise Wtagger uncertainty tool for fat jets until we get rec for UFO");
479 ATH_MSG_INFO(
" Won't initialise Ztagger uncertainty tool for fat jets until we get rec for UFO");
494 ATH_MSG_INFO(
" Won't initialise top-tagger uncertainty tool for fat jets until we get rec for UFO");
522 toolName =
"JetCleaningTool";
534 toolName =
"PileupLabelingTool";
538 #ifndef XAOD_STANDALONE
550 toolName =
"JvtMomentTool";
553 #ifndef XAOD_STANDALONE
566 toolName =
"NNJvtMomentTool";
569 #ifndef XAOD_STANDALONE
581 toolName =
"NNJvtSelectionTool";
595 toolName =
"NNJvtEfficiencyTool";
609 toolName =
"fJvtSelectionTool";
623 toolName =
"fJvtEfficiencyTool";
639 std::string muQualBaseline =
"";
642 ATH_MSG_WARNING(
"No muon scale factors are available for VeryLoose working point.");
647 case 4: muQualBaseline =
"HighPt";
break;
648 case 5: muQualBaseline =
"LowPt";
break;
649 case 6: muQualBaseline =
"LowPtMVA";
break;
650 case 7: muQualBaseline =
"HighPt3Layers";
break;
653 return StatusCode::FAILURE;
670 if (IdBaselineInt == 4) {
681 toolName =
"MuonSelectionTool_Baseline_" + muQualBaseline;
687 ") that is tighter than the signal cut (" <<
m_muEta <<
"). Please check your config." );
688 return StatusCode::FAILURE;
692 if (IdBaselineInt == 6){
695 }
else if (IdBaselineInt == 7){
704 std::string muQual =
"";
707 ATH_MSG_WARNING(
"No muon scale factors are available for VeryLoose working point.");
712 case 4: muQual =
"HighPt";
break;
713 case 5: muQual =
"LowPt";
break;
714 case 6: muQual =
"LowPtMVA";
break;
715 case 7: muQual =
"HighPt3Layers";
break;
717 ATH_MSG_ERROR(
"Invalid muon working point provided: " <<
m_muId <<
". Cannot initialise!");
718 return StatusCode::FAILURE;
723 toolName =
"MuonSelectionTool_" + muQual;
731 }
else if (IdInt == 7){
741 toolName =
"MuonSelectionHighPtTool_" + muQual;
754 toolName =
"MuonLRTOverlapRemovalTool";
765 toolName =
"MuonEfficiencyScaleFactors_" + muQual;
775 toolName =
"MuonEfficiencyScaleFactorsBMHighPt_" + muQual;
785 ATH_MSG_WARNING(
"Requested TTVA SFs without d0sig and z0 cuts. Disabling scale factors as they will not make sense.");
790 toolName =
"MuonTTVAEfficiencyScaleFactors";
803 toolName =
"MuonIsolationScaleFactors_" +
m_muIso_WP;
809 <<
") does not have SFs defined. Will try to find an appropriate fall-back.");
814 <<
" is not supported, and does not have SFs available. Falling back to "
816 <<
" for SF determination.");
818 ATH_MSG_ERROR(
"*** The muon isolation WP you selected (" <<
m_muIso_WP <<
") is not currentely supported, and no known fall-back option for SFs exists. Sorry! ***");
819 return StatusCode::FAILURE;
839 <<
") does not have SFs defined. Will try to find an appropriate fall-back.");
844 <<
" is not supported, and does not have SFs available. Falling back to "
845 << tmp_muIsoHighPt_WP
846 <<
" for SF determination.");
848 ATH_MSG_ERROR(
"*** The muon isolation WP you selected (" <<
m_muIsoHighPt_WP <<
") is not currentely supported, and no known fall-back option for SFs exists. Sorry! ***");
849 return StatusCode::FAILURE;
867 toolName =
"MuonTriggerScaleFactors_" + muQual;
869 if ( muQual==
"LowPt" ) {
870 ATH_MSG_WARNING(
"You're using the LowPt muon selection, which is not supported yet in terms of muon trigger scale facorts. TEMPORAIRLY configuring the muonTriggerSFTool for Medium muons. Beware!");
891 toolName =
"EleSelLikelihood_" +
m_eleId;
893 if (
m_eleId.find(
"DNN") != std::string::npos) {
901 ATH_MSG_INFO(
"Overriding specified Ele.Id working point in favour of configuration file");
905 return StatusCode::FAILURE;
908 ATH_MSG_WARNING(
" ****************************************************************************");
910 ATH_MSG_WARNING(
" These may be used for loose electron CRs but no scale factors are provided.");
911 ATH_MSG_WARNING(
" ****************************************************************************");
933 ATH_MSG_INFO(
"Overriding specified EleBaseline.Id working point in favour of configuration file");
937 return StatusCode::FAILURE;
950 toolName =
"ElectronLRTOverlapRemovalTool";
967 return StatusCode::FAILURE;
981 return StatusCode::FAILURE;
1014 ATH_MSG_INFO(
"Running on Run2 samples; Using egamma SF tools from R21 map ");
1018 toolName =
"AsgElectronEfficiencyCorrectionTool_reco";
1029 std::string eleId = TString(
m_eleId).ReplaceAll(
"AndBLayer",
"BLayer").ReplaceAll(
"LLH",
"").Data();
1031 if (
m_eleId.find(
"DNN") != std::string::npos) {
1032 eleId = TString(eleId).ReplaceAll(
"DNNnoCF",
"").ReplaceAll(
"DNN",
"").ReplaceAll(
"Loose",
"LooseBLayer").Data();
1033 ATH_MSG_WARNING(
"Electron DNN ID working point " <<
m_eleId <<
" doesn't have SFs yet, fall back to " << eleId);
1037 toolName =
"AsgElectronEfficiencyCorrectionTool_id_" +
m_eleId;
1041 std::map<std::string,std::string> corrFNList;
1044 std::string
WP = WP_fname.substr(0,WP_fname.find(
":"));
1045 std::string
fname = WP_fname.substr(WP_fname.find(
":")+1);
1048 ATH_MSG_WARNING(
"Will use correction file rather than central map file." );
1053 std::string EleIso(
"");
1059 ATH_MSG_WARNING(
"(AsgElectronEfficiencyCorrectionTool_iso_*) Your selected electron Iso WP ("
1061 <<
") does not have iso SFs defined. Falling back to "
1063 <<
" for SF calculations");
1067 return StatusCode::FAILURE;
1070 toolName =
"AsgElectronEfficiencyCorrectionTool_iso_" +
m_eleId + EleIso;
1073 if ( (!
m_EG_corrFNList.empty()) && corrFNList.find(EleIso)!=corrFNList.end() ) {
1080 ATH_MSG_WARNING(
"(" << toolName <<
") Your electron Iso WP: " << EleIso<<
" is no longer supported. This will almost certainly cause a crash now.");
1092 if (!
isData() && ((EleIso.find(
"TightTrackOnly_VarRad")!=std::string::npos)||
1093 (EleIso.find(
"TightTrackOnly_FixedRad")!=std::string::npos)||
1094 (EleIso.find(
"Tight_VarRad")!=std::string::npos)||
1095 (EleIso.find(
"Loose_VarRad")!=std::string::npos))) {
1096 if (
isAtlfast())
ATH_MSG_WARNING(
"(AsgElectronEfficiencyCorrectionTool/"+toolName+
"). Your selected electron Iso WP (" + EleIso +
") don't have AFII SF. Falling back to FullSim");
1109 std::string EleIsohighPt(
"");
1115 ATH_MSG_WARNING(
"(AsgElectronEfficiencyCorrectionTool_iso_*) Your selected high-pT electron Iso WP ("
1117 <<
") does not have iso SFs defined. Falling back to "
1119 <<
" for SF calculations");
1123 return StatusCode::FAILURE;
1126 toolName =
"AsgElectronEfficiencyCorrectionTool_isoHigPt_" +
m_eleId + EleIsohighPt;
1129 if ( (!
m_EG_corrFNList.empty()) && corrFNList.find(EleIsohighPt)!=corrFNList.end() ) {
1137 ATH_MSG_WARNING(
"(" << toolName <<
") Your electron high-pt Iso WP: " << EleIsohighPt <<
" is no longer supported. This will almost certainly cause a crash now.");
1158 if(
m_isRun3 && eleId.find(
"LooseBLayer") != std::string::npos)
ATH_MSG_WARNING(
"Replacing 'LooseBLayer' with 'Loose' for Electron ID while configuring single-ele trigger SF using: " <<
m_eleEffMapFilePath);
1159 std::string triggerEleID =
m_isRun3? TString(eleId).ReplaceAll(
"LooseBLayer",
"Loose").Data() : eleId;
1165 bool pass_isRun3TrigSFFallback =
true;
1166 if (triggerEleID.find(
"Medium") != std::string::npos && triggerEleIso.find(
"Loose") != std::string::npos) {triggerEleID =
"Loose";}
1167 else if (triggerEleID.find(
"Medium") != std::string::npos && triggerEleIso.find(
"Tight") != std::string::npos) {triggerEleID =
"Tight"; triggerEleIso =
"Tight_VarRad";}
1168 else if (triggerEleID.find(
"Medium") != std::string::npos && triggerEleIso.find(
"HighPtCaloOnly") != std::string::npos) {triggerEleID =
"Tight"; triggerEleIso =
"Tight_VarRad";}
1169 else if (triggerEleID.find(
"Tight") != std::string::npos && triggerEleIso.find(
"Loose") != std::string::npos) {triggerEleID =
"Loose";}
1170 else if (triggerEleID.find(
"Tight") != std::string::npos && triggerEleIso.find(
"Tight") != std::string::npos) {triggerEleIso=
"Tight_VarRad";}
1171 else if (triggerEleID.find(
"Tight") != std::string::npos && triggerEleIso.find(
"HighPtCaloOnly") != std::string::npos) {triggerEleID =
"Tight"; triggerEleIso =
"Tight_VarRad";}
1172 else if (triggerEleID.find(
"Loose") != std::string::npos && triggerEleIso.find(
"Tight") != std::string::npos) {triggerEleID =
"Loose"; triggerEleIso =
"Loose_VarRad";}
1173 else if (triggerEleID.find(
"Loose") != std::string::npos && triggerEleIso.find(
"HighPtCaloOnly") != std::string::npos) {triggerEleID =
"Loose"; triggerEleIso =
"Loose_VarRad";}
1174 else {pass_isRun3TrigSFFallback=
false;}
1175 if(pass_isRun3TrigSFFallback){
1176 ATH_MSG_INFO(
" ************** This is only for testing/studying purpose! ************** ");
1177 ATH_MSG_INFO(
" ************** For official recommendation, please get in contact with the SUSY Bkg Forum ************** ");
1178 ATH_MSG_INFO(
"In the current map ("<<
m_eleEffMapFilePath<<
"), the only supported Electron ID working-points supported for Electron Trigger Scale Factor are 'Loose_Loose_VarRad' and 'Tight_Tight_VarRad' ");
1179 ATH_MSG_INFO(
"Only for single-lepton trigger scale factor, fall back to Electron ID: -> "<< triggerEleID <<
" with Isolation: " << triggerEleIso);
1191 ATH_MSG_WARNING(
"(AsgElectronEfficiencyCorrectionTool_trig_singleLep_*) Your selected electron Iso WP ("
1193 <<
") does not have trigger SFs defined. Falling back to "
1195 <<
" for SF calculations");
1199 return StatusCode::FAILURE;
1202 toolName =
"AsgElectronEfficiencyCorrectionTool_trig_singleLep_" + triggerEleID;
1218 toolName =
"AsgElectronEfficiencyCorrectionTool_trigEff_singleLep_" + triggerEleID;
1235 std::map<std::string,std::string> electronTriggerSFMapMixedLepton {
1237 {
"e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose,e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0",
m_electronTriggerSFStringSingle},
1238 {
"e24_lhvloose_nod0_L1EM20VH,e17_lhvloose_nod0,e12_lhloose_L1EM10VH",
"DI_E_2015_e12_lhloose_L1EM10VH_2016_e17_lhvloose_nod0_2017_2018_e24_lhvloose_nod0_L1EM20VH"},
1239 {
"e26_lhmedium_nod0_L1EM22VHI,e26_lhmedium_nod0",
"MULTI_L_2015_e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose_2016_e26_lhmedium_nod0_L1EM22VHI_2017_2018_e26_lhmedium_nod0"},
1240 {
"e17_lhloose,e17_lhloose_nod0",
"MULTI_L_2015_e17_lhloose_2016_2018_e17_lhloose_nod0"},
1241 {
"e12_lhloose,e12_lhloose_nod0",
"MULTI_L_2015_e12_lhloose_2016_2018_e12_lhloose_nod0"},
1242 {
"e7_lhmedium,e7_lhmedium_nod0",
"MULTI_L_2015_e7_lhmedium_2016_2018_e7_lhmedium_nod0"},
1243 {
"e9_lhloose,e9_lhloose_nod0,e12_lhvloose_nod0_L1EM10VH",
"TRI_E_2015_e9_lhloose_2016_e9_lhloose_nod0_2017_2018_e12_lhvloose_nod0_L1EM10VH"}
1249 if (triglist_2017to2018.find(
"2e17_lhvloose_nod0_L12EM15VHI") != std::string::npos) {
1250 electronTriggerSFMapMixedLepton[
"e17_lhvloose_nod0_L1EM15VHI"] =
"DI_E_2015_e12_lhloose_L1EM10VH_2016_e17_lhvloose_nod0_2017_2018_e17_lhvloose_nod0_L1EM15VHI";
1253 std::string triggerMixedEleIso(
"");
1255 for(
auto const&
item : electronTriggerSFMapMixedLepton){
1262 ATH_MSG_WARNING(
"(AsgElectronEfficiencyCorrectionTool_trig_mixLep_*) Your selected electron Iso WP ("
1264 <<
") does not have trigger SFs defined. Falling back to "
1265 << triggerMixedEleIso
1266 <<
" for SF calculations");
1268 ATH_MSG_ERROR(
"*** THE MIXED ELECTRON TRIGGER SF YOU SELECTED (" <<
item.second <<
") GOT NO SUPPORT FOR YOUR ID+ISO WPs (" <<
m_eleId <<
"+" <<
m_eleIso_WP <<
"). The fallback options failed as well sorry! ***");
1269 return StatusCode::FAILURE;
1272 ATH_MSG_VERBOSE (
"Selected WP: " <<
item.second <<
"_" << eleId <<
"_" << triggerMixedEleIso);
1274 toolName =
"AsgElectronEfficiencyCorrectionTool_trig_mixLep_" + (
item.first).substr(0,8) +
m_eleId;
1278 ATH_CHECK( t_sf->setProperty(
"IdKey", eleId) );
1279 ATH_CHECK( t_sf->setProperty(
"IsoKey", triggerMixedEleIso) );
1284 ATH_CHECK( t_sf->setProperty(
"OutputLevel", this->msg().level()) );
1287 #ifndef XAOD_STANDALONE
1293 toolName =
"AsgElectronEfficiencyCorrectionTool_trigEff_mixLep_" + (
item.first).substr(0,8) +
m_eleId;
1296 ATH_CHECK( t_eff->setProperty(
"TriggerKey",
"Eff_"+
item.second) );
1297 ATH_CHECK( t_eff->setProperty(
"IdKey", eleId) );
1298 ATH_CHECK( t_eff->setProperty(
"IsoKey", triggerMixedEleIso) );
1303 ATH_CHECK( t_eff->setProperty(
"OutputLevel", this->msg().level()) );
1306 #ifndef XAOD_STANDALONE
1314 else ATH_MSG_WARNING(
"*** THE ELECTRON TRIGGER SF MIXED AND SF DILEP ARE CURRENTY NOT SUPPORTED IN RUN3 ***");
1316 ATH_MSG_WARNING(
"*** THE ELECTRON CHARGE FLIP SF ARE CURRENTY NOT SUPPORTED ***");
1360 photonIso_forTrigSF =
"TightCaloOnly";
1362 photonIso_forTrigSF = TString(
m_photonIso_WP).ReplaceAll(
"FixedCut",
"").Data();
1374 std::map<std::string,std::string> diphotonTriggerSFMapAsymmetric {
1376 {
"g25_loose,g25_medium_L1EM20VH",
"DI_PH_2015_g25_loose_2016_g25_loose_2017_g25_medium_L1EM20VH_2018_g25_medium_L1EM20VH"},
1377 {
"g35_loose,g35_medium_L1EM20VH",
"DI_PH_2015_g35_loose_2016_g35_loose_2017_g35_medium_L1EM20VH_2018_g35_medium_L1EM20VH"},
1380 for(
auto const&
item : diphotonTriggerSFMapAsymmetric){
1382 toolName =
"AsgPhotonEfficiencyCorrectionTool_trigSF_asymm_diphoton_" + (
item.first).substr(0,9) + photonIso_forTrigSF;
1384 ATH_CHECK( ph_trigSF->setProperty(
"MapFilePath",
"PhotonEfficiencyCorrection/2015_2018/rel21.2/Summer2020_Rec_v1/map3.txt") );
1385 ATH_CHECK( ph_trigSF->setProperty(
"IsoKey", photonIso_forTrigSF) );
1386 ATH_CHECK( ph_trigSF->setProperty(
"TriggerKey",
item.second) );
1387 ATH_CHECK( ph_trigSF->setProperty(
"ForceDataType", 1) );
1388 ATH_CHECK( ph_trigSF->setProperty(
"OutputLevel", this->msg().level()) );
1391 #ifndef XAOD_STANDALONE
1397 toolName =
"AsgPhotonEfficiencyCorrectionTool_trigEff_asymm_diphoton_" + (
item.first).substr(0,9) + photonIso_forTrigSF;
1399 ATH_CHECK( ph_trigEff->setProperty(
"MapFilePath",
"PhotonEfficiencyCorrection/2015_2018/rel21.2/Summer2020_Rec_v1/map3.txt") );
1400 ATH_CHECK( ph_trigEff->setProperty(
"IsoKey", photonIso_forTrigSF) );
1401 ATH_CHECK( ph_trigEff->setProperty(
"TriggerKey",
"Eff_"+
item.second) );
1402 ATH_CHECK( ph_trigEff->setProperty(
"ForceDataType", 1) );
1403 ATH_CHECK( ph_trigEff->setProperty(
"OutputLevel", this->msg().level()) );
1406 #ifndef XAOD_STANDALONE
1462 ATH_MSG_WARNING(
"Forcing EgcalibTool to use calibrations for full simulation" );
1483 else if (
m_tauId ==
"rnn001")
inputfile =
"SUSYTools/tau_selection_rnn001.conf";
1484 else if (
m_tauId ==
"VeryLoose")
inputfile =
"SUSYTools/tau_selection_veryloose.conf";
1485 else if (
m_tauId ==
"Loose")
inputfile =
"SUSYTools/tau_selection_loose.conf";
1486 else if (
m_tauId ==
"Medium")
inputfile =
"SUSYTools/tau_selection_medium.conf";
1487 else if (
m_tauId ==
"Tight")
inputfile =
"SUSYTools/tau_selection_tight.conf";
1490 return StatusCode::FAILURE;
1496 return StatusCode::FAILURE;
1505 toolName =
"TauSelectionTool_" +
m_tauId;
1523 return StatusCode::FAILURE;
1538 toolName =
"TauEffTool_" +
m_tauId;
1542 std::vector<int> correction_types;
1545 ANA_MSG_DEBUG(
"Found JetIDWP in tau config file : " << jetIDWP );
1553 ATH_MSG_ERROR(
"Invalid Tau ID in tau config file " << jetIDWP);
1554 return StatusCode::FAILURE;
1557 correction_types.insert(correction_types.end(), {TauAnalysisTools::EfficiencyCorrectionType::SFRecoHadTau,
1558 TauAnalysisTools::EfficiencyCorrectionType::SFJetIDHadTau});
1562 ANA_MSG_DEBUG(
"Found EleIDWP in tau config file : " << eleIDWP );
1563 int ele_id_lvl = -1;
1568 ATH_MSG_INFO(
"No or invalid Ele OR in tau config file " << eleIDWP <<
" will not apply SFs for electro veto" );
1571 if (ele_id_lvl != -1 )
1572 correction_types.insert(correction_types.end(), {TauAnalysisTools::EfficiencyCorrectionType::SFEleIDHadTau,
1573 TauAnalysisTools::EfficiencyCorrectionType::SFEleIDElectron});
1596 return StatusCode::FAILURE;
1601 {
"HLT_tau25_medium1_tracktwo",
"HLT_tau25_medium1_tracktwo"},
1602 {
"HLT_tau35_medium1_tracktwo",
"HLT_tau35_medium1_tracktwo"},
1603 {
"HLT_tau50L1TAU12_medium1_tracktwo",
"HLT_tau50_medium1_tracktwo_L1TAU12"},
1604 {
"HLT_tau60_medium1_tracktwo",
"HLT_tau60_medium1_tracktwo"},
1605 {
"HLT_tau80L1TAU60_medium1_tracktwo",
"HLT_tau80_medium1_tracktwo_L1TAU60"},
1606 {
"HLT_tau125_medium1_tracktwo",
"HLT_tau125_medium1_tracktwo"},
1607 {
"HLT_tau160_medium1_tracktwo",
"HLT_tau160_medium1_tracktwo"},
1608 {
"HLT_tau160L1TAU100_medium1_tracktwo",
"HLT_tau160_medium1_tracktwo_L1TAU100"},
1610 {
"HLT_tau25_medium1_tracktwoEF",
"HLT_tau25_medium1_tracktwoEF"},
1611 {
"HLT_tau35L1TAU12IM_medium1_tracktwoEF",
"HLT_tau35_medium1_tracktwoEF_L1TAU12IM"},
1612 {
"HLT_tau35_medium1_tracktwoEF",
"HLT_tau35_medium1_tracktwoEF"},
1613 {
"HLT_tau60_medium1_tracktwoEF",
"HLT_tau60_medium1_tracktwoEF"},
1614 {
"HLT_tau80L1TAU60_medium1_tracktwoEF",
"HLT_tau80_medium1_tracktwoEF_L1TAU60"},
1615 {
"HLT_tau160L1TAU100_medium1_tracktwoEF",
"HLT_tau160_medium1_tracktwoEF_L1TAU100"},
1617 {
"HLT_tau25_medium1_tracktwoEF_OR_mediumRNN_tracktwoMVA",
"HLT_tau25_medium1_tracktwoEF,HLT_tau25_mediumRNN_tracktwoMVA"},
1618 {
"HLT_tau35L1TAU12IM_medium1_tracktwoEF_OR_mediumRNN_tracktwoMVA",
"HLT_tau35_medium1_tracktwoEF_L1TAU12IM,HLT_tau35_mediumRNN_tracktwoMVA_L1TAU12IM"},
1619 {
"HLT_tau35_medium1_tracktwoEF_OR_mediumRNN_tracktwoMVA",
"HLT_tau35_medium1_tracktwoEF,HLT_tau35_mediumRNN_tracktwoMVA"},
1620 {
"HLT_tau60_medium1_tracktwoEF_OR_mediumRNN_tracktwoMVA",
"HLT_tau60_medium1_tracktwoEF,HLT_tau60_mediumRNN_tracktwoMVA"},
1621 {
"HLT_tau80L1TAU60_medium1_tracktwoEF_OR_mediumRNN_tracktwoMVA",
"HLT_tau80_medium1_tracktwoEF_L1TAU60,HLT_tau80_mediumRNN_tracktwoMVA_L1TAU60"},
1622 {
"HLT_tau160L1TAU100_medium1_tracktwoEF_OR_mediumRNN_tracktwoMVA",
"HLT_tau160_medium1_tracktwoEF_L1TAU100,HLT_tau160_mediumRNN_tracktwoMVA_L1TAU100"}
1626 toolName =
"TauTrigEffTool_" +
m_tauId +
"_" + trigger.first;
1628 ATH_CHECK( tau_trigSF->setProperty(
"EfficiencyCorrectionTypes", std::vector<int>({TauAnalysisTools::SFTriggerHadTau})) );
1629 ATH_CHECK( tau_trigSF->setProperty(
"TriggerName", trigger.first) );
1630 ATH_CHECK( tau_trigSF->setProperty(
"JetIDLevel", iTauID) );
1632 ATH_CHECK( tau_trigSF->setProperty(
"OutputLevel", this->msg().level()) );
1673 std::string jetcollBTag =
jetcoll;
1674 if (
jetcoll ==
"AntiKt4LCTopoJets") {
1675 ATH_MSG_WARNING(
" *** HACK *** Treating LCTopoJets jets as EMTopo -- use at your own risk!");
1676 jetcollBTag =
"AntiKt4EMTopoJets";
1682 ATH_MSG_WARNING(
"You are using a "<<(!
m_isRun3 ?
"Run3":
"Run2")<<
" CDI file while running on "<<(!
m_isRun3 ?
"Run2":
"Run3")<<
" sample; Please updates your CDI file to the correct version for "<<(!
m_isRun3 ?
"Run2":
"Run3"));
1686 if (jetcollBTag.find(
"AntiKt4EMTopoJets") == std::string::npos && jetcollBTag.find(
"AntiKt4EMPFlowJets")==std::string::npos) {
1687 ATH_MSG_WARNING(
"** Only AntiKt4EMTopoJets and AntiKt4EMPFlowJets are supported with FTAG scale factors!");
1688 return StatusCode::FAILURE;
1705 if (
jetcoll !=
"AntiKt4EMTopoJets" &&
jetcoll !=
"AntiKt4EMPFlowJets") {
1706 ATH_MSG_WARNING(
"** Only AntiKt4EMTopoJets and AntiKt4EMPFlowJets are supported with FTAG scale factors!");
1707 return StatusCode::FAILURE;
1710 toolName =
"BTagSelOR_" + jetcollBTag +
m_orBtagWP;
1723 const std::string& BTagColl_TrkJet = trkjetcoll;
1727 ATH_MSG_INFO(
"TrackJet collection set to None: disabling btagging for TrackJets.");
1731 if (trkjetcoll.find(
"AntiKt2PV0TrackJets")==std::string::npos && trkjetcoll.find(
"AntiKtVR30Rmax4Rmin02TrackJets")==std::string::npos) {
1732 ATH_MSG_WARNING(
"** Only AntiKt2PV0TrackJets and AntiKtVR30Rmax4Rmin02TrackJets are supported with FTAG scale factors!");
1733 return StatusCode::FAILURE;
1752 std::string MCshowerID;
1754 ATH_MSG_ERROR(
"Error! m_showerType=-1, which is an error case for FTAG MC/MC SFs." );
1755 return StatusCode::FAILURE;
1759 MCshowerID=
"default";
1769 ATH_MSG_WARNING(
"Unknown ShowerID detected! Using default FTAG MC-MC SFs (Powheg+Pythia8). Please check if these are applicable for this sample!");
1773 MCshowerID=
"default";
1777 ATH_MSG_WARNING(
"Unknown ShowerID detected! Using default FTAG MC-MC SFs (Powheg+Pythia8). Please check if these are applicable for this sample!");
1782 MCshowerID=
"default";
1791 ATH_MSG_WARNING(
"Unknown Sherpa version detected! Using FTAG MC-MC SFs for Sherpa 2.2.11-2.2.16. Please check if these are applicable for this sample!");
1792 MCshowerID =
"700660";
1795 ATH_MSG_WARNING(
"Unknown ShowerID detected! Using default FTAG MC-MC SFs (Powheg+Pythia8). Please check if these are applicable for this sample!");
1799 MCshowerID=
"default";
1806 ATH_MSG_WARNING(
"Unknown Sherpa version detected! Using FTAG MC-MC SFs for Sherpa 2.2.11-2.2.16. Please check if these are applicable for this sample!");
1807 MCshowerID =
"700660";
1810 ATH_MSG_WARNING(
"Unknown ShowerID detected! Using default FTAG MC-MC SFs (Powheg+Pythia8). Please check if these are applicable for this sample!");
1814 ATH_MSG_WARNING(
"Unknown b-tagger detected! Only DL1dv01 and GN2v01 are supported. Falling back to default FTAG MC-MC SFs (Powheg+Pythia8). Please check if these are applicable for this sample!");
1815 MCshowerID=
"default";
1820 if (
jetcoll !=
"AntiKt4EMTopoJets" &&
jetcoll !=
"AntiKt4EMPFlowJets") {
1821 ATH_MSG_WARNING(
"** Only AntiKt4EMTopoJets and AntiKt4EMPFlowJets are supported with FTAG scale factors!");
1822 return StatusCode::FAILURE;
1847 if (trkjetcoll.find(
"AntiKt2PV0TrackJets")==std::string::npos && trkjetcoll.find(
"AntiKtVR30Rmax4Rmin02TrackJets")==std::string::npos) {
1848 ATH_MSG_WARNING(
"** Only AntiKt2PV0TrackJets and AntiKtVR30Rmax4Rmin02TrackJets are supported with FTAG scale factors!");
1849 return StatusCode::FAILURE;
1852 toolName =
"BTagSF_" + trkjetcoll;
1908 ATH_MSG_ERROR(
"Can only have CST *or* TST configured for MET maker. Please unset either METDoCaloSyst or METDoTrkSyst in your config file" );
1909 return StatusCode::FAILURE;
1934 #ifndef XAOD_STANDALONE // Athena and AthAnalysis; need to take into account that MuonCalibTool is private tool
1939 if(jetname ==
"AntiKt4EMTopo" || jetname ==
"AntiKt4EMPFlow"){
1942 ATH_MSG_WARNING(
"Object-based METSignificance recommendations only exist for EMTopo and PFlow, falling back to AntiKt4EMTopo");
1953 if (IdBaselineInt == 4)
1957 #else // AnalysisBase; can just pass the muon calib tool configured above
1962 if(jetname ==
"AntiKt4EMTopo" || jetname ==
"AntiKt4EMPFlow"){
1965 ATH_MSG_WARNING(
"Object-based METSignificance recommendations only exist for EMTopo and PFlow, falling back to AntiKt4EMTopo");
1991 #ifndef XAOD_STANDALONE // Athena and AthAnalysis
1994 #else // AnalysisBase
2038 std::string no2e17(
"");
2048 ATH_MSG_DEBUG(
"TrigGlobalEfficiencyCorrectionTool/TrigGlobal_diLep: no2e17 trigger string: " << no2e17 );
2050 std::map<std::string,std::string> triggers_diLep;
2054 triggers_diLep[
"326834-328393"] = no2e17;
2073 std::string no2e17(
"");
2083 ATH_MSG_DEBUG(
"TrigGlobalEfficiencyCorrectionTool/TrigGlobal_multiLep: no2e17 trigger string: " << no2e17 );
2085 std::map<std::string,std::string> triggers_multiLep;
2089 triggers_multiLep[
"326834-328393"] = no2e17;
2189 #ifndef XAOD_ANALYSIS
2206 std::string toolName =
"ORTool" +
suffix;
2207 ATH_MSG_INFO(
"SUSYTools: Autoconfiguring " << toolName);
2224 orFlags.outputPassValue =
true;
2227 orFlags.doEleEleOR =
true;
2228 }
else orFlags.doEleEleOR =
false;
2229 orFlags.doElectrons =
true;
2230 orFlags.doMuons =
true;
2231 orFlags.doJets =
true;
2350 return StatusCode::SUCCESS;
◆ sysInitialize()
StatusCode asg::AsgMetadataTool::sysInitialize |
( |
| ) |
|
|
virtualinherited |
Function initialising the tool in the correct way in Athena.
This function is used to set up the callbacks from IncidentSvc in Athena at the right time during initialisation, without the user having to do anything special in his/her code.
Reimplemented from AthCommonDataStore< AthCommonMsg< AlgTool > >.
Definition at line 110 of file AsgMetadataTool.cxx.
112 #ifndef XAOD_STANDALONE
119 incSvc->addListener(
this, IncidentType::BeginEvent, 0,
false );
124 #endif // not XAOD_STANDALONE
127 return StatusCode::SUCCESS;
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ treatAsYear()
int ST::SUSYObjDef_xAOD::treatAsYear |
( |
const int |
runNumber = -1 | ) |
const |
|
finaloverridevirtual |
Implements ST::ISUSYObjDef_xAODTool.
Definition at line 3071 of file SUSYObjDef_xAOD.cxx.
3075 if (theRunNumber<290000)
return 2015;
3076 else if (theRunNumber<320000)
return 2016;
3077 else if (theRunNumber<342000)
return 2017;
3078 else if (theRunNumber<400000)
return 2018;
3079 else if (theRunNumber<445000)
return 2022;
3080 else if (theRunNumber<465000)
return 2023;
◆ TrigMatch() [1/10]
void ST::SUSYObjDef_xAOD::TrigMatch |
( |
const std::initializer_list< const xAOD::IParticle * > & |
v, |
|
|
const std::initializer_list< std::string > & |
items |
|
) |
| |
|
finaloverridevirtual |
◆ TrigMatch() [2/10]
◆ TrigMatch() [3/10]
◆ TrigMatch() [4/10]
◆ TrigMatch() [5/10]
◆ TrigMatch() [6/10]
◆ TrigMatch() [7/10]
◆ TrigMatch() [8/10]
◆ TrigMatch() [9/10]
◆ TrigMatch() [10/10]
◆ TrigSingleLep()
std::string ST::SUSYObjDef_xAOD::TrigSingleLep |
( |
| ) |
const |
|
finaloverridevirtual |
◆ updateVHKA()
◆ validConfig()
StatusCode ST::SUSYObjDef_xAOD::validConfig |
( |
bool |
strict = false | ) |
const |
|
protected |
baseline vs signal pt check
WP check
check pt and eta range
Definition at line 1916 of file SUSYObjDef_xAOD.cxx.
1923 if(
strict)
return StatusCode::FAILURE;
1927 if(
strict)
return StatusCode::FAILURE;
1932 if(
strict)
return StatusCode::FAILURE;
1936 if(
strict)
return StatusCode::FAILURE;
1942 if(
strict)
return StatusCode::FAILURE;
1946 if(
strict)
return StatusCode::FAILURE;
1950 if(
strict)
return StatusCode::FAILURE;
1956 if(
strict)
return StatusCode::FAILURE;
1960 if(
strict)
return StatusCode::FAILURE;
1964 if(
strict)
return StatusCode::FAILURE;
1968 if(
strict)
return StatusCode::FAILURE;
1973 ATH_MSG_WARNING(
"Your minimum signal jet pt is less than 20 GeV! Jet.Pt : " <<
m_jetPt <<
". This is NOT supported by the jet group!");
1983 ATH_MSG_WARNING(
"You btagging MinPt settings are inconsistent! EM(Topo|PFlow)Jets: not calibrated below 20 GeV (Btag.MinPt: " <<
m_BtagMinPt/1000. <<
" GeV set), VRTrackJets: not calibrated below 10 GeV (BtagTrkJet.MinPt: " <<
m_BtagMinPt_trkJet/1000. <<
" GeV set).");
1990 if(
strict)
return StatusCode::FAILURE;
1995 if(
strict)
return StatusCode::FAILURE;
1999 std::vector<float> pT_window;
2000 std::vector<float> eta_window;
2009 if (
m_tauId ==
"rnn001") theConfig =
"SUSYTools/tau_selection_rnn001.conf";
2010 else if (
m_tauId ==
"VeryLoose") theConfig =
"SUSYTools/tau_selection_veryloose.conf";
2011 else if (
m_tauId ==
"Loose") theConfig =
"SUSYTools/tau_selection_loose.conf";
2012 else if (
m_tauId ==
"Medium") theConfig =
"SUSYTools/tau_selection_medium.conf";
2013 else if (
m_tauId ==
"Tight") theConfig =
"SUSYTools/tau_selection_tight.conf";
2017 getTauConfig(theConfig, pT_window, eta_window, elOLR, muVeto, muOLR);
2021 ATH_MSG_WARNING(
"Your baseline tau pt configuration is inconsistent! pre pT cut : " <<
m_tauPrePtCut <<
" / TauSelectionTool window (in MeV) : [" << 1000*pT_window[0] <<
", " << 1000*pT_window[1] <<
"]");
2022 if(
strict)
return StatusCode::FAILURE;
2025 if(
m_tauPt > 0 and (
m_tauPt != 1000*pT_window[0] or (pT_window[1] > 0 and
m_tauPt > 1000*pT_window[1]))) {
2026 ATH_MSG_WARNING(
"Your baseline tau pt configuration is inconsistent! pT cut : " <<
m_tauPt <<
" / TauSelectionTool window (in Mev) : [" << 1000*pT_window[0] <<
", " << 1000*pT_window[1] <<
"]");
2027 if(
strict)
return StatusCode::FAILURE;
2031 ATH_MSG_WARNING(
"Your baseline tau eta configuration is inconsistent! eta cut : " <<
m_tauEta <<
" != TauSelectionTool max eta : " << eta_window[eta_window.size()-1]);
2032 if(
strict)
return StatusCode::FAILURE;
2040 if (
m_tauId ==
"rnn001") theConfig =
"SUSYTools/tau_selection_rnn001.conf";
2041 else if (
m_tauId ==
"VeryLoose") theConfig =
"SUSYTools/tau_selection_veryloose.conf";
2042 else if (
m_tauId ==
"Loose") theConfig =
"SUSYTools/tau_selection_loose.conf";
2043 else if (
m_tauId ==
"Medium") theConfig =
"SUSYTools/tau_selection_medium.conf";
2044 else if (
m_tauId ==
"Tight") theConfig =
"SUSYTools/tau_selection_tight.conf";
2047 getTauConfig(theConfig, pT_window, eta_window, elOLR, muVeto, muOLR);
2050 ATH_MSG_WARNING(
"Your tau pt configuration is inconsistent! pre pT cut : " <<
m_tauPrePtCut <<
" / TauSelectionTool window (in MeV) : [" << 1000*pT_window[0] <<
", " << 1000*pT_window[1] <<
"]");
2051 if(
strict)
return StatusCode::FAILURE;
2054 if(
m_tauPt > 0 and (
m_tauPt != 1000*pT_window[0] or (pT_window[1] > 0 and
m_tauPt > 1000*pT_window[1]))) {
2055 ATH_MSG_WARNING(
"Your tau pt configuration is inconsistent! pT cut : " <<
m_tauPt <<
" / TauSelectionTool window (in Mev) : [" << 1000*pT_window[0] <<
", " << 1000*pT_window[1] <<
"]");
2056 if(
strict)
return StatusCode::FAILURE;
2060 ATH_MSG_WARNING(
"Your tau eta configuration is inconsistent! eta cut : " <<
m_tauEta <<
" != TauSelectionTool max eta : " << eta_window[eta_window.size()-1]);
2061 if(
strict)
return StatusCode::FAILURE;
2066 return StatusCode::SUCCESS;
◆ ATLAS_THREAD_SAFE [1/2]
std::map<std::string, std::function<bool()> > m_metTriggerFuncs ST::SUSYObjDef_xAOD::ATLAS_THREAD_SAFE |
|
mutableprivate |
◆ ATLAS_THREAD_SAFE [2/2]
std::map<std::string, bool> m_checkedTriggers ST::SUSYObjDef_xAOD::ATLAS_THREAD_SAFE |
|
mutableprivate |
◆ lrt_electrons
◆ lrt_muons
◆ m_acc_eleId
◆ m_acc_eleIdBaseline
◆ m_acc_jetClean
◆ m_acc_photonId
◆ m_acc_photonIdBaseline
◆ m_applyJVTCut
bool ST::SUSYObjDef_xAOD::m_applyJVTCut |
|
protected |
◆ m_autoconfigPRW
bool ST::SUSYObjDef_xAOD::m_autoconfigPRW |
|
protected |
◆ m_autoconfigPRWCombinedmode
bool ST::SUSYObjDef_xAOD::m_autoconfigPRWCombinedmode |
|
protected |
◆ m_autoconfigPRWFile
std::string ST::SUSYObjDef_xAOD::m_autoconfigPRWFile |
|
protected |
◆ m_autoconfigPRWPath
std::string ST::SUSYObjDef_xAOD::m_autoconfigPRWPath |
|
protected |
◆ m_autoconfigPRWRPVmode
bool ST::SUSYObjDef_xAOD::m_autoconfigPRWRPVmode |
|
protected |
◆ m_autoconfigPRWRtags
std::string ST::SUSYObjDef_xAOD::m_autoconfigPRWRtags |
|
protected |
◆ m_badJetCut
std::string ST::SUSYObjDef_xAOD::m_badJetCut |
|
protected |
◆ m_badmuQoverP
double ST::SUSYObjDef_xAOD::m_badmuQoverP |
|
protected |
◆ m_beginInputFileCalled
bool asg::AsgMetadataTool::m_beginInputFileCalled |
|
privateinherited |
Flag helping to discover when the tool misses the opening of the first input file.
Definition at line 126 of file AsgMetadataTool.h.
◆ m_bool_prop_set
std::set<std::string> ST::SUSYObjDef_xAOD::m_bool_prop_set |
|
private |
◆ m_btagEffTool
◆ m_btagEffTool_trkJet
◆ m_bTaggingCalibrationFilePath
std::string ST::SUSYObjDef_xAOD::m_bTaggingCalibrationFilePath |
|
protected |
◆ m_BtagKeyOverride
std::string ST::SUSYObjDef_xAOD::m_BtagKeyOverride |
|
protected |
◆ m_BtagMinPt
double ST::SUSYObjDef_xAOD::m_BtagMinPt |
|
protected |
◆ m_BtagMinPt_trkJet
double ST::SUSYObjDef_xAOD::m_BtagMinPt_trkJet |
|
protected |
◆ m_btagSelTool
◆ m_btagSelTool_OR
◆ m_btagSelTool_trkJet
◆ m_BtagSystStrategy
std::string ST::SUSYObjDef_xAOD::m_BtagSystStrategy |
|
protected |
◆ m_BtagTagger
std::string ST::SUSYObjDef_xAOD::m_BtagTagger |
|
protected |
◆ m_BtagTagger_trkJet
std::string ST::SUSYObjDef_xAOD::m_BtagTagger_trkJet |
|
protected |
◆ m_BtagWP
std::string ST::SUSYObjDef_xAOD::m_BtagWP |
|
protected |
◆ m_BtagWP_trkJet
std::string ST::SUSYObjDef_xAOD::m_BtagWP_trkJet |
|
protected |
◆ m_caloMETsyst
bool ST::SUSYObjDef_xAOD::m_caloMETsyst |
|
protected |
◆ m_commonPRWFileMC20a
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC20a |
|
protected |
◆ m_commonPRWFileMC20d
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC20d |
|
protected |
◆ m_commonPRWFileMC20e
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC20e |
|
protected |
◆ m_commonPRWFileMC21a
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC21a |
|
protected |
◆ m_commonPRWFileMC23a
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC23a |
|
protected |
◆ m_commonPRWFileMC23c
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC23c |
|
protected |
◆ m_commonPRWFileMC23d
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC23d |
|
protected |
◆ m_commonPRWFileMC23e
std::string ST::SUSYObjDef_xAOD::m_commonPRWFileMC23e |
|
protected |
◆ m_conf_to_prop
std::map<std::string, std::string> ST::SUSYObjDef_xAOD::m_conf_to_prop |
|
private |
◆ m_configFile
std::string ST::SUSYObjDef_xAOD::m_configFile |
|
protected |
◆ m_currentSyst
◆ m_dataSource
int ST::SUSYObjDef_xAOD::m_dataSource |
|
protected |
◆ m_deadHVTool
◆ m_debug
bool ST::SUSYObjDef_xAOD::m_debug |
|
protected |
◆ m_defaultJets
std::string ST::SUSYObjDef_xAOD::m_defaultJets |
|
protected |
◆ m_defaultSyst
◆ m_defaultTrackJets
std::string ST::SUSYObjDef_xAOD::m_defaultTrackJets |
|
protected |
◆ m_defaultTruthJets
std::string ST::SUSYObjDef_xAOD::m_defaultTruthJets |
|
protected |
◆ m_detStore
◆ m_doElIsoSignal
bool ST::SUSYObjDef_xAOD::m_doElIsoSignal |
|
protected |
◆ m_doFwdJVT
bool ST::SUSYObjDef_xAOD::m_doFwdJVT |
|
protected |
◆ m_doIsoSignal
bool ST::SUSYObjDef_xAOD::m_doIsoSignal |
|
protected |
◆ m_doModifiedEleId
bool ST::SUSYObjDef_xAOD::m_doModifiedEleId |
|
protected |
◆ m_doMuIsoSignal
bool ST::SUSYObjDef_xAOD::m_doMuIsoSignal |
|
protected |
◆ m_doPhiReso
bool ST::SUSYObjDef_xAOD::m_doPhiReso |
|
protected |
◆ m_doPhIsoSignal
bool ST::SUSYObjDef_xAOD::m_doPhIsoSignal |
|
protected |
◆ m_doTTVAsf
bool ST::SUSYObjDef_xAOD::m_doTTVAsf |
|
protected |
◆ m_EG_corrFNList
std::string ST::SUSYObjDef_xAOD::m_EG_corrFNList |
|
protected |
◆ m_EG_corrModel
std::string ST::SUSYObjDef_xAOD::m_EG_corrModel |
|
protected |
◆ m_egammaAmbiguityTool
◆ m_egammaCalibTool
◆ m_EigenvectorReductionB
std::string ST::SUSYObjDef_xAOD::m_EigenvectorReductionB |
|
protected |
◆ m_EigenvectorReductionC
std::string ST::SUSYObjDef_xAOD::m_EigenvectorReductionC |
|
protected |
◆ m_EigenvectorReductionLight
std::string ST::SUSYObjDef_xAOD::m_EigenvectorReductionLight |
|
protected |
◆ m_el_id_support
std::vector<std::string> ST::SUSYObjDef_xAOD::m_el_id_support |
|
protected |
◆ m_el_iso_fallback
std::map<std::string, std::string> ST::SUSYObjDef_xAOD::m_el_iso_fallback |
|
protected |
◆ m_el_iso_support
std::vector<std::string> ST::SUSYObjDef_xAOD::m_el_iso_support |
|
protected |
◆ m_eleAllowRun3TrigSFFallback
bool ST::SUSYObjDef_xAOD::m_eleAllowRun3TrigSFFallback |
|
protected |
◆ m_eleBaselineCrackVeto
bool ST::SUSYObjDef_xAOD::m_eleBaselineCrackVeto |
|
protected |
◆ m_elebaselined0sig
double ST::SUSYObjDef_xAOD::m_elebaselined0sig |
|
protected |
◆ m_eleBaselineEta
double ST::SUSYObjDef_xAOD::m_eleBaselineEta |
|
protected |
◆ m_eleBaselineIso_WP
std::string ST::SUSYObjDef_xAOD::m_eleBaselineIso_WP |
|
protected |
◆ m_eleBaselinePt
double ST::SUSYObjDef_xAOD::m_eleBaselinePt |
|
protected |
◆ m_elebaselinez0
double ST::SUSYObjDef_xAOD::m_elebaselinez0 |
|
protected |
◆ m_elecChargeEffCorrTool
◆ m_elecChargeIDSelectorTool
◆ m_elecEfficiencySFTool_chf
◆ m_elecEfficiencySFTool_id
◆ m_elecEfficiencySFTool_iso
◆ m_elecEfficiencySFTool_isoHighPt
◆ m_elecEfficiencySFTool_reco
◆ m_elecEfficiencySFTool_trig_mixLep
◆ m_elecEfficiencySFTool_trig_singleLep
◆ m_elecEfficiencySFTool_trigEff_mixLep
◆ m_elecEfficiencySFTool_trigEff_singleLep
◆ m_eleChID_signal
bool ST::SUSYObjDef_xAOD::m_eleChID_signal |
|
protected |
◆ m_eleChID_WP
std::string ST::SUSYObjDef_xAOD::m_eleChID_WP |
|
protected |
◆ m_eleChIso
bool ST::SUSYObjDef_xAOD::m_eleChIso |
|
protected |
◆ m_elecLRTORTool
◆ m_eleConfig
std::string ST::SUSYObjDef_xAOD::m_eleConfig |
|
protected |
◆ m_eleConfigBaseline
std::string ST::SUSYObjDef_xAOD::m_eleConfigBaseline |
|
protected |
◆ m_eleCrackVeto
bool ST::SUSYObjDef_xAOD::m_eleCrackVeto |
|
protected |
◆ m_elecSelLikelihood
◆ m_elecSelLikelihoodBaseline
◆ m_elecTrigEffTools
◆ m_elecTrigSFTools
◆ m_electronTriggerSFStringSingle
std::string ST::SUSYObjDef_xAOD::m_electronTriggerSFStringSingle |
|
protected |
◆ m_eled0sig
double ST::SUSYObjDef_xAOD::m_eled0sig |
|
protected |
◆ m_eleEffMapFilePath
std::string ST::SUSYObjDef_xAOD::m_eleEffMapFilePath |
|
protected |
◆ m_eleEffMapFilePathRun2
std::string ST::SUSYObjDef_xAOD::m_eleEffMapFilePathRun2 |
|
protected |
◆ m_eleEta
double ST::SUSYObjDef_xAOD::m_eleEta |
|
protected |
◆ m_EleFatJetDR
double ST::SUSYObjDef_xAOD::m_EleFatJetDR |
|
protected |
◆ m_eleForceFullSimCalib
bool ST::SUSYObjDef_xAOD::m_eleForceFullSimCalib |
|
protected |
◆ m_eleId
std::string ST::SUSYObjDef_xAOD::m_eleId |
|
protected |
◆ m_eleIdBaseline
std::string ST::SUSYObjDef_xAOD::m_eleIdBaseline |
|
protected |
◆ m_eleIdBaselineDFName
std::string ST::SUSYObjDef_xAOD::m_eleIdBaselineDFName |
|
protected |
◆ m_eleIdDFName
std::string ST::SUSYObjDef_xAOD::m_eleIdDFName |
|
protected |
◆ m_eleIdExpert
bool ST::SUSYObjDef_xAOD::m_eleIdExpert |
|
protected |
◆ m_eleIso_WP
std::string ST::SUSYObjDef_xAOD::m_eleIso_WP |
|
protected |
◆ m_eleIsoHighPt_WP
std::string ST::SUSYObjDef_xAOD::m_eleIsoHighPt_WP |
|
protected |
◆ m_eleIsoHighPtThresh
double ST::SUSYObjDef_xAOD::m_eleIsoHighPtThresh |
|
protected |
◆ m_eleLRT
bool ST::SUSYObjDef_xAOD::m_eleLRT |
|
protected |
◆ m_eleLRT_strat
int ST::SUSYObjDef_xAOD::m_eleLRT_strat |
|
protected |
◆ m_elePt
double ST::SUSYObjDef_xAOD::m_elePt |
|
protected |
◆ m_eleTerm
std::string ST::SUSYObjDef_xAOD::m_eleTerm |
|
protected |
◆ m_elez0
double ST::SUSYObjDef_xAOD::m_elez0 |
|
protected |
◆ m_evtStore
◆ m_fatJets
std::string ST::SUSYObjDef_xAOD::m_fatJets |
|
protected |
◆ m_fatJetUncConfig
std::string ST::SUSYObjDef_xAOD::m_fatJetUncConfig |
|
protected |
◆ m_fatjetUncertaintiesTool
◆ m_fatJetUncVars
std::string ST::SUSYObjDef_xAOD::m_fatJetUncVars |
|
protected |
◆ m_fJvtConfigRun2
std::string ST::SUSYObjDef_xAOD::m_fJvtConfigRun2 |
|
protected |
◆ m_fJvtConfigRun3
std::string ST::SUSYObjDef_xAOD::m_fJvtConfigRun3 |
|
protected |
◆ m_fJvtEtaMin
double ST::SUSYObjDef_xAOD::m_fJvtEtaMin |
|
protected |
◆ m_fJvtPtMax
double ST::SUSYObjDef_xAOD::m_fJvtPtMax |
|
protected |
◆ m_fJvtWP
std::string ST::SUSYObjDef_xAOD::m_fJvtWP |
|
protected |
◆ m_force_noElId
bool ST::SUSYObjDef_xAOD::m_force_noElId |
|
protected |
◆ m_force_noMuId
bool ST::SUSYObjDef_xAOD::m_force_noMuId |
|
protected |
◆ m_gammaTerm
std::string ST::SUSYObjDef_xAOD::m_gammaTerm |
|
protected |
◆ m_GSFLRTCollectionName
◆ m_inputMetaStore
◆ m_inputMETCore
std::string ST::SUSYObjDef_xAOD::m_inputMETCore |
|
protected |
◆ m_inputMETMap
std::string ST::SUSYObjDef_xAOD::m_inputMETMap |
|
protected |
◆ m_inputMETRef
std::string ST::SUSYObjDef_xAOD::m_inputMETRef |
|
protected |
◆ m_inputMETSuffix
std::string ST::SUSYObjDef_xAOD::m_inputMETSuffix |
|
protected |
◆ m_isoBaselineTool
◆ m_IsoCloseByORpassLabel
std::string ST::SUSYObjDef_xAOD::m_IsoCloseByORpassLabel |
|
protected |
◆ m_isoCloseByTool
◆ m_isoCorrTool
◆ m_isoHighPtTool
◆ m_isoTool
◆ m_isPHYSLITE
bool ST::SUSYObjDef_xAOD::m_isPHYSLITE |
|
protected |
◆ m_isRun3
bool ST::SUSYObjDef_xAOD::m_isRun3 |
|
protected |
◆ m_jesCalibArea
std::string ST::SUSYObjDef_xAOD::m_jesCalibArea |
|
protected |
◆ m_jesCalibSeq
std::string ST::SUSYObjDef_xAOD::m_jesCalibSeq |
|
protected |
◆ m_jesCalibSeqFat
std::string ST::SUSYObjDef_xAOD::m_jesCalibSeqFat |
|
protected |
◆ m_jesCalibSeqJMS
std::string ST::SUSYObjDef_xAOD::m_jesCalibSeqJMS |
|
protected |
◆ m_jesConfig
std::string ST::SUSYObjDef_xAOD::m_jesConfig |
|
protected |
◆ m_jesConfigAFII
std::string ST::SUSYObjDef_xAOD::m_jesConfigAFII |
|
protected |
◆ m_jesConfigFat
std::string ST::SUSYObjDef_xAOD::m_jesConfigFat |
|
protected |
◆ m_jesConfigFatData
std::string ST::SUSYObjDef_xAOD::m_jesConfigFatData |
|
protected |
◆ m_jesConfigJMS
std::string ST::SUSYObjDef_xAOD::m_jesConfigJMS |
|
protected |
◆ m_jesConfigJMSData
std::string ST::SUSYObjDef_xAOD::m_jesConfigJMSData |
|
protected |
◆ m_jetCalibTool
◆ m_jetCleanDFName
std::string ST::SUSYObjDef_xAOD::m_jetCleanDFName |
|
protected |
◆ m_jetCleaningTool
◆ m_jetEta
double ST::SUSYObjDef_xAOD::m_jetEta |
|
protected |
◆ m_jetFatCalibTool
◆ m_JetFatJetDR
double ST::SUSYObjDef_xAOD::m_JetFatJetDR |
|
protected |
◆ m_jetfJvtEfficiencyTool
◆ m_jetfJvtSelectionTool
◆ m_jetInputType
int ST::SUSYObjDef_xAOD::m_jetInputType |
|
protected |
◆ m_jetJvt
double ST::SUSYObjDef_xAOD::m_jetJvt |
|
protected |
◆ m_jetJvtMomentTool
◆ m_jetNNJvtEfficiencyTool
◆ m_jetNNJvtMomentTool
◆ m_jetNNJvtSelectionTool
◆ m_jetPileupLabelingTool
◆ m_jetPt
double ST::SUSYObjDef_xAOD::m_jetPt |
|
protected |
◆ m_jetTerm
std::string ST::SUSYObjDef_xAOD::m_jetTerm |
|
protected |
◆ m_jetTruthLabelingTool
◆ m_JetTruthLabelName
std::string ST::SUSYObjDef_xAOD::m_JetTruthLabelName |
|
protected |
◆ m_jetUncertaintiesAnalysisFile
std::string ST::SUSYObjDef_xAOD::m_jetUncertaintiesAnalysisFile |
|
protected |
◆ m_jetUncertaintiesCalibArea
std::string ST::SUSYObjDef_xAOD::m_jetUncertaintiesCalibArea |
|
protected |
◆ m_jetUncertaintiesConfig
std::string ST::SUSYObjDef_xAOD::m_jetUncertaintiesConfig |
|
protected |
◆ m_jetUncertaintiesMCType
std::string ST::SUSYObjDef_xAOD::m_jetUncertaintiesMCType |
|
protected |
◆ m_jetUncertaintiesPDsmearing
bool ST::SUSYObjDef_xAOD::m_jetUncertaintiesPDsmearing |
|
protected |
◆ m_jetUncertaintiesPDSmearTool
◆ m_jetUncertaintiesTool
◆ m_JMScalib
bool ST::SUSYObjDef_xAOD::m_JMScalib |
|
protected |
◆ m_JvtConfigRun2
std::string ST::SUSYObjDef_xAOD::m_JvtConfigRun2 |
|
protected |
◆ m_JvtConfigRun3
std::string ST::SUSYObjDef_xAOD::m_JvtConfigRun3 |
|
protected |
◆ m_JvtPtMax
double ST::SUSYObjDef_xAOD::m_JvtPtMax |
|
protected |
◆ m_JvtWP
std::string ST::SUSYObjDef_xAOD::m_JvtWP |
|
protected |
◆ m_label_truthKey
◆ m_legsPerTool
std::map<std::string,std::string> ST::SUSYObjDef_xAOD::m_legsPerTool |
|
protected |
◆ m_legsPerTool_ph
std::map<std::string,std::string> ST::SUSYObjDef_xAOD::m_legsPerTool_ph |
|
protected |
◆ m_LRTCollectionName
◆ m_LRTuncTool
◆ m_mcCampaign
std::string ST::SUSYObjDef_xAOD::m_mcCampaign |
|
protected |
◆ m_mcChannel
int ST::SUSYObjDef_xAOD::m_mcChannel |
|
protected |
◆ m_metDoMuonEloss
bool ST::SUSYObjDef_xAOD::m_metDoMuonEloss |
|
protected |
◆ m_metDoRemoveMuonJets
bool ST::SUSYObjDef_xAOD::m_metDoRemoveMuonJets |
|
protected |
◆ m_metDoSetMuonJetEMScale
bool ST::SUSYObjDef_xAOD::m_metDoSetMuonJetEMScale |
|
protected |
◆ m_metGreedyPhotons
bool ST::SUSYObjDef_xAOD::m_metGreedyPhotons |
|
protected |
◆ m_metJetSelection
std::string ST::SUSYObjDef_xAOD::m_metJetSelection |
|
protected |
◆ m_metMaker
◆ m_metRemoveOverlappingCaloTaggedMuons
bool ST::SUSYObjDef_xAOD::m_metRemoveOverlappingCaloTaggedMuons |
|
protected |
◆ m_metSignif
◆ m_metsysConfigPrefix
std::string ST::SUSYObjDef_xAOD::m_metsysConfigPrefix |
|
protected |
◆ m_metSystTool
◆ m_metUseGhostMuons
bool ST::SUSYObjDef_xAOD::m_metUseGhostMuons |
|
protected |
◆ m_metVeryGreedyPhotons
bool ST::SUSYObjDef_xAOD::m_metVeryGreedyPhotons |
|
protected |
◆ m_mu_id_support
int ST::SUSYObjDef_xAOD::m_mu_id_support |
|
protected |
◆ m_mu_iso_fallback
std::map<std::string, std::string> ST::SUSYObjDef_xAOD::m_mu_iso_fallback |
|
protected |
◆ m_mu_iso_support
std::vector<std::string> ST::SUSYObjDef_xAOD::m_mu_iso_support |
|
protected |
◆ m_mubaselined0sig
double ST::SUSYObjDef_xAOD::m_mubaselined0sig |
|
protected |
◆ m_muBaselineEta
double ST::SUSYObjDef_xAOD::m_muBaselineEta |
|
protected |
◆ m_muBaselineIso_WP
std::string ST::SUSYObjDef_xAOD::m_muBaselineIso_WP |
|
protected |
◆ m_muBaselinePt
double ST::SUSYObjDef_xAOD::m_muBaselinePt |
|
protected |
◆ m_mubaselinez0
double ST::SUSYObjDef_xAOD::m_mubaselinez0 |
|
protected |
◆ m_muCalibrationMode
int ST::SUSYObjDef_xAOD::m_muCalibrationMode |
|
protected |
◆ m_muCosmicd0
double ST::SUSYObjDef_xAOD::m_muCosmicd0 |
|
protected |
◆ m_muCosmicz0
double ST::SUSYObjDef_xAOD::m_muCosmicz0 |
|
protected |
◆ m_mud0sig
double ST::SUSYObjDef_xAOD::m_mud0sig |
|
protected |
◆ m_muEffCorrForce1D
bool ST::SUSYObjDef_xAOD::m_muEffCorrForce1D |
|
protected |
◆ m_muEta
double ST::SUSYObjDef_xAOD::m_muEta |
|
protected |
◆ m_muHighPtExtraSmear
bool ST::SUSYObjDef_xAOD::m_muHighPtExtraSmear |
|
protected |
◆ m_muId
int ST::SUSYObjDef_xAOD::m_muId |
|
protected |
◆ m_muIdBaseline
int ST::SUSYObjDef_xAOD::m_muIdBaseline |
|
protected |
◆ m_muIso_WP
std::string ST::SUSYObjDef_xAOD::m_muIso_WP |
|
protected |
◆ m_muIsoHighPt_WP
std::string ST::SUSYObjDef_xAOD::m_muIsoHighPt_WP |
|
protected |
◆ m_muIsoHighPtThresh
double ST::SUSYObjDef_xAOD::m_muIsoHighPtThresh |
|
protected |
◆ m_muLRT
bool ST::SUSYObjDef_xAOD::m_muLRT |
|
protected |
◆ m_muonCalibTool
◆ m_muonEfficiencyBMHighPtSFTool
◆ m_muonEfficiencySFTool
◆ m_muonHighPtIsolationSFTool
◆ m_muonIsolationSFTool
◆ m_muonLRTORTool
◆ m_muonSelectionHighPtTool
◆ m_muonSelectionTool
◆ m_muonSelectionToolBaseline
◆ m_muonTerm
std::string ST::SUSYObjDef_xAOD::m_muonTerm |
|
protected |
◆ m_muonTriggerSFTool
◆ m_muonTrigSFTools
◆ m_muonTTVAEfficiencySFTool
◆ m_muPt
double ST::SUSYObjDef_xAOD::m_muPt |
|
protected |
◆ m_murequirepassedHighPtCuts
bool ST::SUSYObjDef_xAOD::m_murequirepassedHighPtCuts |
|
protected |
◆ m_muz0
double ST::SUSYObjDef_xAOD::m_muz0 |
|
protected |
◆ m_orApplyRelPt
bool ST::SUSYObjDef_xAOD::m_orApplyRelPt |
|
protected |
◆ m_orBJetPtUpperThres
double ST::SUSYObjDef_xAOD::m_orBJetPtUpperThres |
|
protected |
◆ m_orBoostedElectronC1
double ST::SUSYObjDef_xAOD::m_orBoostedElectronC1 |
|
protected |
◆ m_orBoostedElectronC2
double ST::SUSYObjDef_xAOD::m_orBoostedElectronC2 |
|
protected |
◆ m_orBoostedElectronMaxConeSize
double ST::SUSYObjDef_xAOD::m_orBoostedElectronMaxConeSize |
|
protected |
◆ m_orBoostedMuonC1
double ST::SUSYObjDef_xAOD::m_orBoostedMuonC1 |
|
protected |
◆ m_orBoostedMuonC2
double ST::SUSYObjDef_xAOD::m_orBoostedMuonC2 |
|
protected |
◆ m_orBoostedMuonMaxConeSize
double ST::SUSYObjDef_xAOD::m_orBoostedMuonMaxConeSize |
|
protected |
◆ m_orBtagWP
std::string ST::SUSYObjDef_xAOD::m_orBtagWP |
|
protected |
◆ m_orDoBjet
bool ST::SUSYObjDef_xAOD::m_orDoBjet |
|
protected |
◆ m_orDoBoostedElectron
bool ST::SUSYObjDef_xAOD::m_orDoBoostedElectron |
|
protected |
◆ m_orDoBoostedMuon
bool ST::SUSYObjDef_xAOD::m_orDoBoostedMuon |
|
protected |
◆ m_orDoElBjet
bool ST::SUSYObjDef_xAOD::m_orDoElBjet |
|
protected |
◆ m_orDoEleJet
bool ST::SUSYObjDef_xAOD::m_orDoEleJet |
|
protected |
◆ m_orDoElEl
bool ST::SUSYObjDef_xAOD::m_orDoElEl |
|
protected |
◆ m_orDoElMu
bool ST::SUSYObjDef_xAOD::m_orDoElMu |
|
protected |
◆ m_orDoFatjets
bool ST::SUSYObjDef_xAOD::m_orDoFatjets |
|
protected |
◆ m_orDoMuBjet
bool ST::SUSYObjDef_xAOD::m_orDoMuBjet |
|
protected |
◆ m_orDoMuonJet
bool ST::SUSYObjDef_xAOD::m_orDoMuonJet |
|
protected |
◆ m_orDoMuonJetGhostAssociation
bool ST::SUSYObjDef_xAOD::m_orDoMuonJetGhostAssociation |
|
protected |
◆ m_orDoPhoton
bool ST::SUSYObjDef_xAOD::m_orDoPhoton |
|
protected |
◆ m_orDoTau
bool ST::SUSYObjDef_xAOD::m_orDoTau |
|
protected |
◆ m_orDoTauBjet
bool ST::SUSYObjDef_xAOD::m_orDoTauBjet |
|
protected |
◆ m_orInputLabel
std::string ST::SUSYObjDef_xAOD::m_orInputLabel |
|
protected |
◆ m_orLinkOverlapObjects
bool ST::SUSYObjDef_xAOD::m_orLinkOverlapObjects |
|
protected |
◆ m_orMuJetInnerDR
double ST::SUSYObjDef_xAOD::m_orMuJetInnerDR |
|
protected |
◆ m_orMuJetPtRatio
double ST::SUSYObjDef_xAOD::m_orMuJetPtRatio |
|
protected |
◆ m_orMuJetTrkPtRatio
double ST::SUSYObjDef_xAOD::m_orMuJetTrkPtRatio |
|
protected |
◆ m_orPhotonFavoured
bool ST::SUSYObjDef_xAOD::m_orPhotonFavoured |
|
protected |
◆ m_orRemoveCaloMuons
bool ST::SUSYObjDef_xAOD::m_orRemoveCaloMuons |
|
protected |
◆ m_orToolbox
◆ m_outElectronLocation
◆ m_outMETTerm
std::string ST::SUSYObjDef_xAOD::m_outMETTerm |
|
protected |
◆ m_outMuonLocation
◆ m_outputMetaStore
◆ m_ph_id_support
std::vector<std::string> ST::SUSYObjDef_xAOD::m_ph_id_support |
|
protected |
◆ m_photonAllowLate
bool ST::SUSYObjDef_xAOD::m_photonAllowLate |
|
protected |
◆ m_photonBaselineCrackVeto
bool ST::SUSYObjDef_xAOD::m_photonBaselineCrackVeto |
|
protected |
◆ m_photonBaselineEta
double ST::SUSYObjDef_xAOD::m_photonBaselineEta |
|
protected |
◆ m_photonBaselineIso_WP
std::string ST::SUSYObjDef_xAOD::m_photonBaselineIso_WP |
|
protected |
◆ m_photonBaselinePt
double ST::SUSYObjDef_xAOD::m_photonBaselinePt |
|
protected |
◆ m_photonCrackVeto
bool ST::SUSYObjDef_xAOD::m_photonCrackVeto |
|
protected |
◆ m_photonEfficiencySFTool
◆ m_photonEfficiencySFTool_trigEff_AsymDiphoton
◆ m_photonEfficiencySFTool_trigSF_AsymDiphoton
◆ m_photonEta
double ST::SUSYObjDef_xAOD::m_photonEta |
|
protected |
◆ m_photonId
std::string ST::SUSYObjDef_xAOD::m_photonId |
|
protected |
◆ m_photonIdBaseline
std::string ST::SUSYObjDef_xAOD::m_photonIdBaseline |
|
protected |
◆ m_photonIdBaselineDFName
std::string ST::SUSYObjDef_xAOD::m_photonIdBaselineDFName |
|
protected |
◆ m_photonIdDFName
std::string ST::SUSYObjDef_xAOD::m_photonIdDFName |
|
protected |
◆ m_photonIso_WP
std::string ST::SUSYObjDef_xAOD::m_photonIso_WP |
|
protected |
◆ m_photonIsolationSFTool
◆ m_photonPt
double ST::SUSYObjDef_xAOD::m_photonPt |
|
protected |
◆ m_photonSelIsEM
◆ m_photonSelIsEMBaseline
◆ m_photonTrigEffTools
◆ m_photonTriggerName
std::string ST::SUSYObjDef_xAOD::m_photonTriggerName |
|
protected |
◆ m_photonTriggerSFTool
◆ m_photonTrigSFTools
◆ m_pmgSHnjetWeighter
◆ m_pmgSHnjetWeighterWZ
◆ m_prwActualMu2017File
std::string ST::SUSYObjDef_xAOD::m_prwActualMu2017File |
|
protected |
◆ m_prwActualMu2018File
std::string ST::SUSYObjDef_xAOD::m_prwActualMu2018File |
|
protected |
◆ m_prwActualMu2022File
std::string ST::SUSYObjDef_xAOD::m_prwActualMu2022File |
|
protected |
◆ m_prwActualMu2023File
std::string ST::SUSYObjDef_xAOD::m_prwActualMu2023File |
|
protected |
◆ m_prwActualMu2024File
std::string ST::SUSYObjDef_xAOD::m_prwActualMu2024File |
|
protected |
◆ m_prwConfFiles
std::vector<std::string> ST::SUSYObjDef_xAOD::m_prwConfFiles |
|
protected |
◆ m_prwDataSF
double ST::SUSYObjDef_xAOD::m_prwDataSF |
|
protected |
◆ m_prwDataSF_DW
double ST::SUSYObjDef_xAOD::m_prwDataSF_DW |
|
protected |
◆ m_prwDataSF_UP
double ST::SUSYObjDef_xAOD::m_prwDataSF_UP |
|
protected |
◆ m_prwLcalcFiles
std::vector<std::string> ST::SUSYObjDef_xAOD::m_prwLcalcFiles |
|
protected |
◆ m_prwTool
◆ m_runDepPrescaleWeightPRW
bool ST::SUSYObjDef_xAOD::m_runDepPrescaleWeightPRW |
|
protected |
◆ m_runECIS
bool ST::SUSYObjDef_xAOD::m_runECIS |
|
protected |
◆ m_showerType
int ST::SUSYObjDef_xAOD::m_showerType |
|
protected |
◆ m_slices
std::map<std::string,bool> ST::SUSYObjDef_xAOD::m_slices |
|
protected |
◆ m_softTermParam
int ST::SUSYObjDef_xAOD::m_softTermParam |
|
protected |
◆ m_strictConfigCheck
bool ST::SUSYObjDef_xAOD::m_strictConfigCheck |
|
protected |
◆ m_subtool_init
bool ST::SUSYObjDef_xAOD::m_subtool_init |
|
protected |
◆ m_tau_id_support
std::vector<std::string> ST::SUSYObjDef_xAOD::m_tau_id_support |
|
protected |
◆ m_tau_trig_support
std::map<std::string, std::string> ST::SUSYObjDef_xAOD::m_tau_trig_support |
|
protected |
◆ m_tauConfigPath
std::string ST::SUSYObjDef_xAOD::m_tauConfigPath |
|
protected |
◆ m_tauConfigPathBaseline
std::string ST::SUSYObjDef_xAOD::m_tauConfigPathBaseline |
|
protected |
◆ m_tauConfigReader
TEnv ST::SUSYObjDef_xAOD::m_tauConfigReader |
|
protected |
◆ m_tauDoTTM
bool ST::SUSYObjDef_xAOD::m_tauDoTTM |
|
protected |
◆ m_tauEffTool
◆ m_tauEta
double ST::SUSYObjDef_xAOD::m_tauEta |
|
protected |
◆ m_tauId
std::string ST::SUSYObjDef_xAOD::m_tauId |
|
protected |
◆ m_tauIdBaseline
std::string ST::SUSYObjDef_xAOD::m_tauIdBaseline |
|
protected |
◆ m_tauJetORtool
◆ m_tauPrePtCut
double ST::SUSYObjDef_xAOD::m_tauPrePtCut |
|
protected |
◆ m_tauPt
double ST::SUSYObjDef_xAOD::m_tauPt |
|
protected |
◆ m_tauSelTool
◆ m_tauSelToolBaseline
◆ m_tauSmearingTool
◆ m_tauSmearingToolGenerator
std::string ST::SUSYObjDef_xAOD::m_tauSmearingToolGenerator |
|
protected |
◆ m_tauSmearingToolRecommendationTag
std::string ST::SUSYObjDef_xAOD::m_tauSmearingToolRecommendationTag |
|
protected |
◆ m_tauTerm
std::string ST::SUSYObjDef_xAOD::m_tauTerm |
|
protected |
◆ m_tauTrigEffTool
◆ m_tauTruthMatch
◆ m_tool_init
bool ST::SUSYObjDef_xAOD::m_tool_init |
|
protected |
◆ m_TopconfigReader
TEnv ST::SUSYObjDef_xAOD::m_TopconfigReader |
|
protected |
◆ m_TopDecorName
std::string ST::SUSYObjDef_xAOD::m_TopDecorName |
|
protected |
◆ m_ToptagConfig
std::string ST::SUSYObjDef_xAOD::m_ToptagConfig |
|
protected |
◆ m_TopTaggerCalibArea
std::string ST::SUSYObjDef_xAOD::m_TopTaggerCalibArea |
|
protected |
◆ m_TopTaggerTool
◆ m_TopTagjetUncertaintiesTool
◆ m_TopTagUncConfig
std::string ST::SUSYObjDef_xAOD::m_TopTagUncConfig |
|
protected |
◆ m_treatPUJets
bool ST::SUSYObjDef_xAOD::m_treatPUJets |
|
protected |
◆ m_trig2015combination_diLep
std::string ST::SUSYObjDef_xAOD::m_trig2015combination_diLep |
|
protected |
◆ m_trig2015combination_diPhoton
std::string ST::SUSYObjDef_xAOD::m_trig2015combination_diPhoton |
|
protected |
◆ m_trig2015combination_multiLep
std::string ST::SUSYObjDef_xAOD::m_trig2015combination_multiLep |
|
protected |
◆ m_trig2015combination_singleLep
std::string ST::SUSYObjDef_xAOD::m_trig2015combination_singleLep |
|
protected |
◆ m_trig2016combination_diLep
std::string ST::SUSYObjDef_xAOD::m_trig2016combination_diLep |
|
protected |
◆ m_trig2016combination_diPhoton
std::string ST::SUSYObjDef_xAOD::m_trig2016combination_diPhoton |
|
protected |
◆ m_trig2016combination_multiLep
std::string ST::SUSYObjDef_xAOD::m_trig2016combination_multiLep |
|
protected |
◆ m_trig2016combination_singleLep
std::string ST::SUSYObjDef_xAOD::m_trig2016combination_singleLep |
|
protected |
◆ m_trig2017combination_diLep
std::string ST::SUSYObjDef_xAOD::m_trig2017combination_diLep |
|
protected |
◆ m_trig2017combination_diPhoton
std::string ST::SUSYObjDef_xAOD::m_trig2017combination_diPhoton |
|
protected |
◆ m_trig2017combination_multiLep
std::string ST::SUSYObjDef_xAOD::m_trig2017combination_multiLep |
|
protected |
◆ m_trig2017combination_singleLep
std::string ST::SUSYObjDef_xAOD::m_trig2017combination_singleLep |
|
protected |
◆ m_trig2018combination_diLep
std::string ST::SUSYObjDef_xAOD::m_trig2018combination_diLep |
|
protected |
◆ m_trig2018combination_diPhoton
std::string ST::SUSYObjDef_xAOD::m_trig2018combination_diPhoton |
|
protected |
◆ m_trig2018combination_multiLep
std::string ST::SUSYObjDef_xAOD::m_trig2018combination_multiLep |
|
protected |
◆ m_trig2018combination_singleLep
std::string ST::SUSYObjDef_xAOD::m_trig2018combination_singleLep |
|
protected |
◆ m_trig2022combination_diLep
std::string ST::SUSYObjDef_xAOD::m_trig2022combination_diLep |
|
protected |
◆ m_trig2022combination_diPhoton
std::string ST::SUSYObjDef_xAOD::m_trig2022combination_diPhoton |
|
protected |
◆ m_trig2022combination_multiLep
std::string ST::SUSYObjDef_xAOD::m_trig2022combination_multiLep |
|
protected |
◆ m_trig2022combination_singleLep
std::string ST::SUSYObjDef_xAOD::m_trig2022combination_singleLep |
|
protected |
◆ m_trigConfTool
◆ m_trigDecTool
◆ m_trigDRScoringTool
◆ m_triggerCacheMutex
std::mutex ST::SUSYObjDef_xAOD::m_triggerCacheMutex |
|
mutableprivate |
◆ m_trigGlobalEffCorrTool_diLep
◆ m_trigGlobalEffCorrTool_diPhoton
◆ m_trigGlobalEffCorrTool_multiLep
◆ m_trigMatchingPrefix
std::string ST::SUSYObjDef_xAOD::m_trigMatchingPrefix |
|
protected |
Use composite trigger matching tool if matching was done upstream.
Definition at line 523 of file SUSYObjDef_xAOD.h.
◆ m_trigMatchingTool
◆ m_trigMatchScoringTool
◆ m_trigNToys_diLep
int ST::SUSYObjDef_xAOD::m_trigNToys_diLep |
|
protected |
◆ m_trigNToys_diPhoton
int ST::SUSYObjDef_xAOD::m_trigNToys_diPhoton |
|
protected |
◆ m_trigNToys_multiLep
int ST::SUSYObjDef_xAOD::m_trigNToys_multiLep |
|
protected |
◆ m_trkJetEta
double ST::SUSYObjDef_xAOD::m_trkJetEta |
|
protected |
◆ m_trkJetPt
double ST::SUSYObjDef_xAOD::m_trkJetPt |
|
protected |
◆ m_trkJetsyst
bool ST::SUSYObjDef_xAOD::m_trkJetsyst |
|
protected |
◆ m_trkMETsyst
bool ST::SUSYObjDef_xAOD::m_trkMETsyst |
|
protected |
◆ m_upstreamTriggerMatching
bool ST::SUSYObjDef_xAOD::m_upstreamTriggerMatching |
|
protected |
◆ m_useBtagging
bool ST::SUSYObjDef_xAOD::m_useBtagging |
|
protected |
◆ m_useBtagging_trkJet
bool ST::SUSYObjDef_xAOD::m_useBtagging_trkJet |
|
protected |
◆ m_useCommonPRWFiles
bool ST::SUSYObjDef_xAOD::m_useCommonPRWFiles |
|
protected |
◆ m_useIncidents
bool asg::AsgMetadataTool::m_useIncidents |
|
privateinherited |
◆ m_useSigLepForIsoCloseByOR
bool ST::SUSYObjDef_xAOD::m_useSigLepForIsoCloseByOR |
|
protected |
◆ m_useTRUTH3
bool ST::SUSYObjDef_xAOD::m_useTRUTH3 |
|
protected |
◆ m_v_trigs15_cache_diLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs15_cache_diLep |
|
private |
◆ m_v_trigs15_cache_multiLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs15_cache_multiLep |
|
private |
◆ m_v_trigs15_cache_singleEle
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs15_cache_singleEle |
|
private |
◆ m_v_trigs15_cache_singleLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs15_cache_singleLep |
|
private |
◆ m_v_trigs16_cache_diLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs16_cache_diLep |
|
private |
◆ m_v_trigs16_cache_multiLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs16_cache_multiLep |
|
private |
◆ m_v_trigs16_cache_singleEle
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs16_cache_singleEle |
|
private |
◆ m_v_trigs16_cache_singleLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs16_cache_singleLep |
|
private |
◆ m_v_trigs17_cache_diLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs17_cache_diLep |
|
private |
◆ m_v_trigs17_cache_multiLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs17_cache_multiLep |
|
private |
◆ m_v_trigs17_cache_singleEle
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs17_cache_singleEle |
|
private |
◆ m_v_trigs17_cache_singleLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs17_cache_singleLep |
|
private |
◆ m_v_trigs18_cache_diLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs18_cache_diLep |
|
private |
◆ m_v_trigs18_cache_multiLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs18_cache_multiLep |
|
private |
◆ m_v_trigs18_cache_singleEle
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs18_cache_singleEle |
|
private |
◆ m_v_trigs18_cache_singleLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs18_cache_singleLep |
|
private |
◆ m_v_trigs22_cache_diLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs22_cache_diLep |
|
private |
◆ m_v_trigs22_cache_multiLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs22_cache_multiLep |
|
private |
◆ m_v_trigs22_cache_singleEle
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs22_cache_singleEle |
|
private |
◆ m_v_trigs22_cache_singleLep
std::vector<std::string> ST::SUSYObjDef_xAOD::m_v_trigs22_cache_singleLep |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
◆ m_WconfigReader
TEnv ST::SUSYObjDef_xAOD::m_WconfigReader |
|
protected |
◆ m_WDecorName
std::string ST::SUSYObjDef_xAOD::m_WDecorName |
|
protected |
◆ m_WtagConfig
std::string ST::SUSYObjDef_xAOD::m_WtagConfig |
|
protected |
◆ m_WTaggerTool
◆ m_WTagjetUncertaintiesTool
◆ m_WTagUncConfig
std::string ST::SUSYObjDef_xAOD::m_WTagUncConfig |
|
protected |
◆ m_WZTaggerCalibArea
std::string ST::SUSYObjDef_xAOD::m_WZTaggerCalibArea |
|
protected |
◆ m_ZconfigReader
TEnv ST::SUSYObjDef_xAOD::m_ZconfigReader |
|
protected |
◆ m_ZDecorName
std::string ST::SUSYObjDef_xAOD::m_ZDecorName |
|
protected |
◆ m_ZtagConfig
std::string ST::SUSYObjDef_xAOD::m_ZtagConfig |
|
protected |
◆ m_ZTaggerTool
◆ m_ZTagjetUncertaintiesTool
◆ m_ZTagUncConfig
std::string ST::SUSYObjDef_xAOD::m_ZTagUncConfig |
|
protected |
◆ prompt_electrons
◆ prompt_muons
The documentation for this class was generated from the following files:
std::vector< std::string > m_v_trigs15_cache_singleLep
def retrieve(aClass, aKey=None)
bool m_autoconfigPRWCombinedmode
double GetTauTriggerEfficiencySF(const xAOD::TauJet &tau, const std::string &trigExpr="tau25_medium1_tracktwo") override final
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > m_muonEfficiencySFTool
bool emulateHLT(const std::string &triggerName) const
const std::string bJetLabel
asg::AnaToolHandle< CP::IIsolationSelectionTool > m_isoHighPtTool
std::string m_photonIdBaselineDFName
std::string m_autoconfigPRWRtags
SG::WriteHandleKey< xAOD::ElectronContainer > m_outElectronLocation
virtual double pt() const override final
The transverse momentum ( ) of the particle.
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_GSFLRTCollectionName
double m_orBoostedElectronC1
@ numberOfPixelHoles
number of pixel layers on track with absence of hits [unit8_t].
SG::ConstAccessor< char > m_acc_photonIdBaseline
double m_photonBaselinePt
bool IsHighPtMuon(const xAOD::Muon &input) const override final
StatusCode MergeElectrons(const xAOD::ElectronContainer &electrons, xAOD::ElectronContainer *outputCol, const std::set< const xAOD::Electron * > &ElectronsToRemove) const override final
asg::AnaToolHandle< IAsgDeadHVCellRemovalTool > m_deadHVTool
asg::AnaToolHandle< CP::IJvtEfficiencyTool > m_jetfJvtEfficiencyTool
asg::AnaToolHandle< TauAnalysisTools::ITauSelectionTool > m_tauSelTool
double GetEleTriggerEfficiencySF(const xAOD::Electron &el, const std::string &trigExpr="SINGLE_E_2015_e24_lhmedium_L1EM20VH_OR_e60_lhmedium_OR_e120_lhloose_2016_2018_e26_lhtight_nod0_ivarloose_OR_e60_lhmedium_nod0_OR_e140_lhloose_nod0") const override final
std::string m_trig2022combination_multiLep
std::string m_commonPRWFileMC23e
double GetTotalTauSF(const xAOD::TauJetContainer &taus, const bool idSF=true, const bool triggerSF=true, const std::string &trigExpr="tau25_medium1_tracktwo") override final
bool m_metDoSetMuonJetEMScale
std::vector< std::string > m_v_trigs18_cache_diLep
Const iterator class for DataVector/DataList.
float BtagSF(const xAOD::JetContainer *jets) override final
asg::AnaToolHandle< ICPJetUncertaintiesTool > m_ZTagjetUncertaintiesTool
asg::AnaToolHandle< ITrigGlobalEfficiencyCorrectionTool > m_trigGlobalEffCorrTool_multiLep
int IsTrackBJetContinuous(const xAOD::Jet &input) const override final
bool IsTruthBJet(const xAOD::Jet &input) const override final
Electron_v1 Electron
Definition of the current "egamma version".
Egamma_v1 Egamma
Definition of the current "egamma version".
std::string m_trig2022combination_diPhoton
std::mutex m_triggerCacheMutex
std::string m_jetUncertaintiesCalibArea
std::string m_prwActualMu2022File
std::string m_jesConfigAFII
std::string m_BtagSystStrategy
std::string m_tauIdBaseline
bool IsSignalElectron(const xAOD::Electron &input, const float etcut, const float d0sigcut, const float z0cut, const float etacut=DUMMYDEF) const override final
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > m_elecChargeEffCorrTool
StatusCode prepareLRTMuons(const xAOD::MuonContainer *inMuons, xAOD::MuonContainer *copy) const override final
ToolHandleArray< IAsgPhotonEfficiencyCorrectionTool > m_photonTrigEffTools
SG::ConstAccessor< char > m_acc_eleId
double JVT_SFsys(const xAOD::JetContainer *jets, const CP::SystematicSet &systConfig) override final
std::string m_eleIsoHighPt_WP
bool m_eleAllowRun3TrigSFFallback
asg::AnaToolHandle< CP::IEgammaCalibrationAndSmearingTool > m_egammaCalibTool
Combined electron collection.
double GetTotalMuonTriggerSF(const xAOD::MuonContainer &sfmuons, const std::string &trigExpr) override final
std::string m_trig2016combination_diPhoton
SG::ConstAccessor< char > m_acc_eleIdBaseline
virtual CorrectionCode getTriggerEfficiency(const xAOD::Muon &mu, Double_t &efficiency, const std::string &trigger, Bool_t dataType) const =0
const std::vector< std::string > split(const std::string &s, const std::string &delim) const
const xAOD::ElectronContainer * prompt_electrons
bool m_metDoRemoveMuonJets
std::vector< CP::SystematicSet > make_systematics_vector(const SystematicSet &systematics)
utility functions for working with systematics
std::string find(const std::string &s)
return a remapped string
SG::ReadDecorHandleKey< xAOD::JetContainer > m_label_truthKey
std::map< std::string, std::string > m_conf_to_prop
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > m_muonEfficiencyBMHighPtSFTool
asg::AnaToolHandle< IWeightTool > m_pmgSHnjetWeighterWZ
virtual StatusCode rebuildJetMET(const std::string &metJetKey, const std::string &metSoftKey, xAOD::MissingETContainer *metCont, const xAOD::JetContainer *jets, const xAOD::MissingETContainer *metCoreCont, xAOD::MissingETAssociationHelper &helper, bool doJetJVT)=0
bool IsBJet(const xAOD::Jet &input) const override final
std::vector< std::string > m_v_trigs15_cache_multiLep
std::map< std::string, std::string > m_legsPerTool
std::string m_ZTagUncConfig
std::string m_tauSmearingToolGenerator
asg::AnaToolHandle< ITrigGlobalEfficiencyCorrectionTool > m_trigGlobalEffCorrTool_diPhoton
bool m_photonBaselineCrackVeto
virtual StatusCode markInvisible(const xAOD::IParticleContainer *collection, xAOD::MissingETAssociationHelper &helper, xAOD::MissingETContainer *metCont)=0
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > m_elecEfficiencySFTool_reco
Combined muon collection.
@ VIEW_ELEMENTS
this data object is a view, it does not own its elmts
void getTauConfig(const std::string &tauConfigPath, std::vector< float > &pT_window, std::vector< float > &eta_window, bool &eleOLR, bool &muVeto, bool &muOLR) const
static StatusCode setProperty(const std::string &name, const std::string &property, const W &value, bool override=true)
asg::AnaToolHandle< IAsgElectronLikelihoodTool > m_elecSelLikelihood
std::vector< std::string > GetTriggerOR(const std::string &trigExpr) const
StatusCode FillMuon(xAOD::Muon &input, const float ptcut, const float etacut) override final
size_t size() const
returns: size of the set
std::vector< asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > > m_elecEfficiencySFTool_trig_mixLep
void GetTriggerTokens(std::string, std::vector< std::string > &, std::vector< std::string > &, std::vector< std::string > &, std::vector< std::string > &, std::vector< std::string > &) const
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
double GetTotalMuonSF(const xAOD::MuonContainer &muons, const bool recoSF=true, const bool isoSF=true, const std::string &trigExpr="HLT_mu20_iloose_L1MU15_OR_HLT_mu50", const bool bmhptSF=true) override final
asg::AnaToolHandle< JetPileupTag::JetVertexNNTagger > m_jetNNJvtMomentTool
bool IsBadMuon(const xAOD::Muon &input, const float qopcut) const override final
const xAOD::MuonContainer * lrt_muons
std::string m_EigenvectorReductionC
std::string m_fJvtConfigRun2
asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > m_photonTriggerSFTool
asg::AnaToolHandle< CP::IIsolationSelectionTool > m_isoBaselineTool
ToolHandleArray< IAsgElectronEfficiencyCorrectionTool > m_elecTrigEffTools
std::string m_JvtConfigRun2
asg::AnaToolHandle< TauAnalysisTools::ITauSmearingTool > m_tauSmearingTool
std::vector< std::string > m_v_trigs17_cache_singleEle
bool IsCosmicMuon(const xAOD::Muon &input, const float z0cut, const float d0cut) const override final
double d0significance(const xAOD::TrackParticle *tp, double d0_uncert_beam_spot_2)
std::vector< std::string > m_el_iso_support
const TruthParticle * truthParticle(size_t index) const
Get a pointer to one of the truth particles.
StatusCode recommendedTools(const ORFlags &flags, ToolBox &toolBox)
Pre-configured standard recommended OR tools.
std::string m_trig2015combination_singleLep
void configFromFile(bool &property, const std::string &propname, TEnv &rEnv, bool defaultValue)
bool m_metRemoveOverlappingCaloTaggedMuons
asg::AnaToolHandle< IMETMaker > m_metMaker
StatusCode FillElectron(xAOD::Electron &input, const float etcut, const float etacut) override final
std::string m_trig2018combination_diPhoton
Class to wrap a set of SystematicVariations.
asg::AnaToolHandle< Trig::IMatchScoringTool > m_trigMatchScoringTool
float GetTotalElectronSF(const xAOD::ElectronContainer &electrons, const bool recoSF=true, const bool idSF=true, const bool triggerSF=true, const bool isoSF=true, const std::string &trigExpr="singleLepton", const bool ecidsSF=false, const bool cidSF=false) override final
asg::AnaToolHandle< JSSWTopTaggerDNN > m_TopTaggerTool
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
std::string m_photonIso_WP
StatusCode prepareLRTElectrons(const xAOD::ElectronContainer *inMuons, xAOD::ElectronContainer *copy) const override final
const T * get(size_type n) const
Access an element, as an rvalue.
std::vector< std::string > m_v_trigs18_cache_singleLep
std::string name() const
returns: the systematics joined into a single string.
float GetSignalElecSF(const xAOD::Electron &el, const bool recoSF=true, const bool idSF=true, const bool triggerSF=true, const bool isoSF=true, const std::string &trigExpr="singleLepton", const bool ecidsSF=false, const bool cidSF=false) override final
float beamPosSigmaX() const
The width of the beam spot in the X direction.
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > m_muonTTVAEfficiencySFTool
std::map< std::string, std::string > m_el_iso_fallback
const char * name() const
Get the name of the container instance.
std::string m_commonPRWFileMC21a
@ numberOfPixelHits
these are the pixel hits, including the b-layer [unit8_t].
std::string m_prwActualMu2024File
bool IsSignalPhoton(const xAOD::Photon &input, const float ptcut, const float etacut=DUMMYDEF) const override final
virtual double GetSignificance() const =0
@ numberOfTRTHits
number of TRT hits [unit8_t].
bool m_orDoTau
Overlap removal options.
std::vector< std::string > m_v_trigs18_cache_singleEle
const uint32_t BADCLUSELECTRON
asg::AnaToolHandle< CP::IPileupReweightingTool > m_prwTool
std::string m_muBaselineIso_WP
std::string m_trig2016combination_multiLep
std::string m_inputMETSuffix
asg::AnaToolHandle< SmoothedWZTagger > m_WTaggerTool
Helper class to provide constant type-safe access to aux data.
std::string m_eleConfigBaseline
const xAOD::Vertex * GetPrimVtx() const override final
std::vector< std::string > m_v_trigs22_cache_singleLep
std::string m_bTaggingCalibrationFilePath
std::vector< std::string > m_v_trigs22_cache_singleEle
ToolHandleArray< IAsgPhotonEfficiencyCorrectionTool > m_photonTrigSFTools
#define ATH_MSG_VERBOSE(x)
asg::AnaToolHandle< Trig::IMatchingTool > m_trigMatchingTool
const std::string & key() const
Return the StoreGate ID for the referenced object.
asg::AnaToolHandle< ICPJetUncertaintiesTool > m_jetUncertaintiesPDSmearTool
StatusCode FillJet(xAOD::Jet &input, const bool doCalib=true, bool isFat=false, bool doLargeRdecorations=false) override final
bool IsSignalMuon(const xAOD::Muon &input, const float ptcut, const float d0sigcut, const float z0cut, const float etacut=DUMMYDEF) const override final
double m_elebaselined0sig
Class providing the definition of the 4-vector interface.
asg::AnaToolHandle< CP::IElectronLRTOverlapRemovalTool > m_elecLRTORTool
std::string m_trig2017combination_diPhoton
double GetSignalPhotonSFsys(const xAOD::Photon &ph, const CP::SystematicSet &systConfig, const bool effSF=true, const bool isoSF=true, const bool triggerSF=false) override final
std::vector< std::string > m_mu_iso_support
std::vector< std::string > m_tau_id_support
bool is_same_particle(const T1 &p1, const T2 &p2)
Method to establish if two particles in the GenEvent actually represent the same particle.
@ numberOfBLayerHits
these are the hits in the first pixel layer, i.e.
std::string m_fatJetUncVars
virtual StatusCode rebuildMET(const std::string &metKey, xAOD::Type::ObjectType metType, xAOD::MissingETContainer *metCont, const xAOD::IParticleContainer *collection, xAOD::MissingETAssociationHelper &helper, MissingETBase::UsageHandler::Policy objScale=MissingETBase::UsageHandler::PhysicsObject)=0
std::string m_eleEffMapFilePath
uint32_t runNumber() const
The current event's run number.
asg::AnaToolHandle< JetVertexTaggerTool > m_jetJvtMomentTool
std::string m_eleIdBaseline
bool isVariation(const CP::SystematicSet &syst) const
float BtagSF_trkJet(const xAOD::JetContainer *trkjets) override final
ORUtils::ToolBox m_orToolbox
std::string m_tauConfigPath
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_LRTCollectionName
double m_photonBaselineEta
virtual void setOwner(IDataHandleHolder *o)=0
std::vector< std::string > m_v_trigs15_cache_singleEle
asg::AnaToolHandle< CP::IMuonLRTOverlapRemovalTool > m_muonLRTORTool
std::string m_commonPRWFileMC20d
const xAOD::TrackParticleContainer & GetInDetLargeD0GSFTracks(const EventContext &ctx) const override final
SG::ConstAccessor< char > m_acc_jetClean
bool IsTrackBJet(const xAOD::Jet &input) const override final
asg::AnaToolHandle< IBTaggingEfficiencyTool > m_btagEffTool_trkJet
StatusCode FillTrackJet(xAOD::Jet &input) override final
double FJVT_SFsys(const xAOD::JetContainer *jets, const CP::SystematicSet &systConfig) override final
StatusCode buildMETSum(const std::string &totalName, xAOD::MissingETContainer *metCont)
uint32_t mcChannelNumber() const
The MC generator's channel number.
std::vector< std::string > m_v_trigs17_cache_diLep
std::map< std::string, bool > m_slices
bool m_orLinkOverlapObjects
std::string m_eleEffMapFilePathRun2
@ JetConstitScaleMomentum
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > m_elecEfficiencySFTool_isoHighPt
std::string m_trig2018combination_singleLep
double m_orBoostedMuonMaxConeSize
asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > m_photonEfficiencySFTool
virtual CorrectionCode getTriggerScaleFactor(const xAOD::MuonContainer &mucont, Double_t &triggersf, const std::string &trigger) const =0
std::map< std::string, std::string > m_tau_trig_support
asg::AnaToolHandle< ITrigGlobalEfficiencyCorrectionTool > m_trigGlobalEffCorrTool_diLep
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
std::string m_WZTaggerCalibArea
std::vector< std::string > m_prwLcalcFiles
bool passOQquality(const xAOD::Photon &ph)
Helper to ease the implemmantation of the pass Quality requirements.
@ OutOfValidityRange
Input object is out of validity range.
std::vector< std::string > m_el_id_support
@ Error
Some error happened during the object correction.
std::string m_defaultJets
std::vector< std::string > m_ph_id_support
StatusCode SUSYToolsInit()
std::vector< asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > > m_elecEfficiencySFTool_trigEff_mixLep
void addGhostMuonsToJets(const xAOD::MuonContainer &muons, xAOD::JetContainer &jets)
std::string m_TopTaggerCalibArea
bool isWeight(const CP::SystematicSet &systSet) const
std::string m_fatJetUncConfig
int IsBJetContinuous(const xAOD::Jet &input) const override final
unsigned int GetRunNumber() const override final
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > m_elecEfficiencySFTool_id
Handle class for reading a decoration on an object.
StatusCode readConfig() override final
bool pc(const std::string &taggername, double &value) const
virtual asg::AcceptData accept(const xAOD::IParticle *part) const =0
accept with pointer to IParticle so as to not hide the IAsgSelectionTool one
std::string m_IsoCloseByORpassLabel
const xAOD::ElectronContainer * lrt_electrons
std::string m_tauSmearingToolRecommendationTag
std::string m_jetUncertaintiesConfig
Prefix for trigger matchiing container name.
asg::AnaToolHandle< IJetCalibrationTool > m_jetCalibTool
std::map< std::string, std::string > m_mu_iso_fallback
std::vector< std::string > m_v_trigs22_cache_multiLep
std::vector< asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > > m_photonEfficiencySFTool_trigEff_AsymDiphoton
std::vector< asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > > m_photonEfficiencySFTool_trigSF_AsymDiphoton
bool isNominal(const CP::SystematicSet &syst) const
double GetMuonTriggerEfficiency(const xAOD::Muon &mu, const std::string &trigExpr, const bool isdata=false) override final
double deltaR(double rapidity1, double phi1, double rapidity2, double phi2)
from bare bare rapidity,phi
std::string m_jesCalibArea
float nSCTHits(const U &p)
const uint16_t AuthorAmbiguous
Object Reconstructed by standard cluster-based algorithm.
std::string m_trig2017combination_singleLep
float nTRTHits(const U &p)
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > m_muonIsolationSFTool
std::string m_jetCleanDFName
std::string m_jesCalibSeq
::StatusCode StatusCode
StatusCode definition for legacy code.
SystType getSystType(const CP::SystematicVariation &systematic)
asg::AnaToolHandle< ICPJetUncertaintiesTool > m_jetUncertaintiesTool
bool IsSignalJet(const xAOD::Jet &input, const float ptcut, const float etacut) const override final
Class describing a truth particle in the MC record.
Class describing a tau jet.
std::vector< std::string > m_v_trigs17_cache_singleLep
asg::AnaToolHandle< CP::IMuonCalibrationAndSmearingTool > m_muonCalibTool
asg::AnaToolHandle< SmoothedWZTagger > m_ZTaggerTool
std::string m_trig2017combination_multiLep
std::pair< std::vector< unsigned int >, bool > res
double FJVT_SF(const xAOD::JetContainer *jets) override final
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
std::string m_jesConfigJMS
std::string m_eleIdDFName
cut
This script demonstrates how to call a C++ class from Python Also how to use PyROOT is shown.
std::string m_jetUncertaintiesMCType
std::string m_commonPRWFileMC20e
bool check_isTighter(const std::string &wp1, const std::string &wp, const std::vector< std::string > &list) const
std::string m_jetUncertaintiesAnalysisFile
std::map< std::string, std::string > m_legsPerTool_ph
asg::AnaToolHandle< IAsgSelectionTool > m_jetfJvtSelectionTool
asg::AnaToolHandle< IAsgPhotonIsEMSelector > m_photonSelIsEM
std::string m_trig2016combination_diLep
bool m_jetUncertaintiesPDsmearing
asg::AnaToolHandle< IMETSystematicsTool > m_metSystTool
const std::string & name(Level lvl)
Convenience function for translating message levels to strings.
const xAOD::MuonContainer * prompt_muons
double m_BtagMinPt_trkJet
std::vector< std::string > m_v_trigs15_cache_diLep
double m_muIsoHighPtThresh
asg::AnaToolHandle< JetPileupLabelingTool > m_jetPileupLabelingTool
std::string m_trigMatchingPrefix
Use composite trigger matching tool if matching was done upstream.
asg::AnaToolHandle< ICPJetUncertaintiesTool > m_WTagjetUncertaintiesTool
asg::AnaToolHandle< TauAnalysisTools::ITauSelectionTool > m_tauSelToolBaseline
bool isData() const override final
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
std::set< std::string > m_bool_prop_set
std::string m_trig2018combination_diLep
std::string m_jesConfigFat
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
std::string m_trig2022combination_diLep
bool IsBadJet(const xAOD::Jet &input) const override final
std::string m_eleIdBaselineDFName
bool IsTrigMatched(const xAOD::IParticle *part, const std::string &tr_item) override final
@ numberOfSCTHoles
number of SCT holes [unit8_t].
bool isAtlfast() const override final
std::string m_trig2015combination_multiLep
asg::AnaToolHandle< IBTaggingSelectionTool > m_btagSelTool_trkJet
size_t index() const
Return the index of this element within its container.
asg::AnaToolHandle< ICPJetUncertaintiesTool > m_fatjetUncertaintiesTool
std::string m_jesCalibSeqJMS
float nSCTHoles(const U &p)
std::string m_WTagUncConfig
bool m_runDepPrescaleWeightPRW
StatusCode SetBtagWeightDecorations(const xAOD::Jet &input, const asg::AnaToolHandle< IBTaggingSelectionTool > &btagSelTool, const std::string &btagTagger) const override final
std::string m_prwActualMu2017File
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > m_elecEfficiencySFTool_trigEff_singleLep
const xAOD::EventInfo * GetEventInfo() const override final
asg::AnaToolHandle< ORUtils::IOverlapTool > m_tauJetORtool
std::string m_photonBaselineIso_WP
virtual void renounce()=0
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > m_elecEfficiencySFTool_iso
std::vector< std::string > m_prwConfFiles
std::string m_metJetSelection
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
float beamPosSigmaY() const
The width of the beam spot in the Y direction.
asg::AnaToolHandle< TauAnalysisTools::ITauTruthMatchingTool > m_tauTruthMatch
std::string m_trig2022combination_singleLep
std::string EG_WP(const std::string &wp) const
bool pu(const std::string &taggername, double &value) const
std::string m_inputMETCore
float averageInteractionsPerCrossing() const
Average interactions per crossing for all BCIDs - for out-of-time pile-up.
bool check_isOption(const std::string &wp, const std::vector< std::string > &list) const
Container for xAOD::MissingET_v1 objects.
bool m_eleForceFullSimCalib
asg::AnaToolHandle< IAsgElectronLikelihoodTool > m_elecSelLikelihoodBaseline
asg::AnaToolHandle< TrigConf::ITrigConfigTool > m_trigConfTool
double GetSignalPhotonSF(const xAOD::Photon &ph, const bool effSF=true, const bool isoSF=true, const bool triggerSF=false) const override final
std::string m_EigenvectorReductionLight
Muon_v1 Muon
Reference the current persistent version:
std::string m_ToptagConfig
asg::AnaToolHandle< TauAnalysisTools::ITauEfficiencyCorrectionsTool > m_tauEffTool
asg::AnaToolHandle< CP::IMuonSelectionTool > m_muonSelectionToolBaseline
bool IsMETTrigPassed(unsigned int runnumber=0, bool j400_OR=false) const override final
std::string to_string(const DetectorType &type)
double error(const Amg::MatrixX &mat, int index)
return diagonal error of the matrix caller should ensure the matrix is symmetric and the index is in ...
float getSherpaVjetsNjetsWeight() const override final
void TrigMatch(const xAOD::IParticle *p, std::initializer_list< std::string >::iterator, std::initializer_list< std::string >::iterator) override final
bool m_useBtagging_trkJet
StatusCode FillTau(xAOD::TauJet &input) override final
asg::AnaToolHandle< CP::IIsolationCloseByCorrectionTool > m_isoCloseByTool
asg::AnaToolHandle< IAsgElectronEfficiencyCorrectionTool > m_elecEfficiencySFTool_trig_singleLep
std::string m_trig2018combination_multiLep
asg::AnaToolHandle< IBTaggingSelectionTool > m_btagSelTool_OR
size_t nTruthParticles() const
Get the number of truth particles.
virtual StatusCode tag(const xAOD::Jet &jet) const override
Decorate single jet with tagging info.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
std::string m_commonPRWFileMC20a
asg::AnaToolHandle< CP::IMuonSelectionTool > m_muonSelectionHighPtTool
std::string m_fJvtConfigRun3
std::string m_BtagWP_trkJet
void setName(const char *name)
Set the name of the container instance.
std::pair< std::unique_ptr< T >, std::unique_ptr< ShallowAuxContainer > > shallowCopyContainer(const T &cont, [[maybe_unused]] const EventContext &ctx)
Function making a shallow copy of a constant container.
SG::WriteHandleKey< xAOD::MuonContainer > m_outMuonLocation
Class describing the basic event information.
Photon_v1 Photon
Definition of the current "egamma version".
std::string PathResolverFindCalibFile(const std::string &logical_file_name)
ST::SystInfo getSystInfo(const CP::SystematicVariation &sys) const override final
struct TBPatternUnitContext Muon
bool isPileup(int origin)
from pileup
const BTagging * getBTagging(const SG::AuxElement &part)
Access the default xAOD::BTagging object associated to an object.
asg::AnaToolHandle< IBTaggingSelectionTool > m_btagSelTool
asg::AnaToolHandle< IAsgSelectionTool > m_jetNNJvtSelectionTool
@ numberOfTRTOutliers
number of TRT outliers [unit8_t].
double m_orMuJetTrkPtRatio
StatusCode FillPhoton(xAOD::Photon &input, const float ptcut, const float etacut) override final
std::vector< std::string > m_v_trigs16_cache_diLep
asg::AnaToolHandle< CP::IMuonTriggerScaleFactors > m_muonTriggerSFTool
const uint32_t BADCLUSPHOTON
double GetSignalTauSF(const xAOD::TauJet &tau, const bool idSF=true, const bool triggerSF=true, const std::string &trigExpr="tau25_medium1_tracktwo") override final
std::vector< std::string > getElSFkeys(const std::string &mapFile) const
std::string m_jesConfigJMSData
std::string m_trig2016combination_singleLep
@ Ok
The correction was done successfully.
asg::AnaToolHandle< IBTaggingEfficiencyTool > m_btagEffTool
asg::AnaToolHandle< IAsgElectronLikelihoodTool > m_elecChargeIDSelectorTool
float beamPosSigmaXY() const
The beam spot shape's X-Y correlation.
double m_orBoostedElectronMaxConeSize
StatusCode FindSusyHP(int &pdgid1, int &pdgid2) const
std::string m_eleBaselineIso_WP
std::string m_inputMETMap
std::string m_BtagTagger_trkJet
bool m_autoconfigPRWRPVmode
Class describing a Vertex.
static bool FindSusyHardProc(const xAOD::TruthParticleContainer *truthP, int &pdgid1, int &pdgid2, bool isTruth3=false)
StatusCode validConfig(bool strict=false) const
std::string m_EG_corrModel
std::vector< std::string > m_v_trigs18_cache_multiLep
std::string m_JetTruthLabelName
double JVT_SF(const xAOD::JetContainer *jets) override final
#define ATH_MSG_WARNING(x)
bool m_orDoBoostedElectron
@ numberOfSCTDeadSensors
number of dead SCT sensors crossed [unit8_t].
asg::AnaToolHandle< IAsgPhotonIsEMSelector > m_photonSelIsEMBaseline
float GetSignalMuonSF(const xAOD::Muon &mu, const bool recoSF=true, const bool isoSF=true, const bool doBadMuonHP=true, const bool warnOVR=true) override final
This module implements the central registry for handling systematic uncertainties with CP tools.
DataVector adapter that acts like it holds const pointers.
A struct of global config options used to simplify the config helper interface.
bool m_metVeryGreedyPhotons
double GetTriggerGlobalEfficiencySF(const xAOD::ElectronContainer &electrons, const xAOD::MuonContainer &muons, const std::string &trigExpr="diLepton") override final
bool setOriginalObjectLink(const IParticle &original, IParticle ©)
This function should be used by CP tools when they make a deep copy of an object in their correctedCo...
asg::AnaToolHandle< Trig::TrigDecisionTool > m_trigDecTool
std::string m_metsysConfigPrefix
std::string m_defaultTrackJets
std::string m_prwActualMu2023File
std::string m_jesCalibSeqFat
std::string m_TopTagUncConfig
StatusCode applySystematicVariation(const CP::SystematicSet &systConfig) override final
Return value from object correction CP tools.
CP::SystematicSet m_currentSyst
std::string m_tauConfigPathBaseline
const uint16_t AuthorPhoton
Object Reconstructed by standard cluster-based algorithm.
std::string m_autoconfigPRWPath
std::string m_photonIdDFName
asg::AnaToolHandle< IJetCalibrationTool > m_jetFatCalibTool
std::string m_electronTriggerSFStringSingle
asg::AnaToolHandle< CP::IJvtEfficiencyTool > m_jetNNJvtEfficiencyTool
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
virtual CorrectionCode getEfficiencyScaleFactor(const xAOD::Muon &mu, float &sf, const xAOD::EventInfo *info=0) const =0
Retrieve the Scale factor.
float BtagSFsys(const xAOD::JetContainer *jets, const CP::SystematicSet &systConfig) override final
std::vector< std::string > m_v_trigs17_cache_multiLep
std::string m_trig2017combination_diLep
asg::AnaToolHandle< Trig::IMatchScoringTool > m_trigDRScoringTool
std::string m_trig2015combination_diLep
asg::AnaToolHandle< JetTruthLabelingTool > m_jetTruthLabelingTool
@ numberOfSCTHits
number of hits in SCT [unit8_t].
asg::AnaToolHandle< IMETSignificance > m_metSignif
@ Tau
The object is a tau (jet)
std::string m_autoconfigPRWFile
std::vector< std::string > m_v_trigs16_cache_singleLep
std::string m_jesConfigFatData
virtual StatusCode rebuildTrackMET(const std::string &metJetKey, const std::string &metSoftKey, xAOD::MissingETContainer *metCont, const xAOD::JetContainer *jets, const xAOD::MissingETContainer *metCoreCont, xAOD::MissingETAssociationHelper &helper, bool doJetJVT)=0
int atoi(std::string_view str)
Helper functions to unpack numbers decoded in string into integers and doubles The strings are requir...
bool isAvailable(const ELT &e) const
Test to see if this variable exists in the store.
std::string m_commonPRWFileMC23c
std::vector< std::string > m_v_trigs16_cache_multiLep
bool passOQqualityDelayed(const xAOD::Photon &ph)
Helpers to ease the implementation of the pass Quality requirements.
@ numberOfPixelDeadSensors
number of dead pixel sensors crossed [unit8_t].
bool m_muHighPtExtraSmear
std::string m_photonTriggerName
Class describing a TrackParticle.
std::vector< std::string > veto
these patterns are anded
asg::AnaToolHandle< ICPJetUncertaintiesTool > m_TopTagjetUncertaintiesTool
std::string m_EigenvectorReductionB
double m_orBoostedElectronC2
const IParticle * getOriginalObject(const IParticle ©)
This function can be used to conveniently get a pointer back to the original object from which a copy...
@ BTag
The object is a b-tagging object.
float updateJvt(const xAOD::Jet &jet) const override
Calculate the updated JVT.
StatusCode MergeMuons(const xAOD::MuonContainer &muons, const std::vector< bool > &writeMuon, xAOD::MuonContainer *outputCol) const override final
std::vector< std::string > getListOfTriggers() const
std::vector< std::string > m_v_trigs22_cache_diLep
std::string m_orInputLabel
virtual StatusCode decorate(const xAOD::JetContainer &jetCont) const override
Decorate a jet collection without otherwise modifying it.
bool m_eleBaselineCrackVeto
std::string m_muIsoHighPt_WP
bool m_murequirepassedHighPtCuts
asg::AnaToolHandle< CP::IMuonEfficiencyScaleFactors > m_muonHighPtIsolationSFTool
std::string m_photonIdBaseline
int treatAsYear(const int runNumber=-1) const override final
setBGCode setTAP setLVL2ErrorBits bool
ToolHandleArray< CP::IMuonTriggerScaleFactors > m_muonTrigSFTools
asg::AnaToolHandle< IJetSelector > m_jetCleaningTool
float distance(const Amg::Vector3D &p1, const Amg::Vector3D &p2)
calculates the distance between two point in 3D space
StatusCode autoconfigurePileupRWTool(const std::string &PRWfilesDir="dev/PileupReweighting/share/", const std::string &PRWfileName="", bool usePathResolver=true, bool RPVLLmode=false, bool Combinedmode=false, const std::string &HFFilter="")
std::string m_BtagKeyOverride
std::string m_commonPRWFileMC23a
bool m_orDoMuonJetGhostAssociation
size_type size() const noexcept
Returns the number of elements in the collection.
asg::AnaToolHandle< CP::IIsolationCorrectionTool > m_isoCorrTool
std::string m_defaultTruthJets
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
ToolHandleArray< IAsgElectronEfficiencyCorrectionTool > m_elecTrigSFTools
std::vector< asg::AnaToolHandle< TauAnalysisTools::ITauEfficiencyCorrectionsTool > > m_tauTrigEffTool
Jet_v1 Jet
Definition of the current "jet version".
std::string m_TopDecorName
std::vector< std::string > m_v_trigs16_cache_singleEle
std::string m_commonPRWFileMC23d
bool empty() const noexcept
Returns true if the collection is empty.
const xAOD::TrackParticleContainer & GetInDetLargeD0Tracks(const EventContext &ctx) const override final
bool m_upstreamTriggerMatching
asg::AnaToolHandle< InDet::IInclusiveTrackFilterTool > m_LRTuncTool
virtual StatusCode varianceMET(xAOD::MissingETContainer *metCont, float avgmu, const std::string &jetTermName, const std::string &softTermName, const std::string &totalMETName)=0
std::string m_EG_corrFNList
SG::ConstAccessor< char > m_acc_photonId
bool match(std::string s1, std::string s2)
match the individual directories of two strings
bool IsSignalTau(const xAOD::TauJet &input, const float ptcut, const float etacut) const override final
asg::AnaToolHandle< IAsgPhotonEfficiencyCorrectionTool > m_photonIsolationSFTool
bool isTrigInTDT(std::scoped_lock< std::mutex > &lock, const std::string &triggerName) const
asg::AnaToolHandle< CP::IMuonSelectionTool > m_muonSelectionTool
bool m_useSigLepForIsoCloseByOR
virtual StatusCode tag(const xAOD::Jet &jet) const override
Decorate single jet with tagging info.
static SystematicRegistry & getInstance()
Get the singleton instance of the registry for the curren thread.
static std::string retrieveMetadata(const std::string &folder, const std::string &key, const ServiceHandle< StoreGateSvc > &inputMetaStore)
method that always returns as a string you can use from, e.g, pyROOT with evt = ROOT....
asg::AnaToolHandle< IEGammaAmbiguityTool > m_egammaAmbiguityTool
std::string m_prwActualMu2018File
bool pb(const std::string &taggername, double &value) const
double m_eleIsoHighPtThresh
double m_orBJetPtUpperThres
std::string m_trig2015combination_diPhoton
asg::AnaToolHandle< CP::IIsolationSelectionTool > m_isoTool
std::string m_JvtConfigRun3
CP::SystematicSet m_defaultSyst
bool IsBJetLoose(const xAOD::Jet &input) const override final
asg::AnaToolHandle< IWeightTool > m_pmgSHnjetWeighter