ATLAS Offline Software
Loading...
Searching...
No Matches
CP Namespace Reference

Select isolated Photons, Electrons and Muons. More...

Namespaces

namespace  detail
namespace  DetailSelectionExprParser
namespace  QGntrackSyst

Classes

class  AbsEtaAxisHandler
class  ApplyE2YFakeRate
class  ApplyFakeFactor
class  AsgClassificationDecorationAlg
 an algorithm for decorating classification using a tool based on the CP::IClassificationTool More...
class  AsgCutBookkeeperAlg
 an algorithm for dumping the CutBookkeeper metadata into a histogram More...
class  AsgEnergyDecoratorAlg
class  AsgEventScaleFactorAlg
 an algorithm for calculating per-event scale factors More...
class  AsgFlagSelectionTool
 an IAsgSelectionTool that cuts on char decorations More...
class  AsgLeptonTrackDecorationAlg
 an algorithm for decorating track variables on leptons More...
class  AsgLeptonTrackSelectionAlg
 an algorithm for performing track-vertex selection on leptons More...
class  AsgMaskSelectionTool
 an IAsgSelectionTool that cuts on int decorations with mask More...
class  AsgMassSelectionTool
 an IAsgSelectionTool that performs basic mass cut More...
class  AsgNumDecorationSelectionTool
 a templated IAsgSelectionTool that performs basic cut on numerical decorations (e.g., int, uint8_t) More...
class  AsgNumDecorationSelectionToolInt
class  AsgNumDecorationSelectionToolUInt8
class  AsgObjectScaleFactorAlg
 an algorithm for combining object scale factors More...
class  AsgOriginalObjectLinkAlg
 an algorithm for relinking a shallow copy with it's base container when this was not done originally More...
class  AsgPriorityDecorationAlg
 an algorithm for decorating priorities More...
class  AsgPtEtaSelectionTool
 an IAsgSelectionTool that performs basic pt and eta cut (with an optional eta gap) More...
class  AsgSelectionAlg
 an algorithm for calling IAsgSelectionTool More...
class  AsgShallowCopyAlg
 create a shallow copy of an input contsainer More...
class  AsgUnionPreselectionAlg
 an algorithm for turning a systematics depending selection decoration into a selection decoration without systematics More...
class  AsgUnionSelectionAlg
 an algorithm for selection an union of objects that pass at least one systematics More...
class  AsgViewFromSelectionAlg
 create a view container based on selection decorations More...
class  AsgxAODMetNTupleMakerAlg
 Algorithm that can write MET variables to a simple ntuple from xAOD objects/variables. More...
class  AsgxAODNTupleMakerAlg
 Algorithm that can write a simple ntuple from xAOD objects/variables. More...
class  AsymptMatrixTool
class  AxisHandler
class  AxisHandlerProvider
class  BadMuonVetoSystHandler
class  BaseFakeBkgTool
class  BaseLinearFakeBkgTool
class  BJetCalibrationAlg
 an algorithm to apply b-jet specific energy correction More...
class  BootstrapGenerator
 a class to generate random numbers with a unique seed More...
class  BootstrapGeneratorAlg
 an algorithm to compute per-event bootstrap replica weights More...
class  BTaggingEfficiencyAlg
 an algorithm for calling IBTaggingEfficiencyTool More...
class  BTaggingInformationDecoratorAlg
class  BTaggingScoresAlg
class  BTaggingTriggerEfficiencyAlg
 an algorithm for calling IBTaggingEfficiencyTool including b-jet trigger SF More...
class  BTaggingTriggerMatchingAlg
 an algorithm for calling IBTaggingEfficiencyTool including b-jet trigger SF More...
class  CalibratedEgammaProvider
class  CalibratedMuonsProvider
 decorates a muon collection with efficiency and scale factor More...
class  CalibratedTracksProvider
 decorates a track collection with efficiency and scale factor More...
class  ChargeAxisHandler
class  ChargeSelectorAlg
 an algorithm that selects an event if the event has leptons with opposite sign or same sign More...
class  CollectionContainer
 The collection container manages the time binning of a particular scale-factor map. More...
class  CopyNominalSelectionAlg
 an algorithm that copies the nominal selections over to all other object systematics More...
class  CorrectionCode
 Return value from object correction CP tools. More...
class  CorrectionTool
 Helper base class for "correction tools". More...
class  DileptonInvariantMassSelectorAlg
 an algorithm to select an event with 2-lepton mass compared to a specified value More...
class  DileptonInvariantMassWindowSelectorAlg
 an algorithm to select an event with 2-lepton mass compared to a specified window of values "lowMLL" and "highMLL". More...
class  DileptonOSSFInvariantMassWindowSelectorAlg
 an algorithm that vetos an event with two OS electrons or muons mass in a specific mass window More...
class  DiTauEfficiencyCorrectionsAlg
 an algorithm for calling IDiTauEfficiencyCorrectionsTool More...
class  DiTauExtraVariablesAlg
class  DiTauMassCalculatorAlg
class  DiTauSmearingAlg
 an algorithm for calling IDiTauSmearingTool More...
class  DiTauTruthMatchingAlg
 an algorithm for calling IDiTauTruthMatchingTool More...
class  dRJetAxisHandler
class  EfficiencyScaleFactor
class  EffiCollection
 The EffiCollection class handles the 5 different scale-factor maps binned in time. More...
class  EgammaCalibrationAndSmearingAlg
 an algorithm for calling CP::IEgammaCalibrationAndSmearingTool More...
class  EgammaCalibrationAndSmearingTool
class  EgammaCaloClusterEtaAlg
class  EgammaFSRForMuonsCollectorAlg
 Algorithm to collect photons and electrons which close in dR to muons as FSR candidates. More...
class  EgammaIsGoodOQSelectionTool
 Tool selecting e/gamma objects based on their object quality flags. More...
class  EgammaIsolationCorrectionAlg
 an algorithm for calling CP::IIsolationCorrectionTool More...
class  EgammaIsolationSelectionAlg
 an algorithm for calling IIsolationSelectionTool More...
class  EgammaSamplingPatternDecoratorAlg
 an algorithm decorating samplingPattern on e-gamma clusters More...
class  ElectronChargeEfficiencyCorrectionTool
class  ElectronEfficiencyCorrectionAlg
 an algorithm for calling IElectronEfficiencyCorrectionTool More...
class  ElectronLRTMergingAlg
 this wraps the Electron LRT collection merger in a CP algorithm More...
class  ElectronLRTOverlapRemovalTool
 Class-algorithm for electron particle collection merging. More...
class  ElectronSiHitDecAlg
 this decorates electrons with extra information from the track and cluster to avoid writing them out for SiHit electrons More...
class  EtaAxisHandler
class  EventCutFlowHistAlg
 an algorithm for dumping the an event-level cutflow More...
class  EventDecoratorAlg
 an algorithm for decorating EventInfo More...
class  EventFlagSelectionAlg
 an algorithm for selecting events by flag More...
class  EventSelectionByObjectFlagAlg
 an algorithm for selecting events based on object flags (e.g. More...
class  EventStatusSelectionAlg
 an algorithm for selecting events based on their error status More...
class  FakeBkgCalculatorAlg
class  FFJetSmearingTool
class  FJvtEfficiencyTool
class  FJvtSelectionTool
struct  FlowElementPtr
 For the flow elements we need a special derivate which also contains the weights. More...
class  HistHandler
class  HistHandler_TH1
class  HistHandler_TH2
class  HistHandler_TH2Poly
class  HistHandler_TH3
class  IClassificationTool
 a tool interface to classify particles into multiple categories by assigning them an unsigned integer More...
class  ICorrectionTool
class  IEfficiencyScaleFactorTool
 General interface for tools providing analysis efficiency scale factors. More...
class  IEgammaCalibrationAndSmearingTool
class  IElectronLRTOverlapRemovalTool
class  IFakeBkgSystDescriptor
 Auxiliary interface equiping the tools derived from IFakeBkgTool with helper methods to identify what the different SystematicVariations correspond to All the tools inherit from this interface. More...
class  IFakeBkgTool
 Top-level interface for the tools providing an estimate of the fake lepton background All the tools, each of them implementing a different method for the estimation, inherit from this interface. More...
class  IIsolationCloseByCorrectionTool
class  IIsolationCorrectionTool
class  IIsolationHelper
class  IIsolationLowPtPLVTool
class  IIsolationSelectionTool
class  IJetQGTagger
class  IJetTileCorrectionTool
 Interface for the tool correcting for dead Tile modules. More...
class  IJvtEfficiencyTool
class  IKinematicSystHandler
class  ILinearFakeBkgTool
 Interface for the tools providing an estimate of the fake lepton background, which are able to provide an event-by-event weight. More...
class  IMuonCalibIntScaleSmearTool
 class IMuonCalibIntTool More...
class  IMuonCalibIntTool
class  IMuonCalibrationAndSmearingTool
class  IMuonEfficiencyScaleFactors
class  IMuonLRTOverlapRemovalTool
class  IMuonSelectionTool
 Interface for (a) muon selector tool(s) More...
class  IMuonTriggerScaleFactors
class  InDetTrackBiasingAlg
 an algorithm for calling InDetTrackBiasingTool More...
class  InDetTrackExtraVarDecoratorAlg
class  InDetTrackSelectionAlg
 an algorithm for calling first the IInDetTrackSelectionTool and then the IInDetTrackTruthFilterTool More...
class  InDetTrackSmearingAlg
 an algorithm for calling InDetTrackSmearingTool More...
struct  inputScaleMapper
class  IOStatsAlg
class  IPhotonPointingTool
class  IPhotonVertexSelectionTool
class  IPileupReweightingTool
class  IReentrantSystematicsTool
 interface for all CP tools supporting systematic variations within a reentrant algorithm More...
class  ISelectionNameSvc
 the interface for the central systematics service More...
class  ISelectionReadAccessor
 a specialized accessor to read a selection decoration from/to an xAOD object More...
class  ISelectionWriteAccessor
 a specialized accessor to write a selection decoration to an xAOD object More...
class  IsoCloseByCaloDecorAlg
class  IsoCloseByCorrectionAlg
class  IsoCloseByCorrectionTrkSelAlg
class  IsoCorrectionTestHelper
class  IsolationCloseByCorrectionTool
class  IsolationCondition
class  IsolationConditionCombined
class  IsolationConditionFormula
class  IsolationConditionHist
class  IsolationCorrection
class  IsolationCorrectionTool
class  IsolationHelper
class  IsolationLowPtPLVTool
class  IsolationSelectionTool
class  IsolationWP
class  IsoVariableHelper
class  ISysHandleBase
 a basic interface for all systematics handles More...
class  ISystematicsSvc
 the interface for the central systematics service More...
class  ISystematicsTool
 Interface for all CP tools supporting systematic variations. More...
class  ITrackVertexAssociationTool
class  IWeightPFOTool
class  JetCalibAlg
 an algorithm for calling IJetCalibrationTool More...
class  JetCalibrationAlg
 an algorithm for calling IJetCalibrationTool More...
class  JetDecoratorAlg
 an algorithm for calling IJetUpdateJvt More...
class  JetFFSmearingAlg
 an algorithm for calling FFJetSmearingTool More...
class  JetGhostMergingAlg
 an algorithm for combining multiple ghost collections into one More...
class  JetGhostMuonAssociationAlg
 an algorithm for adding ghost muons to jets More...
class  JetModifierAlg
 an algorithm for calling IJetModifierTool More...
class  JetNGhostSelectorAlg
 an algorithm to select an event with a specified number of objects compared to a transverse momentum value More...
class  JetQGTagger
class  JetQGTaggerBDT
class  JetReclusteringAlg
class  JetSelectionAlg
 an algorithm for calling IJetSelector More...
class  JetTileCorrectionAlg
class  JetTileCorrectionTool
class  JetTruthTagAlg
 An algorithm for tagging reco-jets if they are close enough to a truth jet. More...
class  JetUncertaintiesAlg
 an algorithm for calling ICPJetUncertaintiesTool More...
class  JvtEfficiencyAlg
 an algorithm for calling IJEREfficiencyTool More...
class  JvtEfficiencyTool
class  JvtEfficiencyToolBase
class  JvtSelectionTool
class  JvtSelectionToolBase
class  JvtUpdateAlg
 an algorithm for calling IJetUpdateJvt More...
class  KinematicHistAlg
 an algorithm for dumping the kinematics of an IParticle container into histograms More...
class  LeptonSFCalculatorAlg
class  LhoodMM_tools
struct  LhoodMMFitInfo
class  MakeSystematicsVector
 This class handles turning the list of systematics into the actual list of nuisance parameter points to evaluate. More...
class  MCTCDecorationAlg
 an algorithm to unpack and decorate MCTruthClassifier Classification information More...
class  MetadataHistAlg
 Dump metadata information into a histogram. More...
class  MetBuilderAlg
 an algorithm for calling IMetCalibrationAndSmearingTool More...
class  MetMakerAlg
 an algorithm for calling IMETMaker More...
class  MetSignificanceAlg
 an algorithm for calling IMETSignificanceTool More...
class  MissingETPlusTransverseMassSelectorAlg
 an algorithm to select an event with MET + W-boson mass compared to a specified MET+MWT value More...
class  MissingETSelectorAlg
 an algorithm to select an event with missing E_T above or below a specified value More...
class  MuonCalibIntHighpTSmearTool
class  MuonCalibIntSagittaTool
class  MuonCalibIntScaleSmearTool
class  MuonCalibrationAndSmearingAlg
 an algorithm for calling IMuonCalibrationAndSmearingTool More...
class  MuonCalibTool
class  MuonCloseJetDecorationAlg
 Small algorithm to quickly write the jetDR decoration needed for isolation scale-factors to the muon. More...
class  MuonContainerMergingAlg
 this algorithm allows to merge multiple xAOD::MuonCollection objects into a single (view) collection. More...
class  MuonEfficiencyScaleFactorAlg
 an algorithm for calling IMuonEfficiencyScaleFactorTool More...
class  MuonEfficiencyScaleFactors
class  MuonIsolationAlg
 an algorithm for calling IMuonSelectionTool More...
class  MuonLRTMergingAlg
 this wraps the MCP LRT collection merger in a CP algorithm More...
class  MuonLRTOverlapRemovalTool
 Class-algorithm for muon particle collection merging. More...
class  MuonQualityUpdaterAlg
class  MuonScaleFactorTestAlg
 small test algorithm to quickly test/demonstrate the usage of the MuonEfficiencyCorrections code within athena More...
class  MuonSelectionAlg
class  MuonSelectionAlgV2
 an algorithm for calling IMuonSelectionTool More...
class  MuonSelectionTool
 Implementation of the muon selector tool. More...
class  MuonTriggerEfficiencyScaleFactorAlg
 an algorithm for calling IMuonTriggerScaleFactors More...
class  MuonTriggerScaleFactors
class  MVAInputEvaluator
class  MVATrackVertexAssociationTool
class  NJetDecoratorAlg
 an algorithm for decorating EventInfo More...
class  NLargeRJetMassWindowSelectorAlg
 an algorithm to select an event with N large-R jets with a mass compared to a specified window of values "lowMass" and "highMass". More...
class  NNJvtEfficiencyTool
class  NNJvtSelectionTool
class  NObjectMassSelectorAlg
 an algorithm to select an event with a specified number of objects compared to an invariant mass value More...
class  NObjectPtSelectorAlg
 an algorithm to select an event with a specified number of objects compared to a transverse momentum value More...
class  ObjectCutFlowHistAlg
 an algorithm for dumping the object-level cutflow More...
class  OutOfValidityEventHelper
 a helper to translate a CP::CorrectionCode into a ::StatusCode More...
class  OutOfValidityHelper
 a helper to translate a CP::CorrectionCode into a ::StatusCode More...
class  OverlapRemovalAlg
 an algorithm for calling IPileupReweightingTool More...
class  ParticleLevelChargeDecoratorAlg
class  ParticleLevelIsolationAlg
class  ParticleLevelJetsAlg
class  ParticleLevelMissingETAlg
class  ParticleLevelOverlapRemovalAlg
class  ParticleLevelPtEtaPhiDecoratorAlg
class  PDFinfoAlg
class  PDFReweightAlg
 An algorithm for the PDF reweighting. More...
class  PhiAxisHandler
class  PhotonEfficiencyCorrectionAlg
 an algorithm for calling IPhotonEfficiencyCorrectionTool More...
class  PhotonExtraVariablesAlg
class  PhotonOriginCorrectionAlg
 an algorithm for correctiong the origin of a photon wrt the Primary Vertex More...
class  PhotonPointingTool
 Implementation for the photon pointing tool. More...
class  PhotonShowerShapeFudgeAlg
 an algorithm for calling IElectronPhotonShowerShapeFudgeTool for photons More...
class  PhotonVertexSelectionAlg
class  PhotonVertexSelectionTool
 Implementation for the photon vertex selection tool. More...
class  PileupReweightingAlg
 an algorithm for calling IPileupReweightingTool More...
class  PileupReweightingProvider
class  PileupReweightingTool
 Implementation of the PileupReweighting tool. More...
class  PMGTruthWeightAlg
 an algorithm for calling IPMGTruthWeightTool More...
class  PrimodialPtSystematic
 The PrimodialPtSystematic was the former PtKinematicSystHandler. More...
class  PrintToolConfigAlg
class  PtAxisHandler
class  PtKinematicSystHandler
 Z->mumu reconstruction scale-factors are delivered in eta-phi maps integrating out any pt-dependence. More...
class  ReclusteredJetCalibrationAlg
 an algorithm for calibration reclustered large-R jets More...
class  RunNumberSelectorAlg
 an algorithm to select an event with 2-lepton mass compared to a specified value More...
class  SaveFilterAlg
 an algorithm to turn event selections into filters for cutflow saving More...
class  SecVertexTruthMatchAlg
 Algorithm to perform truth matching on secondary vertices. More...
class  SelectionAccessorExprBase
 Serves as the base for a few logical expression classes. More...
class  SelectionAccessorExprNot
 SelectionAccessor which implements a logical NOT. More...
class  SelectionAccessorExprOr
 Implements a SelectionAccessor that performs a binary logical OR. More...
class  SelectionAccessorList
 the SelectionAccesor for list of selection decorations More...
class  SelectionAccessorReadSys
 the SelectionAccesor for reading systematically varied decorations More...
class  SelectionExprParser
 Public interface for the expression parsing facility. More...
class  SelectionNameSvc
 the canonical implementation of ISelectionNameSvc More...
class  SelectionReadAccessorBits
 the SelectionAccesor for standard CP algorithm selection decorations encoded as bits More...
class  SelectionReadAccessorChar
 the SelectionAccesor for OR tool selection decorations More...
class  SelectionReadAccessorInvert
 the SelectionAccesor for inverting a selection decoration More...
class  SelectionReadAccessorNull
 a SelectionAccesor that can be used instead of a nullptr More...
class  SelectionReadHandle
 a data handle for reading selection properties from objects More...
class  SelectionWriteAccessorBits
 the SelectionAccesor for standard CP algorithm selection decorations encoded as bits More...
class  SelectionWriteAccessorChar
 the SelectionAccesor for OR tool selection decorations More...
class  SelectionWriteAccessorInvert
 the SelectionAccesor for inverting a selection decoration More...
class  SelectionWriteAccessorNull
 a SelectionAccesor that can be used instead of a nullptr More...
class  SelectionWriteAccessorSys
 the SelectionAccesor for reading systematically varied decorations More...
class  ShowerDepthUtil
struct  SortedObjPtr
 Small helper struct to have sets of particle pointers sorted by pt. More...
class  SSVWeightsAlg
class  string
 STL class. More...
struct  strObj
class  SumNLeptonPtSelectorAlg
 an algorithm to select an event with a specified number of electrons, muons or taus compared to a transverse momentum value More...
class  SysCopyHandle
 a systematics data handle that will either copy the input object or act like an update handle More...
class  SysFilterReporter
 a systematics aware filter reporter More...
class  SysFilterReporterCombiner
 a reporter class that combines the filter decisions for all systematics More...
class  SysFilterReporterParams
 the properties and persistent data for systematics aware filter reporters More...
class  SysHandleArray
 Vector-like class for systematic handles which interact with decorations. More...
class  SysListDumperAlg
 Dump systematics names into a histogram. More...
class  SysListHandle
 a class managing the property to configure the list of systematics to process More...
class  SysReadDecorHandle
 a data handle for reading systematics varied input data More...
class  SysReadHandle
 a data handle for reading systematics varied input data More...
class  SysReadSelectionHandle
 a data handle for reading systematically varied selection properties from objects More...
class  SystDiTauUnioniserAlg
class  SystElectronUnioniserAlg
class  SystematicRegistry
 This module implements the central registry for handling systematic uncertainties with CP tools. More...
class  SystematicsCache
 helper class to cache systematics varied calibration constants inside a ISystematicsTool or IRentrantSystematicsTool More...
class  SystematicSet
 Class to wrap a set of SystematicVariations. More...
struct  SystematicSetHash
 SystematicSet hash function for general use. More...
class  SystematicsSvc
 the canonical implementation of ISystematicsSvc More...
class  SystematicsTool
 Base class for CP tools providing systematic variations. More...
class  SystematicVariation
class  SystJetUnioniserAlg
class  SystMuonUnioniserAlg
class  SystObjectLinkerAlg
class  SystObjectUnioniserAlg
class  SystPhotonUnioniserAlg
class  SysTruthWeightAlg
 an algorithm for calling ISysTruthWeightTool More...
class  SystTauUnioniserAlg
class  SysWriteDecorHandle
 a data handle for reading systematics varied input data More...
class  SysWriteHandle
 a data handle for writing systematics varied input data More...
class  SysWriteSelectionHandle
 a data handle for writing systematically varied selection properties from objects More...
class  TauCombineMuonRMTausAlg
class  TauEfficiencyCorrectionsAlg
 an algorithm for calling ITauEfficiencyCorrectionsTool More...
class  TauExtraVariablesAlg
class  TauSmearingAlg
 an algorithm for calling ITauSmearingTool More...
class  TauTruthDecorationsAlg
 an algorithm to decorate truth matched information More...
class  TauTruthMatchingAlg
 an algorithm for calling ITauTruthMatchingTool More...
class  TElectronTestAlg
class  TestIsolationAthenaAlg
class  TestIsolationCloseByCorrAlg
class  TestMCASTTool
class  TPileupReweighting
class  TrackParticleMergerAlg
 Algorithm to merge multiple track collections into one. More...
class  TrackVertexAssociationTool
 General track-vertex association tool. More...
class  TransverseMassSelectorAlg
 an algorithm to select an event with W-boson mass compared to a specified MWT value More...
class  TreeFillerAlg
 Algorithm that writes events to a tree filled by preceding algorithms to fill. More...
class  TreeMakerAlg
 Algorithm that creates an empty tree for subsequent algorithms to fill. More...
class  TrigEventSelectionAlg
class  TrigGlobalEfficiencyAlg
class  TrigMatchingAlg
 an algorithm to provide and decorate trigger matching for leptons Currently only single leg triggers are supported. More...
class  TrigPrescalesAlg
 an algorithm for retrieving trigger prescales More...
class  TTVAClosureSysHandler
 Extra systematic assigned for the TTVA non-closure. More...
class  UndefinedAxisHandler
class  VertexSelectionAlg
 Algorithm meant to select events with "some" vertex requirements. More...
class  VGammaORAlg
class  WeightPFOTool
class  xAODWriterAlg
 Algorithm writing an xAOD output file. More...
class  XbbEfficiencyAlg
 an algorithm for calling IBTaggingEfficiencyJsonTool More...
class  XbbInformationDecoratorAlg

Typedefs

typedef ElementLink< xAOD::IParticleContaineriplink_t
typedef uint32_t SelectionType
 the type for selection decorations that are meant to hold a asg::AcceptData
using SysReadSelectionHandleArray = SysHandleArray<SysReadSelectionHandle>
typedef std::vector< CP::SystematicSetSysListType
 the type for the systematics list in the event store
template<typename T>
using SysReadDecorHandleArray = SysHandleArray<SysReadDecorHandle<T>>
template<typename T>
using SysWriteDecorHandleArray = SysHandleArray<SysWriteDecorHandle<T>>
using CharAccessor = SG::AuxElement::ConstAccessor<char>
using CharDecorator = SG::AuxElement::Decorator<char>
using FloatAccessor = SG::AuxElement::ConstAccessor<float>
using FloatDecorator = SG::AuxElement::Decorator<float>
using SelectionAccessor = std::unique_ptr<CharAccessor>
using SelectionDecorator = std::unique_ptr<CharDecorator>
using BoolDecorator = SG::AuxElement::Decorator<bool>
using BoolAccessor = SG::AuxElement::ConstAccessor<bool>
using IntDecorator = SG::AuxElement::Decorator<int>
using IntAccessor = SG::AuxElement::ConstAccessor<int>
using ShortDecorator = SG::AuxElement::Decorator<short>
using ShortAccessor = SG::AuxElement::ConstAccessor<short>
using IsoType = xAOD::Iso::IsolationType
using IsoVector = std::vector<IsoType>
using CaloClusterPtr = SortedObjPtr<xAOD::CaloCluster>
using TrackPtr = SortedObjPtr<xAOD::TrackParticle>
using TrackSet = std::set<TrackPtr>
using ClusterSet = std::set<CaloClusterPtr>
using PflowSet = std::set<FlowElementPtr>
using UnorderedClusterSet = std::unordered_set<const xAOD::CaloCluster*>
using UnorderedContainerSet = std::unordered_set<const SG::AuxVectorData*>
typedef std::unique_ptr< IsoVariableHelperIsoHelperPtr
using caloDecorNames = IsolationCloseByCorrectionTool::caloDecorNames
typedef std::shared_ptr< TH1 > TH1_Ptr

Enumerations

enum class  OutOfValidityAction { ABORT , WARNING , SILENT }
 the action to perform on encountering an OutOfValidityRange in OutOfValidityHelper More...
enum  MuonEfficiencyType {
  Undefined = 0 , Reco = 1 , TTVA = 2 , Iso = 3 ,
  BadMuonVeto = 4
}
enum  QGSystApplied {
  QG_NONE , QG_TRACKEFFICIENCY , QG_TRACKFAKES , QG_NCHARGEDTOPO ,
  QG_NCHARGEDEXP_UP , QG_NCHARGEDME_UP , QG_NCHARGEDPDF_UP , QG_NCHARGEDEXP_DOWN ,
  QG_NCHARGEDME_DOWN , QG_NCHARGEDPDF_DOWN
}
enum  PFO_JetMETConfig_inputScale { EM = 0 , LC }
enum  PFO_JetMETConfig_charge { neutral = 0 , charged = 1 , all = 2 }

Functions

StatusCode makeSelectionReadAccessor (const std::string &expr, std::unique_ptr< ISelectionReadAccessor > &accessor, bool defaultToChar=false)
 make the ISelectionReadAccessor for the given name
StatusCode makeSelectionReadAccessorVar (const std::string &name, std::unique_ptr< ISelectionReadAccessor > &accessor, bool defaultToChar=false)
 Produces a simple ISelectionReadAccessor accessing the given decoration.
StatusCode makeSelectionWriteAccessor (const std::string &name, std::unique_ptr< ISelectionWriteAccessor > &accessor, bool defaultToChar=false)
 Produces a simple ISelectionWriteAccessor accessing the given decoration.
SelectionType selectionFromBool (bool accept)
 the selection decoration made from the given boolean (true = accept)
SelectionType selectionFromAccept (const asg::AcceptData &accept)
 the selection decoration made from the given AcceptData object
constexpr SelectionType selectionAccept ()
 the selection decoration to apply for objects that are selected
constexpr SelectionType selectionReject ()
 the selection decoration to apply for objects that are rejected
constexpr float invalidScaleFactor ()
 the decoration value to use if there is no valid scale factor decoration
constexpr float invalidEfficiency ()
 the decoration value to use if there is no valid efficiency decoration
constexpr float invalidTriggerPrescale ()
 the decoration value to use if there is no valid trigger prescale information
std::size_t hash_value (const SystematicSet &)
 Hash function specifically for boost::hash.
std::vector< CP::SystematicSetmake_systematics_vector (const SystematicSet &systematics)
 utility functions for working with systematics
std::ostream & operator<< (std::ostream &str, const CP::SystematicVariation &obj)
std::unique_ptr< egGain::GainToolgainToolFactory (egEnergyCorr::ESModel model)
std::string egammaMVAToolFolder (egEnergyCorr::ESModel model)
std::unique_ptr< egammaLayerRecalibToolegammaLayerRecalibToolFactory (egEnergyCorr::ESModel model, int enableSacc)
bool use_intermodule_correction (egEnergyCorr::ESModel model)
bool use_phi_uniform_correction (egEnergyCorr::ESModel model)
bool is_after_run1 (egEnergyCorr::ESModel model)
const xAOD::VertexgetVertexFromTrack (const xAOD::TrackParticle *track, const xAOD::VertexContainer *vertices)
static const SystematicVariation NNJvtEfficiencyUp ("JET_NNJvtEfficiency", 1)
static const SystematicVariation NNJvtEfficiencyDown ("JET_NNJvtEfficiency", -1)
static const SystematicVariation fJvtEfficiencyUp ("JET_fJvtEfficiency", 1)
static const SystematicVariation fJvtEfficiencyDown ("JET_fJvtEfficiency", -1)
static const SystematicVariation JvtEfficiencyUp ("JET_JvtEfficiency", 1)
static const SystematicVariation JvtEfficiencyDown ("JET_JvtEfficiency", -1)
static std::string EfficiencyTypeName (CP::MuonEfficiencyType M)
static CP::MuonEfficiencyType EfficiencyType (const std::string &S)
std::string EraseWhiteSpaces (std::string str)
 Removes beginning and trailing white spaces from a string.
std::string ReplaceExpInString (std::string str, const std::string &exp, const std::string &rep)
 Replaces all expressions an string by something else.
std::string LowerString (const std::string &str)
 Lowers all characters in the string.
std::string RandomString (size_t s)
 Generates a random string consisting of capital & small letters + numbers.
std::unique_ptr< TH1 > clone (TH1 *H)
 Clones a TH1 and handles the ownership then to a unique_ptr.
bool isOverflowBin (const TH1 *Histo, int bin)
 Checks whether a global bin number belongs to over/underflow or is in the bulk.
 ANA_MSG_SOURCE (ShowerDepthUtilMessaging, "CP::ShowerDepthUtil")
template<class T>
bool operator== (const DataVector< T > &a, const DataVector< T > &b)
 Vector equality comparison.
template<class T>
bool operator== (const DataVector< T > &a, const DataVector< T > &b)
 Vector equality comparison.

Variables

constexpr float MinClusterEnergy = 100.
constexpr float MeVtoGeV = 1.e-3
static const ShortAccessor s_acc_TrackJetNTrack ("PromptLeptonInput_TrackJetNTrack")
static const FloatAccessor s_acc_DRlj ("PromptLeptonInput_DRlj")
static const FloatAccessor s_acc_PtRel ("PromptLeptonInput_PtRel")
static const FloatAccessor s_acc_PtFrac ("PromptLeptonInput_PtFrac")
static const FloatAccessor s_acc_topoetcone20 ("topoetcone20")
static const FloatAccessor s_acc_ptvarcone20 ("ptvarcone20")
static const FloatAccessor s_acc_ptvarcone30 ("ptvarcone30")
static const FloatDecorator s_dec_iso_PLT ("LowPtPLV")
constexpr int N_VARIABLES = 6
static const FloatAccessor acc_assocClustEta {IsolationCloseByCorrectionTool::caloDecors()[0]}
static const FloatAccessor acc_assocClustPhi {IsolationCloseByCorrectionTool::caloDecors()[1]}
static const FloatAccessor acc_assocClustEne {IsolationCloseByCorrectionTool::caloDecors()[2]}
static const CharAccessor acc_assocCaloIsDec {IsolationCloseByCorrectionTool::caloDecors()[3]}
static const FloatAccessor acc_assocPflowEta {IsolationCloseByCorrectionTool::pflowDecors()[0]}
static const FloatAccessor acc_assocPflowPhi {IsolationCloseByCorrectionTool::pflowDecors()[1]}
static const FloatAccessor acc_assocPflowEne {IsolationCloseByCorrectionTool::pflowDecors()[2]}
static const CharAccessor acc_assocPflowIsDec {IsolationCloseByCorrectionTool::pflowDecors()[3]}
static const FloatDecorator dec_assocCaloEta {IsolationCloseByCorrectionTool::caloDecors()[0]}
static const FloatDecorator dec_assocCaloPhi {IsolationCloseByCorrectionTool::caloDecors()[1]}
static const FloatDecorator dec_assocCaloEne {IsolationCloseByCorrectionTool::caloDecors()[2]}
static const CharDecorator dec_assocCaloIsDec {IsolationCloseByCorrectionTool::caloDecors()[3]}
static const FloatDecorator dec_assocPflowEta {IsolationCloseByCorrectionTool::pflowDecors()[0]}
static const FloatDecorator dec_assocPflowPhi {IsolationCloseByCorrectionTool::pflowDecors()[1]}
static const FloatDecorator dec_assocPflowEne {IsolationCloseByCorrectionTool::pflowDecors()[2]}
static const CharDecorator dec_assocPflowIsDec {IsolationCloseByCorrectionTool::pflowDecors()[3]}
const double GeV = 1000.
static const double muon_barrel_endcap_boundary = 1.05
static const SG::Decorator< unsigned intdec_status ("TileStatus")
static const SG::Decorator< floatdec_ptraw ("Ptraw")

Detailed Description

Select isolated Photons, Electrons and Muons.

Simple class to weight charged PFO for jets and met.

Simple class to retrieve PFO for jets and met in the two possible configurations we provide.

For information, see the Twiki: https://twiki.cern.ch/twiki/bin/viewauth/AtlasProtected/FFJetSmearingTool.

Utility class to collect the separate histos for Calo, Central and High Eta muon SF.

Helper enumeration for systematics study.

Framework include(s):

Namespace for generic Combined Performance code.

rationale: standard comparison operator for use by std::set

Simple algorithm to check the performance of the IsolationCloseByCorrectionTool.

The algorithm reads in muons, electrons and photons and runs the closeBy isolation correction tool on them.

The algorithm selects Inner detector tracks from leptons that are poluting the isolation of other close-by leptons.

Author
Tadej Novak tadej.nosp@m.@cer.nosp@m.n.ch
Tadej Novak
Baptiste Ravina bapti.nosp@m.ste..nosp@m.ravin.nosp@m.a@ce.nosp@m.rn.ch
Teng Jian Khoo
Nils Krumnack
RD Schaffer
Baptiste Ravina
Miha Muskinja
Nello Bruscino
Zhengcheng Tao
Michael Holzbock
Nils Krumnack
Baptiste Ravina
Lucas Cremer
Yi Yu yiyu@.nosp@m.cern.nosp@m..ch, Xinzhe Liu, Thomas Strebler thoma.nosp@m.s.st.nosp@m.reble.nosp@m.r@ce.nosp@m.rn.ch
Nils Abicht
Binbin Dong
Diego Baron
Thomas Strebler
Hagen Möbius, hagen.nosp@m..mob.nosp@m.ius@c.nosp@m.ern..nosp@m.ch
P-A Delsart

This jet alg is meant to replace the JetCalibrationAlg. The version here simply duplicates JetCalibrationAlg but using the new JetCalibTool instead of JetCalibrationTool. The 2 versions will co-exist while transitionning from the old calib tool to the new after which the old versions will be removed

Author
Jackson Burzynski
Tomas Dado
P-A Delsart
Max Goblirsch
Jon Burr
Antonio De Maria
Christian Grefe
Qichen Dong
Daniel Werner
Marco Rimoldi
John Morris john..nosp@m.morr.nosp@m.is@ce.nosp@m.rn.c.nosp@m.h
Revision
764207
Date
2016-07-25 20:16:03 +0200 (Mon, 25 Jul 2016)

The tracks can be either written to a VIEW_ELEMENTS container or marked as passed for the track particle thinning of a particular derivation *

The algorithm writes TTrees that can be analyzed by the python scripts in the package. The information written are – particle four momentum – pt of the assocaited ID track (if available) – clusterEta/clusterphi of the associated cluster (if available) – isolation variables before and after the correction

EDM include(s): Local include(s):

Typedef Documentation

◆ BoolAccessor

◆ BoolDecorator

◆ CaloClusterPtr

◆ caloDecorNames

◆ CharAccessor

◆ CharDecorator

◆ ClusterSet

◆ FloatAccessor

◆ FloatDecorator

◆ IntAccessor

◆ IntDecorator

◆ iplink_t

◆ IsoHelperPtr

typedef std::unique_ptr<IsoVariableHelper> CP::IsoHelperPtr

Definition at line 18 of file IsoVariableHelper.h.

◆ IsoType

◆ IsoVector

◆ PflowSet

◆ SelectionAccessor

◆ SelectionDecorator

◆ SelectionType

the type for selection decorations that are meant to hold a asg::AcceptData

This is matched to the number of bits in a AcceptData, since that holds 32 bits, so do we.

Definition at line 26 of file SelectionHelpers.h.

◆ ShortAccessor

◆ ShortDecorator

◆ SysListType

typedef std::vector<CP::SystematicSet> CP::SysListType

the type for the systematics list in the event store

For now this is just a vector of SystematicSet, but I made a typedef for this as I am not sure this will necessarily be performant in all situations. This way at least I will get compilation errors if I change it.

Definition at line 30 of file SysListType.h.

◆ SysReadDecorHandleArray

Definition at line 135 of file SysReadDecorHandle.h.

◆ SysReadSelectionHandleArray

◆ SysWriteDecorHandleArray

Definition at line 148 of file SysWriteDecorHandle.h.

◆ TH1_Ptr

typedef std::shared_ptr<TH1> CP::TH1_Ptr

Definition at line 28 of file MuonTriggerScaleFactors.h.

◆ TrackPtr

◆ TrackSet

◆ UnorderedClusterSet

◆ UnorderedContainerSet

Enumeration Type Documentation

◆ MuonEfficiencyType

Enumerator
Undefined 
Reco 
TTVA 
Iso 
BadMuonVeto 

Definition at line 12 of file MuonEfficiencyType.h.

12 {
13 Undefined = 0,
14 Reco = 1,
15 TTVA = 2,
16 Iso = 3,
17 BadMuonVeto = 4
18 };
Namespace holding the IsolationType enumeration.

◆ OutOfValidityAction

enum class CP::OutOfValidityAction
strong

the action to perform on encountering an OutOfValidityRange in OutOfValidityHelper

This is in addition to possibly setting a selection decoration (if that has been configured.

This is not a member enum of OutOfValidityHelper to void problems with member enums in dictionary generation, etc.

Enumerator
ABORT 

print an error message and return a failure status code (triggering an abort)

This is currently the default, as it forces users to think about what they want to do with OutOfValidityRange results. That is fairly safe, as most tools don't actually report OutOfValidityRange and we don't want to add a lot of meaningless selection decorations to each object.

WARNING 

print a warning message and return a success status code.

This should only be used if OutOfValidity is a rare event, or otherwise it will completely clobber the log file.

SILENT 

don't print anything and return success

This should (normally) be combined with a selection decoration that records OutOfValidity results, allowing to retrieve that information subsequently.

Definition at line 35 of file OutOfValidityHelper.h.

36 {
45 ABORT,
46
52 WARNING,
53
59 SILENT
60 };
@ SILENT
don't print anything and return success
@ ABORT
print an error message and return a failure status code (triggering an abort)

◆ PFO_JetMETConfig_charge

◆ PFO_JetMETConfig_inputScale

◆ QGSystApplied

Enumerator
QG_NONE 
QG_TRACKEFFICIENCY 
QG_TRACKFAKES 
QG_NCHARGEDTOPO 
QG_NCHARGEDEXP_UP 
QG_NCHARGEDME_UP 
QG_NCHARGEDPDF_UP 
QG_NCHARGEDEXP_DOWN 
QG_NCHARGEDME_DOWN 
QG_NCHARGEDPDF_DOWN 

Definition at line 22 of file JetQGTagger.h.

22 {
23 QG_NONE,
33 };
@ QG_TRACKFAKES
Definition JetQGTagger.h:25
@ QG_NONE
Definition JetQGTagger.h:23
@ QG_NCHARGEDTOPO
Definition JetQGTagger.h:26
@ QG_TRACKEFFICIENCY
Definition JetQGTagger.h:24
@ QG_NCHARGEDME_UP
Definition JetQGTagger.h:28
@ QG_NCHARGEDEXP_DOWN
Definition JetQGTagger.h:30
@ QG_NCHARGEDME_DOWN
Definition JetQGTagger.h:31
@ QG_NCHARGEDPDF_DOWN
Definition JetQGTagger.h:32
@ QG_NCHARGEDPDF_UP
Definition JetQGTagger.h:29
@ QG_NCHARGEDEXP_UP
Definition JetQGTagger.h:27

Function Documentation

◆ ANA_MSG_SOURCE()

CP::ANA_MSG_SOURCE ( ShowerDepthUtilMessaging ,
"CP::ShowerDepthUtil"  )

◆ clone()

std::unique_ptr< TH1 > CP::clone ( TH1 * H)

Clones a TH1 and handles the ownership then to a unique_ptr.

Definition at line 43 of file PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonEfficiencyCorrections/Root/UtilFunctions.cxx.

43 {
44 if (!H){
45 Warning("clone()", "Nullptr given... Segmentation ahead");
46 return std::unique_ptr<TH1>();
47 }
48 // We do not really care about the name of the histogram at this stage... At only needs
49 // to be cloned
50 std::unique_ptr<TH1> ptr ( dynamic_cast<TH1*>(H->Clone(RandomString(10).c_str())));
51 ptr->SetDirectory(0);
52 return ptr;
53 }
#define H(x, y, z)
Definition MD5.cxx:114
std::string RandomString(size_t s)
Generates a random string consisting of capital & small letters + numbers.

◆ EfficiencyType()

CP::MuonEfficiencyType CP::EfficiencyType ( const std::string & S)
inlinestatic

Definition at line 26 of file MuonEfficiencyType.h.

26 {
27 if (S == "RECO") return CP::MuonEfficiencyType::Reco;
28 if (S == "TTVA") return CP::MuonEfficiencyType::TTVA;
29 if (S == "ISO") return CP::MuonEfficiencyType::Iso;
30 if (S == "BADMUON") return CP::MuonEfficiencyType::BadMuonVeto;
32 }

◆ EfficiencyTypeName()

std::string CP::EfficiencyTypeName ( CP::MuonEfficiencyType M)
inlinestatic

Definition at line 19 of file MuonEfficiencyType.h.

19 {
20 if (M == CP::MuonEfficiencyType::Reco) return "RECO";
21 if (M == CP::MuonEfficiencyType::TTVA) return "TTVA";
22 if (M == CP::MuonEfficiencyType::Iso) return "ISO";
23 if (M == CP::MuonEfficiencyType::BadMuonVeto) return "BADMUON";
24 return "Unknown";
25 }

◆ egammaLayerRecalibToolFactory()

std::unique_ptr< egammaLayerRecalibTool > CP::egammaLayerRecalibToolFactory ( egEnergyCorr::ESModel model,
int enableSacc )

Definition at line 140 of file EgammaCalibrationAndSmearingTool.cxx.

141 {
142 std::string tune = "";
143 switch (model) {
147 tune = "2011_alt_with_layer2";
148 break;
161 tune = "2012_alt_with_layer2";
162 break;
165 tune = "es2017_20.7_improved";
166 break;
168 tune = "es2017_20.7_final";
169 break;
176 tune = "es2017_21.0_v0";
177 break;
179 tune = "es2018_21.0_v0";
180 break;
182 tune = "es2022_22.0_Precision";
183 break;
185 tune = "es2022_22.0_Precision_v1";
186 break;
188 tune = "es2024_run3_extrapolate_v0";
189 break;
190 default:
191 return nullptr;
192 }
193 return std::make_unique<egammaLayerRecalibTool>(tune, enableSacc);
194}

◆ egammaMVAToolFolder()

std::string CP::egammaMVAToolFolder ( egEnergyCorr::ESModel model)

Definition at line 86 of file EgammaCalibrationAndSmearingTool.cxx.

86 {
87 std::string folder;
88 switch (model) {
92 folder = "egammaMVACalib/v1";
93 break;
95 folder = "egammaMVACalib/v1";
96 break;
101 folder = "egammaMVACalib/offline/v3";
102 break;
105 folder = "egammaMVACalib/offline/v3_E4crack_bis";
106 break;
114 folder = "egammaMVACalib/offline/v4.0";
115 break;
124 folder = "egammaMVACalib/offline/v7";
125 break;
128 folder = "egammaMVACalib/offline/v9";
129 break;
131 folder = "egammaMVACalib/offline/v10";
132 break;
133 default:
134 folder = "";
135 }
136
137 return folder;
138}

◆ EraseWhiteSpaces()

std::string CP::EraseWhiteSpaces ( std::string str)

Removes beginning and trailing white spaces from a string.

Definition at line 31 of file PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonEfficiencyCorrections/Root/UtilFunctions.cxx.

31 {
32 str.erase(std::remove(str.begin(), str.end(), '\t'), str.end());
33 if (str.size() > 0 && str[0] == ' ') return EraseWhiteSpaces(str.substr(1, str.size()));
34 if (str.size() > 0 && str.find(" ") == str.size() - 1) return EraseWhiteSpaces(str.substr(0, str.size() - 1));
35 return str;
36 }
std::string EraseWhiteSpaces(std::string str)
Removes beginning and trailing white spaces from a string.
DataModel_detail::iterator< DVL > remove(typename DataModel_detail::iterator< DVL > beg, typename DataModel_detail::iterator< DVL > end, const T &value)
Specialization of remove for DataVector/List.

◆ fJvtEfficiencyDown()

const SystematicVariation CP::fJvtEfficiencyDown ( "JET_fJvtEfficiency" ,
- 1 )
static

◆ fJvtEfficiencyUp()

const SystematicVariation CP::fJvtEfficiencyUp ( "JET_fJvtEfficiency" ,
1  )
static

◆ gainToolFactory()

std::unique_ptr< egGain::GainTool > CP::gainToolFactory ( egEnergyCorr::ESModel model)

Definition at line 45 of file EgammaCalibrationAndSmearingTool.cxx.

45 {
46 switch (model) {
59 const std::string gain_filename1 = PathResolverFindCalibFile(
60 "ElectronPhotonFourMomentumCorrection/v8/FunctionsTO.root");
61 const std::string gain_filename2 = PathResolverFindCalibFile(
62 "ElectronPhotonFourMomentumCorrection/v8/FunctionsG_all.root");
63 return std::make_unique<egGain::GainTool>(gain_filename1, gain_filename2);
64 }
80 return nullptr;
81 default:
82 return nullptr;
83 }
84}
std::string PathResolverFindCalibFile(const std::string &logical_file_name)

◆ getVertexFromTrack()

const xAOD::Vertex * CP::getVertexFromTrack ( const xAOD::TrackParticle * track,
const xAOD::VertexContainer * vertices )

Definition at line 30 of file PhotonVertexSelectionTool.cxx.

32 {
33 const xAOD::Vertex* vtxWithLargestWeight = nullptr;
34 float largestWeight = 0;
35
36 for (const auto *vtx : *vertices) {
37 //Search for vertex linked to this track
38 const auto& trkLinks=vtx->trackParticleLinks();
39 const size_t nTrackLinks=trkLinks.size();
40 for (unsigned i=0;i<nTrackLinks;++i) {
41 if (trkLinks[i].isValid() && *(trkLinks[i]) == track) {//ptr comparison
42 if( vtx->trackWeights()[i] > largestWeight ){
43 vtxWithLargestWeight = vtx;
44 largestWeight = vtx->trackWeights()[i];
45 }
46 }
47 }
48 }
49
50 return vtxWithLargestWeight;
51 }
bool isValid(const T &p)
Av: we implement here an ATLAS-sepcific convention: all particles which are 99xxxxx are fine.
Definition AtlasPID.h:878
const std::vector< float > & trackWeights() const
Get all the track weights.
Vertex_v1 Vertex
Define the latest version of the vertex class.

◆ hash_value()

std::size_t CP::hash_value ( const SystematicSet & sysSet)

Hash function specifically for boost::hash.

Definition at line 319 of file SystematicSet.cxx.

320 {
321 return sysSet.hash();
322 }
std::size_t hash() const
returns: hash value for the joined string.

◆ invalidEfficiency()

float CP::invalidEfficiency ( )
constexpr

the decoration value to use if there is no valid efficiency decoration

Definition at line 35 of file SysWriteDecorHandle.h.

35{return -1;}

◆ invalidScaleFactor()

float CP::invalidScaleFactor ( )
constexpr

the decoration value to use if there is no valid scale factor decoration

Definition at line 31 of file SysWriteDecorHandle.h.

31{return -1;}

◆ invalidTriggerPrescale()

float CP::invalidTriggerPrescale ( )
constexpr

the decoration value to use if there is no valid trigger prescale information

Definition at line 22 of file TrigPrescalesAlg.h.

22{return -1;}

◆ is_after_run1()

bool CP::is_after_run1 ( egEnergyCorr::ESModel model)

Definition at line 244 of file EgammaCalibrationAndSmearingTool.cxx.

244 {
245 switch (model) {
255 return false;
280 return true;
281 case egEnergyCorr::UNDEFINED: // TODO: find better logic
282 return false;
283 }
284 assert(false);
285 return false;
286}

◆ isOverflowBin()

bool CP::isOverflowBin ( const TH1 * Histo,
int bin )

Checks whether a global bin number belongs to over/underflow or is in the bulk.

Definition at line 54 of file PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonEfficiencyCorrections/Root/UtilFunctions.cxx.

54 {
55 int x(-1), y(-1), z(-1);
56 if (Histo == nullptr){
57 Warning("isOverflowBin()", "Where is my histogram?");
58 return true;
59 }
60 Histo->GetBinXYZ(bin, x, y, z);
61 if (x == 0 || x == Histo->GetXaxis()->GetNbins() + 1) return true;
62 if (Histo->GetDimension() >= 2 && (y == 0 || y == Histo->GetYaxis()->GetNbins() + 1)) return true;
63 if (Histo->GetDimension() == 3 && (z == 0 || z == Histo->GetZaxis()->GetNbins() + 1)) return true;
64 return false;
65 }
#define y
#define x
#define z

◆ JvtEfficiencyDown()

const SystematicVariation CP::JvtEfficiencyDown ( "JET_JvtEfficiency" ,
- 1 )
static

◆ JvtEfficiencyUp()

const SystematicVariation CP::JvtEfficiencyUp ( "JET_JvtEfficiency" ,
1  )
static

◆ LowerString()

std::string CP::LowerString ( const std::string & str)

Lowers all characters in the string.

Definition at line 37 of file PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonEfficiencyCorrections/Root/UtilFunctions.cxx.

37 {
38 std::string Low;
39 std::locale loc;
40 for (std::string::size_type i = 0; i < str.length(); ++i) Low += std::tolower(str[i], loc);
41 return Low;
42 }
@ Low

◆ make_systematics_vector()

std::vector< SystematicSet > CP::make_systematics_vector ( const SystematicSet & systematics)

utility functions for working with systematics

Author
Nils Krumnack nils..nosp@m.erik.nosp@m..krum.nosp@m.nack.nosp@m.@cern.nosp@m..ch
Attila Krasznahorkay Attil.nosp@m.a.Kr.nosp@m.aszna.nosp@m.hork.nosp@m.ay@ce.nosp@m.rn.c.nosp@m.h effects: determine the list of naive +/-1 sigma variations based on the list of recommended/supported systematics returns: the individual NP points to be evaluated guarantee: strong failures: out of memory II rationale: eventually the statistics forum is going to provide a tool that places NP points much more elegantly, but for now this should allow users to use the list in a reasonably elegant fashion

Definition at line 25 of file SystematicsUtil.cxx.

26 {
28 sys.calc (systematics);
29 return sys.result("");
30 }
static const std::vector< std::string > systematics
This class handles turning the list of systematics into the actual list of nuisance parameter points ...

◆ makeSelectionReadAccessor()

StatusCode CP::makeSelectionReadAccessor ( const std::string & expr,
std::unique_ptr< ISelectionReadAccessor > & accessor,
bool defaultToChar = false )

make the ISelectionReadAccessor for the given name

This will invoke SelectionExprParser to build a ISelectionReadAccessor that corresponds to a given expression.

Note
Passing in a simple selection name will createa plain selection accessor that only reads that single name.
Passing in an expression which only contains names and && will produce an instance of SelectionReadAccessorList, which has special semantics and allows retrievel of AND'ed accessors via a bit sequence.
Allowed operators are &&, || and !, grouping with () is possible.
Parameters
[in]exprThe expression to parse.
[out]accessorThe created accessor will be owned by this unique pointer.
[in]defaultToCharWhether to treat decorations as char by default

Definition at line 54 of file ISelectionAccessor.cxx.

57 {
58 using namespace msgSelectionHelpers;
59
60 if (expr.empty())
61 {
62 accessor = std::make_unique<SelectionReadAccessorNull> (true);
63 return StatusCode::SUCCESS;
64 }
65
66 try {
67 SelectionExprParser parser(expr, defaultToChar);
68 ANA_CHECK(parser.build(accessor));
69 } catch (const std::exception& e) {
70 ANA_MSG_FATAL("Failure to parse expression: '" << expr << "': " << e.what());
71 return StatusCode::FAILURE;
72 }
73
74 return StatusCode::SUCCESS;
75 }
#define ANA_CHECK(EXP)
check whether the given expression was successful
#define ANA_MSG_FATAL(xmsg)
Macro printing fatal messages.

◆ makeSelectionReadAccessorVar()

StatusCode CP::makeSelectionReadAccessorVar ( const std::string & name,
std::unique_ptr< ISelectionReadAccessor > & accessor,
bool defaultToChar = false )

Produces a simple ISelectionReadAccessor accessing the given decoration.

Note
Through annotations like ",as_char" or ",as_bits" at the end of a name, different decoding strategies can be selected. These need to match the decoration type.
Parameters
[in]nameThe name of the decoration to create an accessor for.
[out]accessorThe created accessor will be owned by this unique pointer.
[in]defaultToCharWhether to treat decorations as char by default

Definition at line 139 of file ISelectionAccessor.cxx.

142 {
143 using namespace msgSelectionHelpers;
144
145 if (name.find ("%SYS%") != std::string::npos)
146 {
147 accessor = std::make_unique<SelectionAccessorReadSys>(name);
148 return StatusCode::SUCCESS;
149 }
150
151 SplitData splitData;
152 ANA_CHECK (splitData.fill (name, defaultToChar));
153
154 if (splitData.asChar)
155 accessor = std::make_unique<SelectionReadAccessorChar> (splitData.var);
156 else
157 accessor = std::make_unique<SelectionReadAccessorBits> (splitData.var);
158
159 if (splitData.invert)
160 {
161 accessor = std::make_unique<SelectionReadAccessorInvert>
162 (std::move (accessor));
163 }
164
165 return StatusCode::SUCCESS;
166 }

◆ makeSelectionWriteAccessor()

StatusCode CP::makeSelectionWriteAccessor ( const std::string & name,
std::unique_ptr< ISelectionWriteAccessor > & accessor,
bool defaultToChar = false )

Produces a simple ISelectionWriteAccessor accessing the given decoration.

Note
Through annotations like ",as_char" or ",as_bits" at the end of a name, different decoding strategies can be selected. These need to match the decoration type.
Parameters
[in]nameThe name of the decoration to create an accessor for.
[out]accessorThe created accessor will be owned by this unique pointer.
[in]defaultToCharWhether to treat decorations as char by default

Definition at line 170 of file ISelectionAccessor.cxx.

173 {
174 using namespace msgSelectionHelpers;
175
176 if (name.find ("%SYS%") != std::string::npos)
177 {
178 accessor = std::make_unique<SelectionWriteAccessorSys>(name);
179 return StatusCode::SUCCESS;
180 }
181
182 SplitData splitData;
183 ANA_CHECK (splitData.fill (name, defaultToChar));
184
185 if (splitData.asChar)
186 accessor = std::make_unique<SelectionWriteAccessorChar> (splitData.var);
187 else
188 accessor = std::make_unique<SelectionWriteAccessorBits> (splitData.var);
189
190 if (splitData.invert)
191 {
192 accessor = std::make_unique<SelectionWriteAccessorInvert>
193 (std::move (accessor));
194 }
195
196 return StatusCode::SUCCESS;
197 }

◆ NNJvtEfficiencyDown()

const SystematicVariation CP::NNJvtEfficiencyDown ( "JET_NNJvtEfficiency" ,
- 1 )
static

◆ NNJvtEfficiencyUp()

const SystematicVariation CP::NNJvtEfficiencyUp ( "JET_NNJvtEfficiency" ,
1  )
static

◆ operator<<()

std::ostream & CP::operator<< ( std::ostream & str,
const CP::SystematicVariation & obj )

Definition at line 454 of file SystematicVariation.cxx.

455 {
456 return str << obj.name();
457 }

◆ operator==() [1/2]

template<class T>
bool operator== ( const DataVector< T > & a,
const DataVector< T > & b )

Vector equality comparison.

Parameters
aA DataVector.
bA DataVector of the same type as b.
Returns
True iff the size and elements of the vectors are equal.

This is an equivalence relation. It is linear in the size of the vectors. Vectors are considered equivalent if their sizes are equal, and if corresponding elements compare equal.

◆ operator==() [2/2]

template<class T>
bool operator== ( const DataVector< T > & a,
const DataVector< T > & b )

Vector equality comparison.

Parameters
aA DataVector.
bA DataVector of the same type as b.
Returns
True iff the size and elements of the vectors are equal.

This is an equivalence relation. It is linear in the size of the vectors. Vectors are considered equivalent if their sizes are equal, and if corresponding elements compare equal.

◆ RandomString()

std::string CP::RandomString ( size_t s)

Generates a random string consisting of capital & small letters + numbers.

Definition at line 11 of file PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonEfficiencyCorrections/Root/UtilFunctions.cxx.

11 {
12 auto randchar = []() -> char {
13 const char charset[] =
14 "0123456789"
15 "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
16 "abcdefghijklmnopqrstuvwxyz";
17 const size_t max_index = (sizeof(charset) - 1);
18 return charset[rand() % max_index];
19 };
20 std::string str(length, 0);
21 std::generate_n(str.begin(), length, randchar);
22 return str;
23 }
double length(const pvec &v)

◆ ReplaceExpInString()

std::string CP::ReplaceExpInString ( std::string str,
const std::string & exp,
const std::string & rep )

Replaces all expressions an string by something else.

Definition at line 24 of file PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonEfficiencyCorrections/Root/UtilFunctions.cxx.

24 {
25 size_t ExpPos = str.find(exp);
26 if (ExpPos == std::string::npos) return str;
27 str.replace(ExpPos,exp.size(),rep);
28 if (str.find(exp) != std::string::npos) return ReplaceExpInString(std::move(str), exp, rep);
29 return str;
30 }
std::string ReplaceExpInString(std::string str, const std::string &exp, const std::string &rep)
Replaces all expressions an string by something else.

◆ selectionAccept()

SelectionType CP::selectionAccept ( )
inlineconstexpr

the selection decoration to apply for objects that are selected

This is to be used when making a selection decoration for a single cut and no AcceptData object is at hand, as well as to check whether a particular selection passed.

Definition at line 35 of file SelectionHelpers.h.

35 {
36 return ~SelectionType (0);}
uint32_t SelectionType
the type for selection decorations that are meant to hold a asg::AcceptData

◆ selectionFromAccept()

SelectionType CP::selectionFromAccept ( const asg::AcceptData & accept)

the selection decoration made from the given AcceptData object

Definition at line 32 of file SelectionHelpers.cxx.

33 {
34 return ~SelectionType (accept.getCutResultInvertedBitSet().to_ulong());
35 }

◆ selectionFromBool()

SelectionType CP::selectionFromBool ( bool accept)

the selection decoration made from the given boolean (true = accept)

Definition at line 22 of file SelectionHelpers.cxx.

23 {
24 if (accept)
25 return selectionAccept();
26 else
27 return selectionReject();
28 }
constexpr SelectionType selectionReject()
the selection decoration to apply for objects that are rejected
constexpr SelectionType selectionAccept()
the selection decoration to apply for objects that are selected

◆ selectionReject()

SelectionType CP::selectionReject ( )
inlineconstexpr

the selection decoration to apply for objects that are rejected

This is to be used when making a selection decoration for a single cut and no AcceptData object is at hand.

Definition at line 44 of file SelectionHelpers.h.

44 {
45 return ~SelectionType (1);}

◆ use_intermodule_correction()

bool CP::use_intermodule_correction ( egEnergyCorr::ESModel model)

Definition at line 196 of file EgammaCalibrationAndSmearingTool.cxx.

◆ use_phi_uniform_correction()

bool CP::use_phi_uniform_correction ( egEnergyCorr::ESModel model)

Definition at line 240 of file EgammaCalibrationAndSmearingTool.cxx.

240 {
241 return use_intermodule_correction(model); // they are equal
242}
bool use_intermodule_correction(egEnergyCorr::ESModel model)

Variable Documentation

◆ acc_assocCaloIsDec

const CharAccessor CP::acc_assocCaloIsDec {IsolationCloseByCorrectionTool::caloDecors()[3]}
static

Definition at line 21 of file TestMacroHelpers.cxx.

static const caloDecorNames & caloDecors()
Returns an array with the calo cluster decoration names [0]-> eta, [1]->phi, [2]->energy....

◆ acc_assocClustEne

const FloatAccessor CP::acc_assocClustEne {IsolationCloseByCorrectionTool::caloDecors()[2]}
static

◆ acc_assocClustEta

const FloatAccessor CP::acc_assocClustEta {IsolationCloseByCorrectionTool::caloDecors()[0]}
static

◆ acc_assocClustPhi

const FloatAccessor CP::acc_assocClustPhi {IsolationCloseByCorrectionTool::caloDecors()[1]}
static

◆ acc_assocPflowEne

const FloatAccessor CP::acc_assocPflowEne {IsolationCloseByCorrectionTool::pflowDecors()[2]}
static

◆ acc_assocPflowEta

const FloatAccessor CP::acc_assocPflowEta {IsolationCloseByCorrectionTool::pflowDecors()[0]}
static

◆ acc_assocPflowIsDec

const CharAccessor CP::acc_assocPflowIsDec {IsolationCloseByCorrectionTool::pflowDecors()[3]}
static

◆ acc_assocPflowPhi

const FloatAccessor CP::acc_assocPflowPhi {IsolationCloseByCorrectionTool::pflowDecors()[1]}
static

◆ dec_assocCaloEne

const FloatDecorator CP::dec_assocCaloEne {IsolationCloseByCorrectionTool::caloDecors()[2]}
static

◆ dec_assocCaloEta

const FloatDecorator CP::dec_assocCaloEta {IsolationCloseByCorrectionTool::caloDecors()[0]}
static

◆ dec_assocCaloIsDec

const CharDecorator CP::dec_assocCaloIsDec {IsolationCloseByCorrectionTool::caloDecors()[3]}
static

◆ dec_assocCaloPhi

const FloatDecorator CP::dec_assocCaloPhi {IsolationCloseByCorrectionTool::caloDecors()[1]}
static

◆ dec_assocPflowEne

const FloatDecorator CP::dec_assocPflowEne {IsolationCloseByCorrectionTool::pflowDecors()[2]}
static

◆ dec_assocPflowEta

const FloatDecorator CP::dec_assocPflowEta {IsolationCloseByCorrectionTool::pflowDecors()[0]}
static

◆ dec_assocPflowIsDec

const CharDecorator CP::dec_assocPflowIsDec {IsolationCloseByCorrectionTool::pflowDecors()[3]}
static

◆ dec_assocPflowPhi

const FloatDecorator CP::dec_assocPflowPhi {IsolationCloseByCorrectionTool::pflowDecors()[1]}
static

◆ dec_ptraw

const SG::Decorator< float > CP::dec_ptraw("Ptraw") ( "Ptraw" )
static

◆ dec_status

const SG::Decorator< unsigned int > CP::dec_status("TileStatus") ( "TileStatus" )
static

◆ GeV

const double CP::GeV = 1000.

Definition at line 43 of file EgammaCalibrationAndSmearingTool.cxx.

◆ MeVtoGeV

float CP::MeVtoGeV = 1.e-3
constexpr

Definition at line 38 of file IsolationCloseByCorrectionTool.cxx.

◆ MinClusterEnergy

float CP::MinClusterEnergy = 100.
constexpr

Definition at line 37 of file IsolationCloseByCorrectionTool.cxx.

◆ muon_barrel_endcap_boundary

const double CP::muon_barrel_endcap_boundary = 1.05
static

Definition at line 31 of file MuonTriggerScaleFactors.cxx.

◆ N_VARIABLES

int CP::N_VARIABLES = 6
constexpr

Definition at line 28 of file IsolationLowPtPLVTool.cxx.

◆ s_acc_DRlj

const FloatAccessor CP::s_acc_DRlj("PromptLeptonInput_DRlj") ( "PromptLeptonInput_DRlj" )
static

◆ s_acc_PtFrac

const FloatAccessor CP::s_acc_PtFrac("PromptLeptonInput_PtFrac") ( "PromptLeptonInput_PtFrac" )
static

◆ s_acc_PtRel

const FloatAccessor CP::s_acc_PtRel("PromptLeptonInput_PtRel") ( "PromptLeptonInput_PtRel" )
static

◆ s_acc_ptvarcone20

const FloatAccessor CP::s_acc_ptvarcone20("ptvarcone20") ( "ptvarcone20" )
static

◆ s_acc_ptvarcone30

const FloatAccessor CP::s_acc_ptvarcone30("ptvarcone30") ( "ptvarcone30" )
static

◆ s_acc_topoetcone20

const FloatAccessor CP::s_acc_topoetcone20("topoetcone20") ( "topoetcone20" )
static

◆ s_acc_TrackJetNTrack

const ShortAccessor CP::s_acc_TrackJetNTrack("PromptLeptonInput_TrackJetNTrack") ( "PromptLeptonInput_TrackJetNTrack" )
static

◆ s_dec_iso_PLT

const FloatDecorator CP::s_dec_iso_PLT("LowPtPLV") ( "LowPtPLV" )
static