ATLAS Offline Software
ERatio.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef GLOBALSIM_ERATIO_H
6 #define GLOBALSIM_ERATIO_H
7 
8 
9 // ERatio implementation: an algorithm to detect pi0s in the
10 // neighborhood of an EFEX RoI using LAr strip data.
11 // ERatio looks for a significant secondary energy peak in the
12 // LAr strips located close to an EFex RoI
13 
14 #include "../IO/LArStripNeighborhoodContainer.h"
15 
16 #include <string>
17 #include <vector>
18 
19 class StatusCode;
20 
21 namespace GlobalSim {
22  // class GenericTOBArray;
23  // class Decision;
24 
25  class ERatio {
26  public:
27 
28  ERatio(const std::string & name,
29  double thresh=50.,
30  double maxERCut=2.5);
31 
32  virtual ~ERatio() = default;
33 
35  run(const LArStripNeighborhood& in, bool& result);
36 
37  std::string toString() const;
38 
39  private:
40 
41  std::string m_name{"ERatio_object"};
42  double m_minDeltaE{50.}; // minimum signicant strip energy difference
43  double m_maxERCut{2.5}; // max value for ERatio to be tagged as pi0
44 
45  double secondaryPeakEnergy_forw(const StripDataVector&, std::size_t);
46  double secondaryPeakEnergy_back(const StripDataVector&, std::size_t);
47 
48  bool eratioCut(double p_peakE, double s_peakE);
49 
50 
51  };
52 }
53 
54 std::ostream& operator<< (std::ostream&, const GlobalSim::ERatio&);
55 
56 
57 #endif
GlobalSim::ERatio::toString
std::string toString() const
Definition: ERatio.cxx:136
get_generator_info.result
result
Definition: get_generator_info.py:21
physval_make_web_display.thresh
thresh
Definition: physval_make_web_display.py:36
GlobalSim::ERatio::m_maxERCut
double m_maxERCut
Definition: ERatio.h:43
GlobalSim::ERatio::secondaryPeakEnergy_back
double secondaryPeakEnergy_back(const StripDataVector &, std::size_t)
Definition: ERatio.cxx:85
operator<<
std::ostream & operator<<(std::ostream &, const GlobalSim::ERatio &)
Definition: ERatio.cxx:148
GlobalSim
AlgTool to obtain a selection of eFex RoIs read in from the event store.
Definition: dump.h:8
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
GlobalSim::ERatio::secondaryPeakEnergy_forw
double secondaryPeakEnergy_forw(const StripDataVector &, std::size_t)
Definition: ERatio.cxx:46
GlobalSim::ERatio::run
StatusCode run(const LArStripNeighborhood &in, bool &result)
Definition: ERatio.cxx:19
GlobalSim::ERatio::ERatio
ERatio(const std::string &name, double thresh=50., double maxERCut=2.5)
Definition: ERatio.cxx:12
GlobalSim::ERatio
Definition: ERatio.h:25
GlobalSim::ERatio::m_name
std::string m_name
Definition: ERatio.h:41
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
GlobalSim::ERatio::m_minDeltaE
double m_minDeltaE
Definition: ERatio.h:42
GlobalSim::ERatio::~ERatio
virtual ~ERatio()=default
GlobalSim::LArStripNeighborhood
Definition: LArStripNeighborhood.h:28
GlobalSim::StripDataVector
std::vector< StripData > StripDataVector
Definition: LArStripNeighborhood.h:24
GlobalSim::ERatio::eratioCut
bool eratioCut(double p_peakE, double s_peakE)
Definition: ERatio.cxx:128