Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
MissingET.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 /********************************************************************
6 
7 NAME: MissingEt.cxx
8 PACKAGE: offline/Reconstruction/MissingETEvent
9 
10 AUTHORS: P. Loch, S. Resconi
11 CREATED: Oct 2004
12 
13 PURPOSE: Base Class for MissingETEvent package, it owns the region object
14 ********************************************************************/
17 
18 //fix by Andrei Gaponenko
20 : m_regions(b.m_regions ? std::make_unique<MissingEtRegions>(*b.m_regions) : 0)
21 , m_source(b.m_source)
22 , m_ex(b.m_ex)
23 , m_ey(b.m_ey)
24 , m_etSum(b.m_etSum)
25 {}
26 
27 //fix by Andrei Gaponenko
29  if(this != &b) {
30  m_regions = (b.m_regions ? std::make_unique<MissingEtRegions>(*b.m_regions) : 0);
31  m_source = b.m_source;
32  m_ex = b.m_ex;
33  m_ey = b.m_ey;
34  m_etSum = b.m_etSum;
35  }
36  return *this;
37 }
38 
39 
40 // default contructor
42  m_source(MissingET::Unknown),
43  m_ex(0.),
44  m_ey(0.),
45  m_etSum(0.)
46 { }
47 
48 //contructor with source specifier
50  m_source(aSource),
51  m_ex(0.),
52  m_ey(0.),
53  m_etSum(0.)
54 { }
55 
56 
57 //contructor with regions
59  m_regions(theRegions),
60  m_source(MissingET::Unknown),
61  m_ex(0.),
62  m_ey(0.),
63  m_etSum(0.)
64 { }
65 
66 //contructor with regions and source
68  m_regions(theRegions),
69  m_source(aSource),
70  m_ex(0.),
71  m_ey(0.),
72  m_etSum(0.)
73 { }
74 
75 
78  std::unique_ptr<MissingEtRegions> theRegions,
79  double ex,
80  double ey,
81  double etSum) :
82  m_regions(std::move(theRegions)),
83  m_source(aSource),
84  m_ex(ex),
85  m_ey(ey),
86  m_etSum(etSum)
87 { }
88 
89 
90 // destructor
92 {
93 }
94 
95 // set methods
96 void MissingET::setEx(double theEx)
97 {
98  m_ex = theEx;
99 }
100 void MissingET::setEy(double theEy)
101 {
102  m_ey = theEy;
103 }
104 void MissingET::setEtSum(double theEtSum)
105 {
106  m_etSum = theEtSum;
107 }
108 
109 // add method
110 /*void MissingET::add(const CaloCell* aCell, double &weight)
111 {
112  double exc=0.;
113  double eyc=0.;
114  double eta = aCell->eta();
115 
116  Calc_Ecellxy(aCell, exc, eyc);
117 
118  // Note the minus sign! We want to calculate missing ET
119  m_ex -= exc * weight;
120  m_ey -= eyc * weight;
121  m_etSum += aCell->et() * weight;
122 
123  // regions
124  if ( m_regions != 0 ) m_regions->addReg(aCell, weight);
125 } */
126 
127 void MissingET::add(double theEx, double theEy, double theEt,
128  double theEta, double weight)
129 {
130  // Note the minus sign! We want to calculate missing ET
131  m_ex -= theEx * weight;
132  m_ey -= theEy * weight;
133  m_etSum += theEt * weight;
134 
135  // regions
136  if ( m_regions != 0 ) m_regions->addReg(theEx, theEy, theEt, theEta, weight);
137 }
138 
139 
140 // retrieve kinematics
141 double MissingET::etx() const
142 {
143  return m_ex;
144 }
145 double MissingET::ety() const
146 {
147  return m_ey;
148 }
149 double MissingET::sumet() const
150 {
151  return m_etSum;
152 }
153 double MissingET::et() const
154 {
155  return sqrt(m_ex*m_ex + m_ey*m_ey);
156 }
157 double MissingET::phi() const
158 {
159 
160  return atan2(m_ey,m_ex);
161 }
162 
163 // retrieve the regions
165 {
166  return m_regions.get();
167 }
168 
169 // return the source information
170 
172 {
173  return m_source;
174 }
175 
176 /*
177 void MissingET::Calc_Ecellxy(const CaloCell* cObj, double &ex, double &ey)
178 {
179  //function to calculate x and y component of cell energy
180 
181  // get object kinematics
182  double et_cell = cObj->et();
183  double phi_cell = cObj->phi();
184 
185  // directly get et (optimised)
186  ex = et_cell * cos(phi_cell);
187  ey = et_cell * sin(phi_cell);
188 
189 }; */
GetLCDefs::Unknown
@ Unknown
Definition: GetLCDefs.h:21
MissingEtRegions
Definition: MissingEtRegions.h:22
MissingET::etx
virtual double etx() const
Definition: MissingET.cxx:141
MissingET::~MissingET
virtual ~MissingET()
Definition: MissingET.cxx:91
MissingET::m_source
Source m_source
Definition: Reconstruction/MissingETEvent/MissingETEvent/MissingET.h:119
MissingET.h
MissingET::getRegions
virtual const MissingEtRegions * getRegions() const
Definition: MissingET.cxx:164
MissingET::et
virtual double et() const
Definition: MissingET.cxx:153
make_unique
std::unique_ptr< T > make_unique(Args &&... args)
Definition: SkimmingToolEXOT5.cxx:23
MissingET::MissingET
MissingET()
Definition: MissingET.cxx:41
MissingET::operator=
MissingET & operator=(const MissingET &b)
Definition: MissingET.cxx:28
MissingET::Source
Source
Definition: Reconstruction/MissingETEvent/MissingETEvent/MissingET.h:38
MissingET::setEy
virtual void setEy(double theEy)
Definition: MissingET.cxx:100
MissingET::m_ey
double m_ey
Definition: Reconstruction/MissingETEvent/MissingETEvent/MissingET.h:123
dqt_zlumi_pandas.weight
int weight
Definition: dqt_zlumi_pandas.py:189
MissingET::getSource
virtual Source getSource() const
Definition: MissingET.cxx:171
MissingET::m_ex
double m_ex
Definition: Reconstruction/MissingETEvent/MissingETEvent/MissingET.h:122
MissingET::setEtSum
virtual void setEtSum(double theSum)
Definition: MissingET.cxx:104
plotBeamSpotMon.b
b
Definition: plotBeamSpotMon.py:77
MissingET::m_regions
std::unique_ptr< MissingEtRegions > m_regions
Definition: Reconstruction/MissingETEvent/MissingETEvent/MissingET.h:117
MissingET::ety
virtual double ety() const
Definition: MissingET.cxx:145
MissingEtRegions.h
MissingET::add
virtual void add(double theEx, double theEy, double theEt, double theEta, double weight)
Definition: MissingET.cxx:127
MissingET::setEx
virtual void setEx(double theEx)
Definition: MissingET.cxx:96
MissingET
Definition: Reconstruction/MissingETEvent/MissingETEvent/MissingET.h:23
MissingET::phi
virtual double phi() const
Definition: MissingET.cxx:157
MissingET::sumet
virtual double sumet() const
Definition: MissingET.cxx:149
MissingET::m_etSum
double m_etSum
Definition: Reconstruction/MissingETEvent/MissingETEvent/MissingET.h:124