ATLAS Offline Software
EMErrorDetail.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 #include "GaudiKernel/GaudiException.h"
7 #include "egammaEvent/EMShower.h"
9 #include "AthLinks/ElementLink.h"
10 #include "TrkTrack/Track.h"
16 #include "VxVertex/VxCandidate.h"
17 #include "AthenaKernel/BaseInfo.h"
18 
19 #include <cmath>
20 
21 
22 //const double DEFAULT_MOMENTUM = 1e11;
23 
25 
28 
29 const std::string& EMErrorDetail::className() const {
30  return s_className;
31 }
32 
33 // ===============================================================
35 
36 
37  using elParams = std::pair<egammaParameters::ParamDef, int>;
38 
40  std::vector<elParams>::const_iterator p = m_parametersInt.begin();
41 
42  for (;p !=m_parametersInt.end(); ++p) {
43  if ( (*p).first == key ){
44  result = (*p).second;
45  break;
46  }
47  }
48  return result;
49 }
50 
51 // ==================================================================
53 
54  if ( hasIntParameter(key) ) {
55  return (double) intParameter(key);
56  }
57 
58  using elParams = std::pair<egammaParameters::ParamDef, double>;
59 
61  std::vector<elParams>::const_iterator p = m_parameters.begin();
62 
63  for (;p !=m_parameters.end(); ++p) {
64  if ( (*p).first == key ) {
65  result = (*p).second;
66  break;
67  }
68  }
69 
70  return result;
71 }
72 
73 // ===================================================================
75 
76  using elParams = std::pair<egammaParameters::ParamDef, int>;
77 
79 
80  for (;p !=m_parametersInt.end(); ++p) {
81  if ( (*p).first == key ) break;
82  }
83 
84  if ( p == m_parametersInt.end() ) {
85  m_parametersInt.emplace_back(key,value );
86  }
87  else {
88  if ( overwrite ) {
89  (*p).second = value;
90  }
91  else {
92  throw GaudiException("parameter not saved", "EMErrorDetail::set_parameter(...)", StatusCode::FAILURE);
93  }
94  }
95 }
96 
97 // ======================================================================
99 
100  if ( hasIntParameter(key) ) {
101  set_parameterInt(key,(int)value,overwrite);
102  }
103 
104  using elParams = std::pair<egammaParameters::ParamDef, double>;
106 
107  for (;p !=m_parameters.end(); ++p) {
108  if ( (*p).first == key ) break;
109  }
110 
111  if ( p == m_parameters.end() ) {
112  m_parameters.emplace_back(key,value );
113  }
114  else {
115  if ( overwrite ) {
116  (*p).second = value;
117  }
118  else {
119  throw GaudiException("parameter not saved", "EMErrorDetail::set_parameter(...)", StatusCode::FAILURE);
120  }
121  }
122 
123 }
124 
125 // =======================================================================
126 bool EMErrorDetail::isElectron(const egamma* eg, bool forcePhoton)
127 {
128  return (!forcePhoton && ((eg->conversion() != nullptr) || (eg->trackParticle() != nullptr)));
129 }
130 
131 
132 // ===================================================================
133 double EMErrorDetail::caloEta(const egamma* eg, double clusterEta) {
134 
135  const double etaPointing = eg->detailValue(egammaParameters::etap);
136  if ( fabs(etaPointing - clusterEta ) < 0.15 ) {
137  return etaPointing;
138  }
139  return clusterEta;
140 
141 }
142 
143 
144 // ====================================================================
145 AmgSymMatrix(3) EMErrorDetail::getEMPhotonErrorMatrix() const {
146 
147  // Make a 3x3 matrix that is filled with zero's alternatively we could fill it with the identity matrix;
148  // Chosen the identity matrix option (second argument = 1)
149  AmgSymMatrix(3) hepSymMatrix;
150  hepSymMatrix.setZero();
151  // Fill the matrix E,eta,phi,M
152  hepSymMatrix(1,1) = EMphoton_CovEclusEclus();
153  hepSymMatrix(2,2) = EMphoton_Covetaeta();
154  hepSymMatrix(3,3) = EMphoton_Covphiphi();
155 
156  hepSymMatrix.fillSymmetric(1,2,EMphoton_CovetaEclus());
157  hepSymMatrix.fillSymmetric(1,3,EMphoton_CovphiEclus());
158  hepSymMatrix.fillSymmetric(2,3, EMphoton_Covetaphi());
159 
160  return hepSymMatrix;
161 
162 }
163 
164 // ====================================================================
166 {
167  // see if combined matrix exists, if so, return it, otherwise,
168  // it's an unconverted photon, so just return the photon error
169  // matrix.
171  return getEMPhotonErrorMatrix();
172  }
173  return getEMTrackCombinedErrorMatrix();
174 
175 }
176 
177 // ====================================================================
179 {
180  // this still looks for combined matrix to make the decision
182  return getEMPhotonErrorMatrix();
183  }
184  return getEMTrackUncombinedErrorMatrix();
185 
186 }
187 
188 // ====================================================================
189 AmgSymMatrix(4) EMErrorDetail::get4x4CombinedErrorMatrix() const
190 {
191  // see if combined matrix exists, if so, return it, otherwise,
192  // it's an unconverted photon, so just return the photon error
193  // matrix.
194  if (EMtrack_comb_CovPP() == egammaParameters::EgParamUndefined) {
195  return get4x4EMPhotonErrorMatrix();
196  }
197  return get4x4EMTrackCombinedErrorMatrix();
198 
199 }
200 
201 // ====================================================================
202 AmgSymMatrix(4) EMErrorDetail::get4x4UncombinedErrorMatrix() const
203 {
204  // this still looks for combined matrix to make the decision
205  if (EMtrack_comb_CovPP() == egammaParameters::EgParamUndefined) {
206  return get4x4EMPhotonErrorMatrix();
207  }
208  return get4x4EMTrackUncombinedErrorMatrix();
209 
210 }
211 
212 // ====================================================================
213 AmgSymMatrix(5) EMErrorDetail::getEMTrackCombinedErrorMatrix() const {
214 
215  // Make a 5x5 matrix that is filled with zero's alternatively we could fill it with the identity matrix;
216  // Chosen the identity matrix option
217  AmgSymMatrix(5) hepSymMatrix;
218  hepSymMatrix.setZero();
219  // Fill the matrix
220  hepSymMatrix(0,0) = EMtrack_comb_Covd0d0();
221  hepSymMatrix(1,1) = EMtrack_comb_Covz0z0();
222  hepSymMatrix(2,2) = EMtrack_comb_Covphiphi();
223  hepSymMatrix(3,3) = EMtrack_comb_Covetaeta();
224  hepSymMatrix(4,4) = EMtrack_comb_CovPP();
225 
226 
227  hepSymMatrix.fillSymmetric(0,1, EMtrack_comb_Covd0z0());
228  hepSymMatrix.fillSymmetric(0,2 ,EMtrack_comb_Covd0phi());
229  hepSymMatrix.fillSymmetric(0,3, EMtrack_comb_Covd0eta());
230  hepSymMatrix.fillSymmetric(0,4, EMtrack_comb_Covd0P());
231  hepSymMatrix.fillSymmetric(1,2, EMtrack_comb_Covz0phi());
232  hepSymMatrix.fillSymmetric(1,3, EMtrack_comb_Covz0eta());
233  hepSymMatrix.fillSymmetric(1,4, EMtrack_comb_Covz0P());
234  hepSymMatrix.fillSymmetric(2,3, EMtrack_comb_Covphieta());
235  hepSymMatrix.fillSymmetric(2,4, EMtrack_comb_CovphiP());
236  hepSymMatrix.fillSymmetric(3,4, EMtrack_comb_CovetaP());
237 
238  return hepSymMatrix;
239 }
240 
241 // ====================================================================
242 AmgSymMatrix(5) EMErrorDetail::getEMTrackUncombinedErrorMatrix() const {
243 
244  // Make a 5x5 matrix that is filled with zero's alternatively we could fill it with the identity matrix;
245  // Chosen the identity matrix option
246  // Fill the matrix
247  if (hasSiliconHits()) {
248  AmgSymMatrix(5) hepSymMatrix;
249  hepSymMatrix.setZero();
250  // use tracks for everything but energy
251  hepSymMatrix(0,0) = EMtrack_perigee_Covd0d0();
252  hepSymMatrix(1,1) = EMtrack_perigee_Covz0z0();
253  hepSymMatrix(2,2) = EMtrack_perigee_Covphiphi();
254  hepSymMatrix(3,3) = EMtrack_perigee_Covthetatheta();
255  hepSymMatrix(4,4) = EMphoton_CovEclusEclus();
256  //Symmetric fill
257  hepSymMatrix.fillSymmetric(0,1,EMtrack_perigee_Covd0z0());
258  hepSymMatrix.fillSymmetric(0,2,EMtrack_perigee_Covd0phi());
259  hepSymMatrix.fillSymmetric(0,3,EMtrack_perigee_Covd0theta()); // note theta
260  hepSymMatrix.fillSymmetric(0,4,0.0);
261  hepSymMatrix.fillSymmetric(1,2,EMtrack_perigee_Covz0phi());
262  hepSymMatrix.fillSymmetric(1,3,EMtrack_perigee_Covz0theta());
263  hepSymMatrix.fillSymmetric(1,4,0.0);
264  hepSymMatrix.fillSymmetric(2,3,EMtrack_perigee_Covphitheta());
265  hepSymMatrix.fillSymmetric(2,4,0.0);
266  hepSymMatrix.fillSymmetric(3,4,0.0);
267 
268  //jacob
269  AmgSymMatrix(5) jacob;
270  jacob.setIdentity();
271  jacob(3,3) = (-1./sin(EMtrack_perigee_theta())); // deta/dtheta
272  //similarity
273  return jacob*hepSymMatrix*jacob.transpose();
274 
275  }
276  AmgSymMatrix(5) hepSymMatrix;
277  hepSymMatrix.setIdentity();
278  // use cluster for energy and eta
279  hepSymMatrix(0,0) = EMtrack_perigee_Covd0d0();
280  hepSymMatrix(1,1) = EMtrack_perigee_Covz0z0();
281  hepSymMatrix(2,2) = EMtrack_perigee_Covphiphi();
282  hepSymMatrix(3,3) = EMphoton_Covetaeta();
283  hepSymMatrix(4,4) = EMphoton_CovEclusEclus();
284 
285  hepSymMatrix.fillSymmetric(0,1,EMtrack_perigee_Covd0z0());
286  hepSymMatrix.fillSymmetric(0,2,EMtrack_perigee_Covd0phi());
287  hepSymMatrix.fillSymmetric(0,3,0.0);
288  hepSymMatrix.fillSymmetric(0,4,0.0);
289  hepSymMatrix.fillSymmetric(1,2,EMtrack_perigee_Covz0phi());
290  hepSymMatrix.fillSymmetric(1,3,0.0);
291  hepSymMatrix.fillSymmetric(1,4,0.0);
292  hepSymMatrix.fillSymmetric(2,3,0.0);
293  hepSymMatrix.fillSymmetric(2,4,0.0);
294  hepSymMatrix.fillSymmetric(3,4,EMphoton_CovetaEclus());
295 
296  return hepSymMatrix;
297 
298 
299 }
300 
301 // ====================================================================
302 AmgSymMatrix(4) EMErrorDetail::get4x4EMTrackCombinedErrorMatrix() const {
303 
304  // E,eta,phi,M representation.
305  AmgSymMatrix(4) hepSymMatrix;
306  hepSymMatrix.setZero();
307  // Fill the matrix
308  hepSymMatrix(0,0) = EMtrack_comb_CovPP();
309  hepSymMatrix(1,1) = EMtrack_comb_Covetaeta();
310  hepSymMatrix(2,2) = EMtrack_comb_Covphiphi();
311 
312  hepSymMatrix.fillSymmetric(0,1,EMtrack_comb_CovetaP());
313  hepSymMatrix.fillSymmetric(0,2,EMtrack_comb_CovphiP());
314  hepSymMatrix.fillSymmetric(1,2,EMtrack_comb_Covphieta());
315 
316  return hepSymMatrix;
317 }
318 
319 // ====================================================================
320 AmgSymMatrix(4) EMErrorDetail::get4x4EMTrackUncombinedErrorMatrix() const {
321 
322  // E,eta,phi,M representation.
323  if (hasSiliconHits()) {
324  AmgSymMatrix(4) hepSymMatrix;
325  hepSymMatrix.setZero();
326  // use tracks for everything but energy
327  hepSymMatrix(0,0) = EMphoton_CovEclusEclus();
328  hepSymMatrix(1,1) = EMtrack_perigee_Covthetatheta();
329  hepSymMatrix(2,2) = EMtrack_perigee_Covphiphi();
330  //fill symmetric
331  hepSymMatrix.fillSymmetric(1,2, EMtrack_perigee_Covphitheta());
332 
333  //jacobian
334  AmgSymMatrix(4) jacob;
335  jacob.setIdentity();
336  jacob(1,1) = (-1./sin(EMtrack_perigee_theta())); // deta/dtheta
337  //similarity
338  return jacob*hepSymMatrix*jacob.transpose();
339  }
340 
341  AmgSymMatrix(4) hepSymMatrix;
342  hepSymMatrix.setZero();
343  // use cluster for energy and eta
344  hepSymMatrix(0,0) = EMphoton_CovEclusEclus();
345  hepSymMatrix(1,1) = EMphoton_Covetaeta();
346  hepSymMatrix(2,2) = EMtrack_perigee_Covphiphi();
347 
348  hepSymMatrix.fillSymmetric(0,1, EMphoton_CovetaEclus());
349 
350  return hepSymMatrix;
351 
352 
353 }
354 
355 // ====================================================================
356 AmgSymMatrix(4) EMErrorDetail::get4x4EMPhotonErrorMatrix() const {
357 
358  // E,eta,phi,M representation.
359  AmgSymMatrix(4) hepSymMatrix;
360  hepSymMatrix.setZero();
361 
362  // Fill the matrix
363  hepSymMatrix(0,0) = EMphoton_CovEclusEclus();
364  hepSymMatrix(1,1) = EMphoton_Covetaeta();
365  hepSymMatrix(1,2) = EMphoton_Covetaphi();
366  hepSymMatrix(2,2) = EMphoton_Covphiphi();
367 
368  hepSymMatrix.fillSymmetric(0,1, EMphoton_CovetaEclus());
369  hepSymMatrix.fillSymmetric(0,3, EMphoton_CovphiEclus());
370 
371  return hepSymMatrix;
372 
373 }
374 // ======================================================================
375 bool EMErrorDetail::hasIntParameter(egammaParameters::ParamDef key) const {
376  switch(key) {
379  return true;
380  default:
381  return false;
382  }
383 }
384 
385 // =======================================================================
387  if(hasIntParameter(key)) return true;
388  switch (key) {
405 
422 
438 
442 
449  return true;
450  // the following are depricated
463  return true;
464  default:
465  return false;
466  }
467 }
468 
469 
470 /* Get parameters of unconverted photon */
473 // double EMErrorDetail::EMconvertedphoton_perigee_Eclus() const {return parameter(egammaParameters::EMConvertedPhoton_Eclus) ;}
478 
483 // double EMErrorDetail::EMconvertedphoton_perigee_Covd0Eclus () const {return parameter(egammaParameters::EMConvertedPhoton_Covd0Eclus) ;}
487 // double EMErrorDetail::EMconvertedphoton_perigee_Covz0Eclus () const {return parameter(egammaParameters::EMConvertedPhoton_Covz0Eclus) ;}
490 // double EMErrorDetail::EMconvertedphoton_perigee_CovphiEclus () const {return parameter(egammaParameters::EMConvertedPhoton_CovphiEclus) ;}
492 // double EMErrorDetail::EMconvertedphoton_perigee_CovthetaEclus () const {return parameter(egammaParameters::EMConvertedPhoton_CovthetaEclus) ;}
493 // double EMErrorDetail::EMconvertedphoton_perigee_CovEclusEclus () const {return parameter(egammaParameters::EMConvertedPhoton_CovEclusEclus) ;}
494 
495 /* Set parameters of unconverted photons */
498 // void EMErrorDetail::EMconvertedphoton_perigee_Eclus (double x) {set_parameter(egammaParameters::EMConvertedPhoton_Eclus, x, true) ;}
503 
508 // void EMErrorDetail::EMconvertedphoton_perigee_Covd0Eclus (double x) {set_parameter(egammaParameters::EMConvertedPhoton_Covd0Eclus, x, true) ;}
512 // void EMErrorDetail::EMconvertedphoton_perigee_Covz0Eclus (double x) {set_parameter(egammaParameters::EMConvertedPhoton_Covz0Eclus, x, true) ;}
515 // void EMErrorDetail::EMconvertedphoton_perigee_CovphiEclus (double x) {set_parameter(egammaParameters::EMConvertedPhoton_CovphiEclus, x, true) ;}
517 // void EMErrorDetail::EMconvertedphoton_perigee_CovthetaEclus (double x) {set_parameter(egammaParameters::EMConvertedPhoton_CovthetaEclus, x, true) ;}
518 // void EMErrorDetail::EMconvertedphoton_perigee_CovEclusEclus (double x) {set_parameter(egammaParameters::EMConvertedPhoton_CovEclusEclus, x, true) ;}
519 
520 
521 /* Get parameters of tracks */
524 // double EMErrorDetail::EMtrack_perigee_Eclus() const {return parameter(egammaParameters::EMTrack_Eclus) ;}
529 
534 // double EMErrorDetail::EMtrack_perigee_Covd0Eclus () const {return parameter(egammaParameters::EMTrack_Covd0Eclus) ;}
538 // double EMErrorDetail::EMtrack_perigee_Covz0Eclus () const {return parameter(egammaParameters::EMTrack_Covz0Eclus) ;}
541 // double EMErrorDetail::EMtrack_perigee_CovphiEclus () const {return parameter(egammaParameters::EMTrack_CovphiEclus) ;}
543 // double EMErrorDetail::EMtrack_perigee_CovthetaEclus () const {return parameter(egammaParameters::EMTrack_CovthetaEclus) ;}
544 // double EMErrorDetail::EMtrack_perigee_CovEclusEclus () const {return parameter(egammaParameters::EMTrack_CovEclusEclus) ;}
545 
546 /* Get parameters of tracks from the combined method (track and cluster information combined)*/
562 
563 
564 
565 /* Set parameters of tracks */
568 // void EMErrorDetail::EMtrack_perigee_Eclus (double x) {set_parameter(egammaParameters::EMTrack_Eclus, x, true) ;}
573 
578 // void EMErrorDetail::EMtrack_perigee_Covd0Eclus (double x) {set_parameter(egammaParameters::EMTrack_Covd0Eclus, x, true) ;}
582 // void EMErrorDetail::EMtrack_perigee_Covz0Eclus (double x) {set_parameter(egammaParameters::EMTrack_Covz0Eclus, x, true) ;}
585 // void EMErrorDetail::EMtrack_perigee_CovphiEclus (double x) {set_parameter(egammaParameters::EMTrack_CovphiEclus, x, true) ;}
587 // void EMErrorDetail::EMtrack_perigee_CovthetaEclus (double x) {set_parameter(egammaParameters::EMTrack_CovthetaEclus, x, true) ;}
588 // void EMErrorDetail::EMtrack_perigee_CovEclusEclus (double x) {set_parameter(egammaParameters::EMTrack_CovEclusEclus, x, true) ;}
589 
590 
606 
607 /* Get parameters of photons */
611 
618 
619 /* Set parameters of photons */
623 
630 
633 
636 
637 
638 AmgSymMatrix(5) EMErrorDetail::P5Jacobiand0z0PhiThetaE2d0z0PhiEtaE(const double theta)
639 {
640  AmgSymMatrix(5) m;
641  m.setIdentity();
642  m(3,3) = (-1./sin(theta)); // deta/dtheta
643  return m;
644 }
645 
646 AmgSymMatrix(4) EMErrorDetail::P4JacobiandEThetaPhiM2EEtaPhiM(const double theta)
647 {
648  AmgSymMatrix(4) m;
649  m.setIdentity();
650  m(1,1) = (-1./sin(theta)); // deta/dtheta
651  return m;
652 }
653 
655 
656 // LocalWords: hepSymMatrix
xAOD::iterator
JetConstituentVector::iterator iterator
Definition: JetConstituentVector.cxx:68
egammaParameters::EMConvertedPhoton_z0
@ EMConvertedPhoton_z0
the z value of the converted photon
Definition: egammaParamDefs.h:474
egammaParameters::EMConvertedPhoton_Covd0phi
@ EMConvertedPhoton_Covd0phi
converted photon covariance matrix item ( )
Definition: egammaParamDefs.h:483
EMErrorDetail::EMtrack_comb_CovPP
double EMtrack_comb_CovPP() const
Definition: EMErrorDetail.cxx:561
EMErrorDetail::EMconvertedphoton_perigee_Covd0z0
double EMconvertedphoton_perigee_Covd0z0() const
egammaParameters::EMPhoton_Covphiphi
@ EMPhoton_Covphiphi
covariance matrix photon (phi, phi)
Definition: egammaParamDefs.h:567
egammaParameters::EMTrack_CovthetaEclus
@ EMTrack_CovthetaEclus
track perigee covariance matrix item (theta,E)
Definition: egammaParamDefs.h:549
egammaParameters::EMTrack_Combined_CovetaP
@ EMTrack_Combined_CovetaP
track combined covariance matrix item (eta,P)
Definition: egammaParamDefs.h:632
egammaParameters::EMTrack_Covthetatheta
@ EMTrack_Covthetatheta
track perigee covariance matrix item (theta,theta)
Definition: egammaParamDefs.h:547
EMErrorDetail::intParameter
virtual int intParameter(egammaParameters::ParamDef) const
Definition: EMErrorDetail.cxx:34
EMErrorDetail::EMconvertedphoton_perigee_d0
double EMconvertedphoton_perigee_d0() const
egammaParameters::EMPhoton_CovphiEclus
@ EMPhoton_CovphiEclus
covariance matrix photon (phi, E)
Definition: egammaParamDefs.h:569
EMErrorDetail::EMconvertedphoton_perigee_theta
double EMconvertedphoton_perigee_theta() const
Amg::MatrixX
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Definition: EventPrimitives.h:27
EMErrorDetail::EMtrack_perigee_d0
double EMtrack_perigee_d0() const
transverse impact parameter (distance of closest approach)
Definition: EMErrorDetail.cxx:522
get_generator_info.result
result
Definition: get_generator_info.py:21
python.SystemOfUnits.m
int m
Definition: SystemOfUnits.py:91
EMErrorDetail::EMtrack_perigee_eta
double EMtrack_perigee_eta() const
eta of the track fit
Definition: EMErrorDetail.cxx:527
TrackParameters.h
EMErrorDetail::linkIndex
int linkIndex() const
link index
Definition: EMErrorDetail.cxx:631
egammaParameters::EMConvertedPhoton_d0
@ EMConvertedPhoton_d0
From EMErrorDetail
Definition: egammaParamDefs.h:468
egammaParameters::EMConvertedPhoton_Covz0theta
@ EMConvertedPhoton_Covz0theta
converted photon covariance matrix item (z0,theta)
Definition: egammaParamDefs.h:493
ParticleTest.eg
eg
Definition: ParticleTest.py:29
egammaParameters::EMTrack_Covd0phi
@ EMTrack_Covd0phi
track perigee covariance matrix item ( )
Definition: egammaParamDefs.h:527
EMErrorDetail::EMtrack_perigee_theta
double EMtrack_perigee_theta() const
theta of the track fit
Definition: EMErrorDetail.cxx:526
CaloCellPos2Ntuple.int
int
Definition: CaloCellPos2Ntuple.py:24
EMErrorDetail::EMconvertedphoton_perigee_Covd0d0
double EMconvertedphoton_perigee_Covd0d0() const
EMErrorDetail::EMtrack_perigee_Covz0phi
double EMtrack_perigee_Covz0phi() const
Covariance matrix item (z0,phi)
Definition: EMErrorDetail.cxx:536
egammaParameters::EMTrack_theta
@ EMTrack_theta
theta of the track
Definition: egammaParamDefs.h:520
EMErrorDetail::EMtrack_perigee_z0
double EMtrack_perigee_z0() const
the z value at the point of closest approach
Definition: EMErrorDetail.cxx:525
EMErrorDetail::EMtrack_comb_Covd0phi
double EMtrack_comb_Covd0phi() const
Definition: EMErrorDetail.cxx:549
egammaParameters
Definition: egammaParamDefs.h:36
EMErrorDetail::hasSiliconHits
int hasSiliconHits() const
Does the track of vertex have silicon hits.
Definition: EMErrorDetail.cxx:634
egammaParameters::EMTrack_Combined_Covd0z0
@ EMTrack_Combined_Covd0z0
track combined covariance matrix item (d0,z0)
Definition: egammaParamDefs.h:608
egammaParameters::EMTrack_Combined_CovPP
@ EMTrack_Combined_CovPP
track combined covariance matrix item (P,P)
Definition: egammaParamDefs.h:634
TrackParticleBase.h
theta
Scalar theta() const
theta method
Definition: AmgMatrixBasePlugin.h:75
EMErrorDetail::set_hasSiliconHits
void set_hasSiliconHits(int x)
set whether the track of vertex have silicon hits
Definition: EMErrorDetail.cxx:635
egammaParameters::EMTrack_Eclus
@ EMTrack_Eclus
Cluster energy
Definition: egammaParamDefs.h:516
EMErrorDetail::EMconvertedphoton_perigee_Covphiphi
double EMconvertedphoton_perigee_Covphiphi() const
EMErrorDetail::EMtrack_comb_Covd0P
double EMtrack_comb_Covd0P() const
Definition: EMErrorDetail.cxx:551
egammaParameters::EMPhoton_CovetaEclus
@ EMPhoton_CovetaEclus
covariance matrix photon (eta, E)
Definition: egammaParamDefs.h:565
egammaParameters::EMConvertedPhoton_Covd0z0
@ EMConvertedPhoton_Covd0z0
converted photon covariance matrix item ( )
Definition: egammaParamDefs.h:481
EMErrorDetail::EMtrack_comb_Covd0d0
double EMtrack_comb_Covd0d0() const
Definition: EMErrorDetail.cxx:547
egammaParameters::ParamDef
ParamDef
Definition: egammaParamDefs.h:99
EMErrorDetail::EMtrack_perigee_Covphiphi
double EMtrack_perigee_Covphiphi() const
Covariance matrix item (phi,phi)
Definition: EMErrorDetail.cxx:539
egammaParameters::EMTrack_z0
@ EMTrack_z0
the z value at the point of closest approach
Definition: egammaParamDefs.h:518
athena.value
value
Definition: athena.py:124
EMErrorDetail::hasParameter
virtual bool hasParameter(egammaParameters::ParamDef) const
egammaParameters::EMPhoton_eta
@ EMPhoton_eta
photon eta
Definition: egammaParamDefs.h:554
egammaParameters::EMPhoton_Covetaeta
@ EMPhoton_Covetaeta
covariance matrix photon (eta, eta)
Definition: egammaParamDefs.h:561
NeutralParameters.h
egammaParameters::EMTrack_eta
@ EMTrack_eta
the eta of the track
Definition: egammaParamDefs.h:584
egammaParameters::EMPhoton_Covetaphi
@ EMPhoton_Covetaphi
covariance matrix photon (eta, phi)
Definition: egammaParamDefs.h:563
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
egammaParameters::EgParamUndefined
const double EgParamUndefined
Definition: egammaParamDefs.h:78
EMErrorDetail::EMtrack_perigee_Covz0z0
double EMtrack_perigee_Covz0z0() const
Covariance matrix item (z0,z0)
Definition: EMErrorDetail.cxx:535
egammaParameters::EMConvertedPhoton_eta
@ EMConvertedPhoton_eta
the eta of the converted photon
Definition: egammaParamDefs.h:580
EMErrorDetail::set_parameter
void set_parameter(egammaParameters::ParamDef, double, bool overwrite=false)
general set method for parameters
Definition: EMErrorDetail.cxx:98
EMErrorDetail::EMtrack_comb_Covz0phi
double EMtrack_comb_Covz0phi() const
Definition: EMErrorDetail.cxx:553
EMErrorDetail::EMErrorDetail
EMErrorDetail()
Default constructor.
Definition: EMErrorDetail.cxx:24
egammaParameters::EMConvertedPhoton_CovthetaEclus
@ EMConvertedPhoton_CovthetaEclus
converted photon covariance matrix item (theta,E)
Definition: egammaParamDefs.h:505
egammaParameters::EMConvertedPhoton_Covphitheta
@ EMConvertedPhoton_Covphitheta
converted photon covariance matrix item (phi,theta)
Definition: egammaParamDefs.h:499
x
#define x
AmgSymMatrix
AmgSymMatrix(3) EMErrorDetail
Definition: EMErrorDetail.cxx:145
egammaParameters::EMTrack_Combined_Covphieta
@ EMTrack_Combined_Covphieta
track combined covariance matrix item (phi,eta)
Definition: egammaParamDefs.h:626
egammaParameters::EMTrack_Combined_CovphiP
@ EMTrack_Combined_CovphiP
track combined covariance matrix item (phi,P)
Definition: egammaParamDefs.h:628
egammaParameters::EMConvertedPhoton_phi0
@ EMConvertedPhoton_phi0
azimuth angle of the momentum at the point of closest approach
Definition: egammaParamDefs.h:470
EMErrorDetail::EMtrack_comb_Covz0z0
double EMtrack_comb_Covz0z0() const
Definition: EMErrorDetail.cxx:552
EMErrorDetail::hasIntParameter
virtual bool hasIntParameter(egammaParameters::ParamDef) const
egamma
Definition: egamma.h:58
egammaParameters::EMTrack_Combined_Covz0phi
@ EMTrack_Combined_Covz0phi
track combined covariance matrix item (z0,phi)
Definition: egammaParamDefs.h:618
egammaParameters::etap
@ etap
pointing eta reconstructed from the cluster (first and second sampling)
Definition: egammaParamDefs.h:274
Track.h
egammaParameters::EMConvertedPhoton_Covd0theta
@ EMConvertedPhoton_Covd0theta
converted photon covariance matrix item (d0,theta)
Definition: egammaParamDefs.h:485
egammaParameters::EMTrack_CovEclusEclus
@ EMTrack_CovEclusEclus
track perigee covariance matrix item (E,E)
Definition: egammaParamDefs.h:551
EMErrorDetail::EMtrack_comb_Covd0eta
double EMtrack_comb_Covd0eta() const
Definition: EMErrorDetail.cxx:550
EMErrorDetail::EMtrack_comb_Covd0z0
double EMtrack_comb_Covd0z0() const
Definition: EMErrorDetail.cxx:548
EMErrorDetail::EMtrack_perigee_Covphitheta
double EMtrack_perigee_Covphitheta() const
Covariance matrix item (phi,theta)
Definition: EMErrorDetail.cxx:540
egammaParameters::EMTrack_Covd0d0
@ EMTrack_Covd0d0
track perigee covariance matrix item ( )
Definition: egammaParamDefs.h:523
EMErrorDetail::EMphoton_CovphiEclus
double EMphoton_CovphiEclus() const
Covariance matrix item (phi,Eclus)
Definition: EMErrorDetail.cxx:616
EMErrorDetail::parameter
virtual double parameter(egammaParameters::ParamDef) const
Definition: EMErrorDetail.cxx:52
egammaParameters::EMTrack_Covd0theta
@ EMTrack_Covd0theta
track perigee covariance matrix item (d0,theta)
Definition: egammaParamDefs.h:529
egammaParameters::EMTrack_Covz0theta
@ EMTrack_Covz0theta
track perigee covariance matrix item (z0,theta)
Definition: egammaParamDefs.h:537
egammaParameters::EMTrack_Covphitheta
@ EMTrack_Covphitheta
track perigee covariance matrix item (phi,theta)
Definition: egammaParamDefs.h:543
egammaParameters::EMConvertedPhoton_Covd0d0
@ EMConvertedPhoton_Covd0d0
converted photon covariance matrix item ( )
Definition: egammaParamDefs.h:479
egammaParameters::EMTrack_d0
@ EMTrack_d0
transverse impact parameter (distance of closest approach)
Definition: egammaParamDefs.h:512
egammaParameters::EMTrack_Combined_Covz0z0
@ EMTrack_Combined_Covz0z0
track combined covariance matrix item (z0,z0)
Definition: egammaParamDefs.h:616
egammaParameters::EMTrack_Covphiphi
@ EMTrack_Covphiphi
track perigee covariance matrix item (phi,phi)
Definition: egammaParamDefs.h:541
EMErrorDetail::set_parameterInt
void set_parameterInt(egammaParameters::ParamDef, int, bool overwrite=false)
Definition: EMErrorDetail.cxx:74
EMErrorDetail::EMconvertedphoton_perigee_Covz0z0
double EMconvertedphoton_perigee_Covz0z0() const
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
ParametersBase.h
EMErrorDetail::EMconvertedphoton_perigee_Covphitheta
double EMconvertedphoton_perigee_Covphitheta() const
EMErrorDetail::EMtrack_perigee_Covz0theta
double EMtrack_perigee_Covz0theta() const
Covariance matrix item (z0,theta)
Definition: EMErrorDetail.cxx:537
EMErrorDetail::getCombinedErrorMatrix
Amg::MatrixX getCombinedErrorMatrix() const
E/P combined error matrix, natural size.
ClassName.h
An interface for getting the name of a class as a string.
EMErrorDetail::EMtrack_comb_Covetaeta
double EMtrack_comb_Covetaeta() const
Definition: EMErrorDetail.cxx:559
BaseInfo.h
Provide an interface for finding inheritance information at run time.
egammaParameters::EMTrack_Combined_Covphiphi
@ EMTrack_Combined_Covphiphi
track combined covariance matrix item (phi,phi)
Definition: egammaParamDefs.h:624
egammaParameters::EMTrack_phi0
@ EMTrack_phi0
azimuth angle of the momentum at the point of closest approach
Definition: egammaParamDefs.h:514
EMErrorDetail::EMtrack_comb_Covphieta
double EMtrack_comb_Covphieta() const
Definition: EMErrorDetail.cxx:557
EMErrorDetail::EMconvertedphoton_perigee_Covz0theta
double EMconvertedphoton_perigee_Covz0theta() const
EMErrorDetail::EMphoton_Covetaphi
double EMphoton_Covetaphi() const
Covariance matrix item (Eta,Phi)
Definition: EMErrorDetail.cxx:613
EMErrorDetail::EMphoton_Eclus
double EMphoton_Eclus() const
cluster energy
Definition: EMErrorDetail.cxx:610
egammaParameters::EMPhoton_phi0
@ EMPhoton_phi0
photon phi
Definition: egammaParamDefs.h:556
ClassName::name
static std::string name()
Return the name of class T as a string.
egammaParameters::EMConvertedPhoton_Covd0Eclus
@ EMConvertedPhoton_Covd0Eclus
converted photon covariance matrix item (d0,E)
Definition: egammaParamDefs.h:487
egammaParameters::EMConvertedPhoton_Covz0z0
@ EMConvertedPhoton_Covz0z0
converted photon covariance matrix item (z0,z0)
Definition: egammaParamDefs.h:489
egammaParameters::hasSiliconHits
@ hasSiliconHits
Definition: egammaParamDefs.h:646
egammaParameters::EMConvertedPhoton_Eclus
@ EMConvertedPhoton_Eclus
E estimate
Definition: egammaParamDefs.h:472
EMErrorDetail::EMtrack_perigee_Covd0phi
double EMtrack_perigee_Covd0phi() const
Covariance matrix item (d0,phi)
Definition: EMErrorDetail.cxx:532
egammaParameters::EMConvertedPhoton_Covphiphi
@ EMConvertedPhoton_Covphiphi
converted photon covariance matrix item (phi,phi)
Definition: egammaParamDefs.h:497
VxTrackAtVertex.h
egammaParameters::EMTrack_Combined_Covd0P
@ EMTrack_Combined_Covd0P
fitted track combined covariance matrix item (d0,P)
Definition: egammaParamDefs.h:614
EMErrorDetail::EMphoton_Covphiphi
double EMphoton_Covphiphi() const
Covariance matrix item (phi,phi)
Definition: EMErrorDetail.cxx:615
EMErrorDetail.h
EMErrorDetail::m_parameters
std::vector< std::pair< egammaParameters::ParamDef, double > > m_parameters
Definition: EMErrorDetail.h:392
egammaParameters::EMConvertedPhoton_momentum
@ EMConvertedPhoton_momentum
momentum of the converted photon
Definition: egammaParamDefs.h:582
EMErrorDetail
Definition: EMErrorDetail.h:30
EMErrorDetail::EMtrack_perigee_Covthetatheta
double EMtrack_perigee_Covthetatheta() const
Covariance matrix item (theta,theta)
Definition: EMErrorDetail.cxx:542
egammaParameters::EMPhoton_Eclus
@ EMPhoton_Eclus
photon energy
Definition: egammaParamDefs.h:558
EMErrorDetail::EMphoton_Covetaeta
double EMphoton_Covetaeta() const
Covariance matrix item (Eta,Eta)
Definition: EMErrorDetail.cxx:612
egammaParameters::EMTrack_Combined_Covd0eta
@ EMTrack_Combined_Covd0eta
track combined covariance matrix item (d0,eta)
Definition: egammaParamDefs.h:612
EMErrorDetail::EMconvertedphoton_perigee_Covthetatheta
double EMconvertedphoton_perigee_Covthetatheta() const
VxCandidate.h
egammaParameters::EMConvertedPhoton_Covz0Eclus
@ EMConvertedPhoton_Covz0Eclus
converted photon covariance matrix item (z0,E)
Definition: egammaParamDefs.h:495
EMErrorDetail::EMtrack_comb_Covz0eta
double EMtrack_comb_Covz0eta() const
Definition: EMErrorDetail.cxx:554
EMErrorDetail::EMtrack_perigee_phi0
double EMtrack_perigee_phi0() const
azimuth angle of the momentum at the point of closest approach
Definition: EMErrorDetail.cxx:523
EMErrorDetail::EMconvertedphoton_perigee_z0
double EMconvertedphoton_perigee_z0() const
egammaParameters::EMTrack_Covz0z0
@ EMTrack_Covz0z0
track perigee covariance matrix item (z0,z0)
Definition: egammaParamDefs.h:533
egammaParameters::EMConvertedPhoton_CovEclusEclus
@ EMConvertedPhoton_CovEclusEclus
converted photon covariance matrix item (E,E)
Definition: egammaParamDefs.h:507
EMErrorDetail::isElectron
static bool isElectron(const egamma *, bool forcePhoton)
Obsolete Fill the perigree parameter for converted photon.
Definition: EMErrorDetail.cxx:126
egammaParameters::EMTrack_CovphiEclus
@ EMTrack_CovphiEclus
track perigee covariance matrix item (phi,E)
Definition: egammaParamDefs.h:545
egammaParameters::EMConvertedPhoton_Covz0phi
@ EMConvertedPhoton_Covz0phi
converted photon covariance matrix item (z0,phi)
Definition: egammaParamDefs.h:491
EMErrorDetail::EMtrack_comb_Covphiphi
double EMtrack_comb_Covphiphi() const
Definition: EMErrorDetail.cxx:556
EMErrorDetail::caloEta
static double caloEta(const egamma *, double clusterEta)
Get the error on cluster energy, eta and phi.
Definition: EMErrorDetail.cxx:133
EMErrorDetail::EMphoton_eta
double EMphoton_eta() const
cluster eta
Definition: EMErrorDetail.cxx:608
EMShower.h
SG_ADD_BASE
SG_ADD_BASE(EMErrorDetail, egDetail)
EMErrorDetail::EMtrack_perigee_momentum
double EMtrack_perigee_momentum() const
momentum of the track fit
Definition: EMErrorDetail.cxx:528
egammaParameters::EMTrack_Combined_Covd0phi
@ EMTrack_Combined_Covd0phi
track combined covariance matrix item (d0,phi)
Definition: egammaParamDefs.h:610
EMErrorDetail::EMconvertedphoton_perigee_Covd0theta
double EMconvertedphoton_perigee_Covd0theta() const
EMErrorDetail::EMconvertedphoton_perigee_eta
double EMconvertedphoton_perigee_eta() const
egammaParameters::EMTrack_Combined_Covetaeta
@ EMTrack_Combined_Covetaeta
track combined covariance matrix item (eta,eta)
Definition: egammaParamDefs.h:630
egammaParameters::EMTrack_Covd0z0
@ EMTrack_Covd0z0
track perigee covariance matrix item ( )
Definition: egammaParamDefs.h:525
EMErrorDetail::EMtrack_perigee_Covd0d0
double EMtrack_perigee_Covd0d0() const
Covariance matrix item (d0,d0)
Definition: EMErrorDetail.cxx:530
EMErrorDetail::getUncombinedErrorMatrix
Amg::MatrixX getUncombinedErrorMatrix() const
E/P combined error matrix, natural size.
EMErrorDetail::m_parametersInt
std::vector< std::pair< egammaParameters::ParamDef, int > > m_parametersInt
Definition: EMErrorDetail.h:393
EMErrorDetail::EMconvertedphoton_perigee_Covz0phi
double EMconvertedphoton_perigee_Covz0phi() const
EMErrorDetail::EMtrack_perigee_Covd0theta
double EMtrack_perigee_Covd0theta() const
Covariance matrix item (d0,theta)
Definition: EMErrorDetail.cxx:533
egammaParameters::EMTrack_momentum
@ EMTrack_momentum
track momentum
Definition: egammaParamDefs.h:586
EMErrorDetail::className
virtual const std::string & className() const
Definition: EMErrorDetail.cxx:29
EMErrorDetail::EMtrack_perigee_Covd0z0
double EMtrack_perigee_Covd0z0() const
Covariance matrix item (d0,z0)
Definition: EMErrorDetail.cxx:531
EMErrorDetail::EMconvertedphoton_perigee_phi0
double EMconvertedphoton_perigee_phi0() const
EMErrorDetail::EMconvertedphoton_perigee_Covd0phi
double EMconvertedphoton_perigee_Covd0phi() const
EMErrorDetail::EMphoton_CovetaEclus
double EMphoton_CovetaEclus() const
Covariance matrix item (Eta,Eclus)
Definition: EMErrorDetail.cxx:614
fillSymmetric
void fillSymmetric(size_t i, size_t j, Scalar value)
method to fill elements for a symmetric matrix
Definition: AmgMatrixBasePlugin.h:124
egammaParameters::linkIndex
@ linkIndex
link index for multiple track and vertex matches
Definition: egammaParamDefs.h:574
egammaParameters::EMTrack_Combined_Covz0eta
@ EMTrack_Combined_Covz0eta
track combined covariance matrix item (z0,eta)
Definition: egammaParamDefs.h:620
egammaParameters::EMConvertedPhoton_CovphiEclus
@ EMConvertedPhoton_CovphiEclus
converted photon covariance matrix item (phi,E)
Definition: egammaParamDefs.h:501
drawFromPickle.sin
sin
Definition: drawFromPickle.py:36
EMErrorDetail::set_linkIndex
void set_linkIndex(int)
Set link index.
Definition: EMErrorDetail.cxx:632
egammaParameters::EMTrack_Combined_Covz0P
@ EMTrack_Combined_Covz0P
track combined covariance matrix item (z0,P)
Definition: egammaParamDefs.h:622
EMErrorDetail::EMphoton_CovEclusEclus
double EMphoton_CovEclusEclus() const
Covariance matrix item (theta,theta)
Definition: EMErrorDetail.cxx:617
EMErrorDetail::EMtrack_comb_CovphiP
double EMtrack_comb_CovphiP() const
Definition: EMErrorDetail.cxx:558
egammaParameters::EMConvertedPhoton_Covthetatheta
@ EMConvertedPhoton_Covthetatheta
converted photon covariance matrix item (theta,theta)
Definition: egammaParamDefs.h:503
EMErrorDetail::EMtrack_comb_CovetaP
double EMtrack_comb_CovetaP() const
Definition: EMErrorDetail.cxx:560
egDetail
Definition: egDetail.h:29
egammaParameters::EMTrack_Covz0phi
@ EMTrack_Covz0phi
track perigee covariance matrix item (z0,phi)
Definition: egammaParamDefs.h:535
EMErrorDetail::EMtrack_comb_Covz0P
double EMtrack_comb_Covz0P() const
Definition: EMErrorDetail.cxx:555
egammaParameters::EMConvertedPhoton_theta
@ EMConvertedPhoton_theta
theta of the converted photon
Definition: egammaParamDefs.h:476
egammaParameters::EMTrack_Covd0Eclus
@ EMTrack_Covd0Eclus
fitted track perigee covariance matrix item (d0,E)
Definition: egammaParamDefs.h:531
EMErrorDetail::s_className
static const std::string s_className
interfaces
Definition: EMErrorDetail.h:394
egammaParameters::EMTrack_Covz0Eclus
@ EMTrack_Covz0Eclus
track perigee covariance matrix item (z0,E)
Definition: egammaParamDefs.h:539
EMErrorDetail::EMphoton_phi0
double EMphoton_phi0() const
cluster phi
Definition: EMErrorDetail.cxx:609
EMErrorDetail::EMconvertedphoton_perigee_momentum
double EMconvertedphoton_perigee_momentum() const
egammaParameters::EMPhoton_CovEclusEclus
@ EMPhoton_CovEclusEclus
covariance matrix photon (E, E)
Definition: egammaParamDefs.h:571
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37
egammaParameters::EMTrack_Combined_Covd0d0
@ EMTrack_Combined_Covd0d0
track combined covariance matrix item (do,d0)
Definition: egammaParamDefs.h:606