ATLAS Offline Software
MissingMassCalculatorV2.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 /*
6 ------ MissingMassCalculator
7 ------ Author: Aliaksandr Pranko (appranko@lbl.gov)
8 ------ Code developers: David Rousseau (rousseau@lal.in2p3.fr), Dimitris Varouchas (Dimitris.Varouchas@cern.ch)
9 MissingMassCalculator is designed to reconstruct mass in
10 events where two particles decay into states with missing ET.
11 */
12 #ifndef MissingMassCalculatorV2_h
13 #define MissingMassCalculatorV2_h
14 
15 
16 
17 #if !defined (__CINT__) || defined (__MAKECINT__)
18 
19 #include <TRandom2.h>
20 #include <TH1.h>
21 #include <TGraph.h>
22 #include <TF1.h>
23 #include <TMath.h>
24 #include <TLorentzVector.h>
25 #include <TVector3.h>
26 #include <vector>
27 #include <TObject.h>
28 #include <TDirectory.h>
29 
30 #include <memory>
31 #include <string>
32 
37 
39 
40 #endif
41 
42 
43 namespace DiTauMassTools{
44 
46 
47  public:
48 
49  private:
50 
51  //---------------- structures
52  struct DitauStuff {
53  double Mditau_best; // best fitted M(ditau)
54  double Sign_best; // best significance of M(ditau) fit
55  TLorentzVector nutau1; // fitted 4-vec for neutrino from tau-1
56  TLorentzVector nutau2; // fitted 4-vec for neutrino from tau-2
57  TLorentzVector vistau1; // fitted 4-vec for visible tau-1
58  TLorentzVector vistau2; // fitted 4-vec for visible tau-2
59  double RMSoverMPV;
60  };
61 
62  TRandom2 m_randomGen;
63 
65 
66  bool m_fUseEfficiencyRecovery; // switch to turn ON/OFF re-fit in order to recover efficiency
67  bool m_fUseFloatStopping; // switch to turn ON/OFF floating stopping criterion
68 
72  int m_rmsStop;
73  double m_meanbinStop;
74 
75  // these are temporary vectors. Dclared globally to avoid construction/destruction
76  std::vector<TLorentzVector> m_nuvecsol1;
77  std::vector<TLorentzVector> m_nuvecsol2;
78 
79  std::vector<TLorentzVector> m_tauvecsol1;
80  std::vector<TLorentzVector> m_tauvecsol2;
81  std::vector<double> m_tauvecprob1;
82  std::vector<double> m_tauvecprob2;
83 
84  std::vector<TLorentzVector> m_nuvec1_tmp;
85  std::vector<TLorentzVector> m_nuvec2_tmp;
86 
87  TLorentzVector m_tautau_tmp;
88 
90 
92 
94 
97 
98  double m_prob_tmp;
99 
101  double m_mtautauSum;
102 
104  int m_seed;
105  // data member for the spaceWalker approach
106 
107  int m_iter0;
113  int m_nosol1;
114  int m_nosol2;
116  bool m_switch1;
117  bool m_switch2;
118 
120 
126 
130 
135 
136 
137  double m_mTau,m_mTau2;
139  double m_eTau1, m_eTau2;
149 
155  std::vector<double> m_probFinalSolOldVec;
156  std::vector<double> m_mtautauFinalSolOldVec;
157  std::vector<TLorentzVector> m_nu1FinalSolOldVec;
158  std::vector<TLorentzVector> m_nu2FinalSolOldVec;
159 
160  int m_nsol;
161  std::vector<double> m_probFinalSolVec;
162  std::vector<double> m_mtautauFinalSolVec;
163  std::vector<TLorentzVector> m_nu1FinalSolVec;
164  std::vector<TLorentzVector> m_nu2FinalSolVec;
165 
166 
169  double m_walkWeight;
171 
173 
174  TLorentzVector m_tauVec1,m_tauVec2;
180  double m_tauVec1E;
181  double m_tauVec2E;
182  double m_m2Nu1;
183  double m_m2Nu2;
184  double m_ET2v1;
185  double m_ET2v2;
186  double m_E2v1;
187  double m_E2v2;
188  double m_Ev2;
189  double m_Ev1;
190  double m_Mvis,m_Meff;
192 
193  //--- define histograms for histogram method
194  //--- upper limits need to be revisied in the future!!! It may be not enough for some analyses
195  std::shared_ptr<TH1F> m_fMfit_all;
196  std::shared_ptr<TH1F> m_fMEtP_all;
197  std::shared_ptr<TH1F> m_fMEtL_all;
198  std::shared_ptr<TH1F> m_fMnu1_all;
199  std::shared_ptr<TH1F> m_fMnu2_all;
200  std::shared_ptr<TH1F> m_fPhi1_all;
201  std::shared_ptr<TH1F> m_fPhi2_all;
202  std::shared_ptr<TGraph> m_fMfit_allGraph;
203  std::shared_ptr<TH1F> m_fMfit_allNoWeight;
204 
205  std::shared_ptr<TH1F> m_fPXfit1;
206  std::shared_ptr<TH1F> m_fPYfit1;
207  std::shared_ptr<TH1F> m_fPZfit1;
208  std::shared_ptr<TH1F> m_fPXfit2;
209  std::shared_ptr<TH1F> m_fPYfit2;
210  std::shared_ptr<TH1F> m_fPZfit2;
211 
212  // these histograms are used for the floating stopping criterion
213  std::shared_ptr<TH1F> m_fMmass_split1;
214  std::shared_ptr<TH1F> m_fMEtP_split1;
215  std::shared_ptr<TH1F> m_fMEtL_split1;
216  std::shared_ptr<TH1F> m_fMnu1_split1;
217  std::shared_ptr<TH1F> m_fMnu2_split1;
218  std::shared_ptr<TH1F> m_fPhi1_split1;
219  std::shared_ptr<TH1F> m_fPhi2_split1;
220  std::shared_ptr<TH1F> m_fMmass_split2;
221  std::shared_ptr<TH1F> m_fMEtP_split2;
222  std::shared_ptr<TH1F> m_fMEtL_split2;
223  std::shared_ptr<TH1F> m_fMnu1_split2;
224  std::shared_ptr<TH1F> m_fMnu2_split2;
225  std::shared_ptr<TH1F> m_fPhi1_split2;
226  std::shared_ptr<TH1F> m_fPhi2_split2;
227 
229 
238 
239  // for intermediate calc
240  TLorentzVector m_TLVdummy;
241 
242  //---------------- protected variables
243  DitauStuff m_fDitauStuffFit; // results based on fit method
244  DitauStuff m_fDitauStuffHisto; // results based on histo method
245 
246  int m_fApplyMassScale; // switch to apply mass scale correction
247 
248  int m_niter_fit1; // number of iterations for dR-dPhi scan
249  int m_niter_fit2; // number of iterations for MET-scan
250  int m_niter_fit3; // number of iterations for Mnu-scan
251  int m_NiterRandom; // number of random iterations (for lh, multiply or divide by 10 for ll and hh)
254  int m_RndmSeedAltering; // reset seed (not necessary by default)
255 
256 
257  int m_fJERsyst; // switch for JER systematics
258  double m_dTheta3d_binMin; // minimal step size for dTheta3D
259  double m_dTheta3d_binMax; // maximum step size for dTheta3D
260  double m_dRmax_tau; // maximum dR(nu-visTau)
261 
262  double m_MnuScanRange; // range of M(nunu) scan; M(nunu) range can be affected by selection cuts
263 
264 
265  //---------------- protected functions
266  void ClearDitauStuff(DitauStuff &fStuff);
267  void DoOutputInfo();
268  void PrintOtherInput();
269  void PrintResults();
270  int NuPsolution(TVector2 met_vec, double theta1, double phi1,
271  double theta2, double phi2, double &P1, double &P2); // keep this version for simple tests
272 
273 
274  inline int NuPsolutionV3(const double & mNu1, const double & mNu2, const double & phi1, const double & phi2,
275  int & nsol1, int & nsol2);
276 
277  inline int NuPsolutionLFV(const TVector2 & met_vec, const TLorentzVector & tau,
278  const double & m_nu, std::vector<TLorentzVector> &nu_vec);
279 
280 
281  protected:
282  inline int CheckSolutions(TLorentzVector nu_vec, TLorentzVector vis_vec, int decayType);
283  inline int TailCleanUp(const TLorentzVector & vis1, const TLorentzVector & nu1,
284  const TLorentzVector & vis2, const TLorentzVector & nu2,
285  const double & mmc_mass, const double & vis_mass, const double & eff_mass, const double & dphiTT);
286 
287 
288  inline int refineSolutions ( const double & M_nu1, const double & M_nu2,
289  const int nsol1, const int nsol2,
290  const double & Mvis, const double & Meff);
291 
292 
293 
294  inline void handleSolutions();
295 
296  inline double MassScale(int method, double mass, const int & tau_type1, const int & tau_type2);
297 
298 
299  // factor out parameter space walking and probablity computing
300  inline int DitauMassCalculatorV9walk();
301 
302 
303  // Calculates mass of lep+tau system in LFV X->lep+tau decays
304  // It is based on DitauMassCalculatorV9, not optimized for speed yet, simple phase-space scan
305  inline int DitauMassCalculatorV9lfv(bool refit);
306 
307 
308 
309  // only compute probability
310  inline int probCalculatorV9fast(
311  const double & phi1, const double & phi2,
312  const double & M_nu1, const double & M_nu2);
313 
314  // initialize the walker
315  inline void SpaceWalkerInit();
316 
317  //walk the walker
318  inline bool SpaceWalkerWalk();
319 
320  inline bool precomputeCache();
321 
322 
323  inline bool checkMEtInRange () ;
324  inline bool checkAllParamInRange () ;
325 
326  //----------------------------------------------
327  //
328  // ------------ Public methods ---------------
329  //
330  //______________________________________________
331 
332 public:
333 
335 
336  MissingMassCalculatorV2(MMCCalibrationSetV2::e aset, std::string m_paramFilePath) ;
337 
341 
342  int RunMissingMassCalculator( const xAOD::IParticle* part1, const xAOD::IParticle* part2, const xAOD::MissingET* met, const int& njets );
343 
344  //-------- Set Input Parameters
345  void FinalizeSettings(const xAOD::IParticle* part1, const xAOD::IParticle* part2, const xAOD::MissingET* met, const int& njets );
346  void SetNiterFit1(const int val) { m_niter_fit1=val; } // number of iterations per loop in dPhi loop
347  void SetNiterFit2(const int val) { m_niter_fit2=val; } // number of iterations per loop in MET loop
348  void SetNiterFit3(const int val) { m_niter_fit3=val; } // number of iterations per loop in Mnu loop
349  void SetNiterRandom(const int val) { m_NiterRandom=val; } // number of random iterations
350  void SetNsucStop(const int val) { m_NsucStop=val; } // Arrest criteria for Nsuccesses
351  void SetRMSStop(const int val) { m_RMSStop=val;}
352  void SetMeanbinStop(const double val) {m_meanbinStop=val;}
353  void SetRndmSeedAltering(const int val) { m_RndmSeedAltering=val; } // number of iterations per loop in Mnu loop
354  void SetdTheta3d_binMax(const double val) { m_dTheta3d_binMax=val; } // maximum step size for dTheta3D
355  void SetdTheta3d_binMin(const double val) { m_dTheta3d_binMin=val; } // minimal step size for dTheta3D
357 
358  void SetJERsyst(const int val) { m_fJERsyst=val; }
360 
361  void SetMnuScanRange(const double val) { m_MnuScanRange=val; }
362 
363  void SetProposalTryMEt(const double val) {m_proposalTryMEt=val; }
367 
370 
371  int GetNiterFit1() const { return m_niter_fit1; } // number of iterations per loop in dPhi loop
372  int GetNiterFit2() const { return m_niter_fit2; } // number of iterations per loop in MET loop
373  int GetNiterFit3() const { return m_niter_fit3; } // number of iterations per loop in Mnu loop
374  int GetNiterRandom() const { return m_niterRandomLocal; } // number of random iterations
375 
376  int GetNsucStop() const { return m_NsucStop; } // Arrest criteria for NSuc
377  int GetRMSStop() const { return m_RMSStop; }
378  double GetMeanbinStop() const { return m_meanbinStop;}
379  int GetRndmSeedAltering() const { return m_RndmSeedAltering; } // number of iterations per loop in Mnu loop
380 
384  int GetMarkovNAccept() const { return m_markovNAccept; }
385  int GetMarkovNFullscan() const { return m_markovNFullScan;}
386  double GetProposalTryMEt() const {return m_proposalTryMEt;}
387  double GetProposalTryPhi() const {return m_ProposalTryPhi;}
388  double GetProposalTryMnu() const {return m_ProposalTryMnu;}
389  double GetProposalTryEtau() const {return m_ProposalTryEtau;}
390 
391  void SetNsigmaMETscan_ll(const double val) { m_nsigma_METscan_ll=val; } // number of sigma's for MET-scan in ll events
392  void SetNsigmaMETscan_lh(const double val) { m_nsigma_METscan_lh=val; } // number of sigma's for MET-scan in lh events
393  void SetNsigmaMETscan_hh(const double val) { m_nsigma_METscan_hh=val; } // number of sigma's for MET-scan in hh events
394  void SetNsigmaMETscan(const double val) { m_nsigma_METscan=val; } // number of sigma's for MET-scan
395 
396  void SetUseFloatStopping(const bool val) { m_fUseFloatStopping=val; } // switch for floating stopping criterion
397  void SetBeamEnergy(const double val) { m_beamEnergy=val; }
399 
400  double GetmMaxError() const {return m_PrintmMaxError;}
401  double GetmMeanError() const { return m_PrintmMeanError;}
403 
404  int GetNNoSol() const {return m_markovNRejectNoSol;}
406  int GetNSol() const {return m_markovNAccept;}
407 
408 
409  //-------- Get results;
410  int StandardCollApprox(const TLorentzVector & tau_vec1, const TLorentzVector & tau_vec2, const TVector2 & met_vec, double &Mrec); // standard collinear approximation
411  Double_t maxFitting(Double_t *x, Double_t *par);
412 
413  // compute maximum from histo
414  double maxFromHist(TH1F *theHist, std::vector<double> & histInfo, const MaxHistStrategyV2::e maxHistStrategy=MaxHistStrategyV2::FIT,const int winHalfWidth=2,bool debug=false);
415  double maxFromHist(const std::shared_ptr<TH1F>& theHist, std::vector<double> & histInfo, const MaxHistStrategyV2::e maxHistStrategy=MaxHistStrategyV2::FIT,const int winHalfWidth=2,bool debug=false) {
416  return maxFromHist(theHist.get(), histInfo, maxHistStrategy, winHalfWidth, debug);
417  }
418 
419  TVector2 metvec_tmp;
420  inline double dTheta3DLimit(const int & tau_type, const int & limit_code,const double & P_tau);
421 
422 };
423 } // namespace DiTauMassTools
424 
425 #endif
DiTauMassTools::MissingMassCalculatorV2::m_Ev2
double m_Ev2
Definition: MissingMassCalculatorV2.h:188
RunTileTBRec.method
method
Definition: RunTileTBRec.py:73
DiTauMassTools::MissingMassCalculatorV2::m_Phi1Step
double m_Phi1Step
Definition: MissingMassCalculatorV2.h:144
DiTauMassTools::MissingMassCalculatorV2::m_fPhi2_split2
std::shared_ptr< TH1F > m_fPhi2_split2
Definition: MissingMassCalculatorV2.h:226
DiTauMassTools::MissingMassCalculatorV2::m_markovNFullScan
int m_markovNFullScan
Definition: MissingMassCalculatorV2.h:122
DiTauMassTools::MissingMassCalculatorV2::refineSolutions
int refineSolutions(const double &M_nu1, const double &M_nu2, const int nsol1, const int nsol2, const double &Mvis, const double &Meff)
Definition: MissingMassCalculatorV2.cxx:1884
DiTauMassTools::MissingMassCalculatorV2::m_fUseEfficiencyRecovery
bool m_fUseEfficiencyRecovery
Definition: MissingMassCalculatorV2.h:66
DiTauMassTools::MissingMassCalculatorV2::GetmMeanError
double GetmMeanError() const
Definition: MissingMassCalculatorV2.h:401
DiTauMassTools::MissingMassCalculatorV2::SetUseEfficiencyRecovery
void SetUseEfficiencyRecovery(const bool val)
Definition: MissingMassCalculatorV2.h:368
DiTauMassTools::MissingMassCalculatorV2::m_iter5
int m_iter5
Definition: MissingMassCalculatorV2.h:95
DiTauMassTools::MissingMassCalculatorV2::m_iter2
int m_iter2
Definition: MissingMassCalculatorV2.h:95
MissingMassProb.h
DiTauMassTools::MissingMassCalculatorV2::m_probFinalSolOldVec
std::vector< double > m_probFinalSolOldVec
Definition: MissingMassCalculatorV2.h:155
DiTauMassTools::MissingMassCalculatorV2::m_ET2v2
double m_ET2v2
Definition: MissingMassCalculatorV2.h:185
DiTauMassTools::MissingMassCalculatorV2::m_markovNRejectNoSol
int m_markovNRejectNoSol
Definition: MissingMassCalculatorV2.h:123
DiTauMassTools::MissingMassCalculatorV2::maxFromHist
double maxFromHist(TH1F *theHist, std::vector< double > &histInfo, const MaxHistStrategyV2::e maxHistStrategy=MaxHistStrategyV2::FIT, const int winHalfWidth=2, bool debug=false)
Definition: MissingMassCalculatorV2.cxx:1582
DiTauMassTools::MissingMassCalculatorV2::SetNiterFit3
void SetNiterFit3(const int val)
Definition: MissingMassCalculatorV2.h:348
DiTauMassTools::MissingMassCalculatorV2::m_fMEtL_split2
std::shared_ptr< TH1F > m_fMEtL_split2
Definition: MissingMassCalculatorV2.h:222
DiTauMassTools::MissingMassCalculatorV2::m_prob_tmp
double m_prob_tmp
Definition: MissingMassCalculatorV2.h:98
DiTauMassTools::MissingMassCalculatorV2::m_Mnu1XMax
double m_Mnu1XMax
Definition: MissingMassCalculatorV2.h:168
DiTauMassTools::MissingMassCalculatorV2::DitauStuff::RMSoverMPV
double RMSoverMPV
Definition: MissingMassCalculatorV2.h:59
DiTauMassTools::MissingMassCalculatorV2::m_nsigma_METscan_hh
double m_nsigma_METscan_hh
Definition: MissingMassCalculatorV2.h:93
DiTauMassTools::MissingMassCalculatorV2::m_markovNAccept
int m_markovNAccept
Definition: MissingMassCalculatorV2.h:125
DiTauMassTools::MissingMassCalculatorV2::SetNsigmaMETscan_ll
void SetNsigmaMETscan_ll(const double val)
Definition: MissingMassCalculatorV2.h:391
DiTauMassTools::MissingMassCalculatorV2::SetNiterFit2
void SetNiterFit2(const int val)
Definition: MissingMassCalculatorV2.h:347
DiTauMassTools::MissingMassCalculatorV2::GetRndmSeedAltering
int GetRndmSeedAltering() const
Definition: MissingMassCalculatorV2.h:379
DiTauMassTools::MissingMassCalculatorV2::m_testptn1
int m_testptn1
Definition: MissingMassCalculatorV2.h:109
DiTauMassTools::MissingMassCalculatorV2::m_fMfit_all
std::shared_ptr< TH1F > m_fMfit_all
Definition: MissingMassCalculatorV2.h:195
DiTauMassTools::MissingMassCalculatorV2::maxFromHist
double maxFromHist(const std::shared_ptr< TH1F > &theHist, std::vector< double > &histInfo, const MaxHistStrategyV2::e maxHistStrategy=MaxHistStrategyV2::FIT, const int winHalfWidth=2, bool debug=false)
Definition: MissingMassCalculatorV2.h:415
DiTauMassTools::MissingMassCalculatorV2::m_iterNuPV3
int m_iterNuPV3
Definition: MissingMassCalculatorV2.h:108
DiTauMassTools::MissingMassCalculatorV2::m_Mnu1ExcludeRange
double m_Mnu1ExcludeRange
Definition: MissingMassCalculatorV2.h:167
DiTauMassTools::MissingMassCalculatorV2::SetJERsyst
void SetJERsyst(const int val)
Definition: MissingMassCalculatorV2.h:358
DiTauMassTools::MissingMassCalculatorV2::m_Phi2Step
double m_Phi2Step
Definition: MissingMassCalculatorV2.h:144
DiTauMassTools::MissingMassCalculatorV2::SetRMSStop
void SetRMSStop(const int val)
Definition: MissingMassCalculatorV2.h:351
DiTauMassTools::MissingMassCalculatorV2::m_niterRandomLocal
int m_niterRandomLocal
Definition: MissingMassCalculatorV2.h:70
DiTauMassTools::MissingMassCalculatorV2::maxFitting
Double_t maxFitting(Double_t *x, Double_t *par)
Definition: MissingMassCalculatorV2.cxx:1562
DiTauMassTools::MissingMassCalculatorV2::m_fMnu1
TH1F * m_fMnu1
Definition: MissingMassCalculatorV2.h:232
DiTauMassTools::MissingMassCalculatorV2::m_fPhi1
TH1F * m_fPhi1
Definition: MissingMassCalculatorV2.h:230
DiTauMassTools::MissingMassCalculatorV2::m_iang2low
int m_iang2low
Definition: MissingMassCalculatorV2.h:95
DiTauMassTools::MissingMassCalculatorV2::GetNSol
int GetNSol() const
Definition: MissingMassCalculatorV2.h:406
DiTauMassTools::MissingMassCalculatorV2::m_nosol2
int m_nosol2
Definition: MissingMassCalculatorV2.h:114
DiTauMassTools::MissingMassCalculatorV2::m_MEtLRange
double m_MEtLRange
Definition: MissingMassCalculatorV2.h:145
DiTauMassTools::MissingMassCalculatorV2::SetNsigmaMETscan
void SetNsigmaMETscan(const double val)
Definition: MissingMassCalculatorV2.h:394
DiTauMassTools::MissingMassCalculatorV2::m_nuvecsol1
std::vector< TLorentzVector > m_nuvecsol1
Definition: MissingMassCalculatorV2.h:76
DiTauMassTools::MissingMassCalculatorV2::m_tauvecprob2
std::vector< double > m_tauvecprob2
Definition: MissingMassCalculatorV2.h:82
DiTauMassTools::MissingMassCalculatorV2::ClearDitauStuff
void ClearDitauStuff(DitauStuff &fStuff)
Definition: MissingMassCalculatorV2.cxx:358
DiTauMassTools::MissingMassCalculatorV2::SetNiterRandom
void SetNiterRandom(const int val)
Definition: MissingMassCalculatorV2.h:349
DiTauMassTools::MissingMassCalculatorV2::GetMarkovNRejectNoSol
int GetMarkovNRejectNoSol() const
Definition: MissingMassCalculatorV2.h:382
DiTauMassTools::MissingMassCalculatorV2::m_fMfit_allNoWeight
std::shared_ptr< TH1F > m_fMfit_allNoWeight
Definition: MissingMassCalculatorV2.h:203
DiTauMassTools::MissingMassCalculatorV2::DitauMassCalculatorV9lfv
int DitauMassCalculatorV9lfv(bool refit)
Definition: MissingMassCalculatorV2.cxx:1081
DiTauMassTools::MissingMassCalculatorV2::StandardCollApprox
int StandardCollApprox(const TLorentzVector &tau_vec1, const TLorentzVector &tau_vec2, const TVector2 &met_vec, double &Mrec)
Definition: MissingMassCalculatorV2.cxx:2959
DiTauMassTools::MissingMassCalculatorV2::m_eTau1Range
double m_eTau1Range
Definition: MissingMassCalculatorV2.h:150
DiTauMassTools::MissingMassCalculatorV2::GetMeanbinStop
double GetMeanbinStop() const
Definition: MissingMassCalculatorV2.h:378
DiTauMassTools::MissingMassCalculatorV2::~MissingMassCalculatorV2
~MissingMassCalculatorV2()
Definition: MissingMassCalculatorV2.cxx:262
DiTauMassTools::MissingMassCalculatorV2::GetProposalTryEtau
double GetProposalTryEtau() const
Definition: MissingMassCalculatorV2.h:389
DiTauMassTools::MissingMassCalculatorV2::m_fUseFloatStopping
bool m_fUseFloatStopping
Definition: MissingMassCalculatorV2.h:67
DiTauMassTools::MissingMassCalculatorV2::m_tauVec1P
double m_tauVec1P
Definition: MissingMassCalculatorV2.h:179
DiTauMassTools::MissingMassCalculatorV2::m_fDitauStuffFit
DitauStuff m_fDitauStuffFit
Definition: MissingMassCalculatorV2.h:243
DiTauMassTools::MissingMassCalculatorV2::m_debugThisIteration
bool m_debugThisIteration
Definition: MissingMassCalculatorV2.h:89
DiTauMassTools::MissingMassCalculatorV2::MissingMassCalculatorV2
MissingMassCalculatorV2(MMCCalibrationSetV2::e aset, std::string m_paramFilePath)
Definition: MissingMassCalculatorV2.cxx:37
DiTauMassTools::MissingMassCalculatorV2::m_fPXfit2
std::shared_ptr< TH1F > m_fPXfit2
Definition: MissingMassCalculatorV2.h:208
DiTauMassTools::MissingMassCalculatorV2::MassScale
double MassScale(int method, double mass, const int &tau_type1, const int &tau_type2)
Definition: MissingMassCalculatorV2.cxx:2110
HelperFunctions.h
DiTauMassTools::MissingMassCalculatorV2::m_Phi20
double m_Phi20
Definition: MissingMassCalculatorV2.h:141
DiTauMassTools::MissingMassCalculatorV2::DitauStuff::Mditau_best
double Mditau_best
Definition: MissingMassCalculatorV2.h:53
DiTauMassTools::MissingMassCalculatorV2::SetProposalTryMnu
void SetProposalTryMnu(const double val)
Definition: MissingMassCalculatorV2.h:365
DiTauMassTools::MissingMassCalculatorV2::m_nsigma_METscan_lh
double m_nsigma_METscan_lh
Definition: MissingMassCalculatorV2.h:93
DiTauMassTools::MissingMassCalculatorV2::m_fPhi1_split1
std::shared_ptr< TH1F > m_fPhi1_split1
Definition: MissingMassCalculatorV2.h:218
DiTauMassTools::MissingMassCalculatorV2::m_Mnu1Min
double m_Mnu1Min
Definition: MissingMassCalculatorV2.h:142
DiTauMassTools::MissingMassCalculatorV2::m_tauVec1M
double m_tauVec1M
Definition: MissingMassCalculatorV2.h:176
DiTauMassTools::MissingMassCalculatorV2::m_nuvec2_tmp
std::vector< TLorentzVector > m_nuvec2_tmp
Definition: MissingMassCalculatorV2.h:85
DiTauMassTools::MissingMassCalculatorV2::GetNMetroReject
int GetNMetroReject() const
Definition: MissingMassCalculatorV2.h:405
DiTauMassTools::MissingMassCalculatorV2::m_scanMnu2
bool m_scanMnu2
Definition: MissingMassCalculatorV2.h:172
DiTauMassTools::MissingMassCalculatorV2::m_nuvec1_tmp
std::vector< TLorentzVector > m_nuvec1_tmp
Definition: MissingMassCalculatorV2.h:84
DiTauMassTools::MissingMassCalculatorV2::m_fMmass_split1
std::shared_ptr< TH1F > m_fMmass_split1
Definition: MissingMassCalculatorV2.h:213
DiTauMassTools::MissingMassCalculatorV2::m_nsol
int m_nsol
Definition: MissingMassCalculatorV2.h:160
DiTauMassTools::MissingMassCalculatorV2::m_tauVec1E
double m_tauVec1E
Definition: MissingMassCalculatorV2.h:180
DiTauMassTools::MissingMassCalculatorV2::m_fMEtL_split1
std::shared_ptr< TH1F > m_fMEtL_split1
Definition: MissingMassCalculatorV2.h:215
DiTauMassTools::MissingMassCalculatorV2::DitauStuff::vistau1
TLorentzVector vistau1
Definition: MissingMassCalculatorV2.h:57
DiTauMassTools::MissingMassCalculatorV2::m_iter4
int m_iter4
Definition: MissingMassCalculatorV2.h:95
DiTauMassTools::MissingMassCalculatorV2::m_fPhi2_split1
std::shared_ptr< TH1F > m_fPhi2_split1
Definition: MissingMassCalculatorV2.h:219
DiTauMassTools::MissingMassCalculatorV2::m_switch2
bool m_switch2
Definition: MissingMassCalculatorV2.h:117
DiTauMassTools::MissingMassCalculatorV2::m_Mnu10
double m_Mnu10
Definition: MissingMassCalculatorV2.h:141
DiTauMassTools::MissingMassCalculatorV2::metvec_tmp
TVector2 metvec_tmp
Definition: MissingMassCalculatorV2.h:419
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:40
DiTauMassTools::MissingMassCalculatorV2::m_ProposalTryEtau
double m_ProposalTryEtau
Definition: MissingMassCalculatorV2.h:134
x
#define x
DiTauMassTools::MissingMassCalculatorV2::m_tauVec2M
double m_tauVec2M
Definition: MissingMassCalculatorV2.h:176
DiTauMassTools::MissingMassCalculatorV2::m_tauVec2P
double m_tauVec2P
Definition: MissingMassCalculatorV2.h:179
DiTauMassTools::MissingMassCalculatorV2::m_Phi1Range
double m_Phi1Range
Definition: MissingMassCalculatorV2.h:145
DiTauMassTools::MissingMassCalculatorV2::NuPsolutionLFV
int NuPsolutionLFV(const TVector2 &met_vec, const TLorentzVector &tau, const double &m_nu, std::vector< TLorentzVector > &nu_vec)
Definition: MissingMassCalculatorV2.cxx:828
DiTauMassTools::MissingMassCalculatorV2::Prob
MissingMassProb * Prob
Definition: MissingMassCalculatorV2.h:340
DiTauMassTools::MissingMassCalculatorV2::m_MEtPMax
double m_MEtPMax
Definition: MissingMassCalculatorV2.h:143
DiTauMassTools::MissingMassCalculatorV2::CheckSolutions
int CheckSolutions(TLorentzVector nu_vec, TLorentzVector vis_vec, int decayType)
DiTauMassTools::MissingMassCalculatorV2::m_eTau1Proposal
double m_eTau1Proposal
Definition: MissingMassCalculatorV2.h:148
dqt_zlumi_pandas.mass
mass
Definition: dqt_zlumi_pandas.py:170
DiTauMassTools::MissingMassCalculatorV2::m_MnuProposal
double m_MnuProposal
Definition: MissingMassCalculatorV2.h:146
DiTauMassTools::MissingMassCalculatorV2::m_fPhi2
TH1F * m_fPhi2
Definition: MissingMassCalculatorV2.h:231
DiTauMassTools::MissingMassCalculatorV2::DitauStuff
Definition: MissingMassCalculatorV2.h:52
DiTauMassTools::MissingMassCalculatorV2::m_eTau1Min
double m_eTau1Min
Definition: MissingMassCalculatorV2.h:150
DiTauMassTools::MissingMassCalculatorV2::SetProposalTryEtau
void SetProposalTryEtau(const double val)
Definition: MissingMassCalculatorV2.h:366
DiTauMassTools::MissingMassCalculatorV2::m_ProposalTryMnu
double m_ProposalTryMnu
Definition: MissingMassCalculatorV2.h:133
DiTauMassTools::MissingMassCalculatorV2::m_probFinalSolVec
std::vector< double > m_probFinalSolVec
Definition: MissingMassCalculatorV2.h:161
DiTauMassTools::MissingMassCalculatorV2::OutputInfo
MissingMassOutput OutputInfo
Definition: MissingMassCalculatorV2.h:339
DiTauMassTools::MissingMassCalculatorV2::NuPsolution
int NuPsolution(TVector2 met_vec, double theta1, double phi1, double theta2, double phi2, double &P1, double &P2)
Definition: MissingMassCalculatorV2.cxx:2939
DiTauMassTools::MissingMassCalculatorV2::m_nu2FinalSolOldVec
std::vector< TLorentzVector > m_nu2FinalSolOldVec
Definition: MissingMassCalculatorV2.h:158
DiTauMassTools::MissingMassCalculatorV2::DitauStuff::vistau2
TLorentzVector vistau2
Definition: MissingMassCalculatorV2.h:58
DiTauMassTools::MissingMassCalculatorV2::m_fMEtP_split1
std::shared_ptr< TH1F > m_fMEtP_split1
Definition: MissingMassCalculatorV2.h:214
DiTauMassTools::MissingMassCalculatorV2::m_Phi2Max
double m_Phi2Max
Definition: MissingMassCalculatorV2.h:143
DiTauMassTools::MissingMassCalculatorV2::m_metCovPhiSin
double m_metCovPhiSin
Definition: MissingMassCalculatorV2.h:147
DiTauMassTools::MissingMassCalculatorV2::m_metCovPhiCos
double m_metCovPhiCos
Definition: MissingMassCalculatorV2.h:147
DiTauMassTools::MissingMassCalculatorV2::m_fMety
TH1F * m_fMety
Definition: MissingMassCalculatorV2.h:235
DiTauMassTools::MissingMassCalculatorV2::GetProposalTryPhi
double GetProposalTryPhi() const
Definition: MissingMassCalculatorV2.h:387
DiTauMassTools::MissingMassCalculatorV2::handleSolutions
void handleSolutions()
Definition: MissingMassCalculatorV2.cxx:2167
DiTauMassTools::MissingMassCalculatorV2::m_eTau20
double m_eTau20
Definition: MissingMassCalculatorV2.h:140
DiTauMassTools::MissingMassCalculatorV2::RunMissingMassCalculator
int RunMissingMassCalculator(const xAOD::IParticle *part1, const xAOD::IParticle *part2, const xAOD::MissingET *met, const int &njets)
Definition: MissingMassCalculatorV2.cxx:266
DiTauMassTools::MissingMassCalculatorV2::m_Phi1Min
double m_Phi1Min
Definition: MissingMassCalculatorV2.h:142
DiTauMassTools::MissingMassCalculatorV2::m_Mnu2Min
double m_Mnu2Min
Definition: MissingMassCalculatorV2.h:142
DiTauMassTools::MissingMassCalculatorV2::m_fullParamSpaceScan
bool m_fullParamSpaceScan
Definition: MissingMassCalculatorV2.h:152
DiTauMassTools::MissingMassCalculatorV2::m_fPZfit2
std::shared_ptr< TH1F > m_fPZfit2
Definition: MissingMassCalculatorV2.h:210
part1
Definition: part1.py:1
DiTauMassTools::MissingMassCalculatorV2::m_iterNsuc
int m_iterNsuc
Definition: MissingMassCalculatorV2.h:115
DiTauMassTools
Definition: PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:22
DiTauMassTools::MissingMassCalculatorV2::m_Mvis
double m_Mvis
Definition: MissingMassCalculatorV2.h:190
DiTauMassTools::MissingMassCalculatorV2::m_Mnu20
double m_Mnu20
Definition: MissingMassCalculatorV2.h:141
DiTauMassTools::MissingMassCalculatorV2::m_Mnu2Step
double m_Mnu2Step
Definition: MissingMassCalculatorV2.h:144
DiTauMassTools::MissingMassCalculatorV2::m_RMSStop
int m_RMSStop
Definition: MissingMassCalculatorV2.h:253
DiTauMassTools::MissingMassCalculatorV2::m_mtautauSum
double m_mtautauSum
Definition: MissingMassCalculatorV2.h:101
DiTauMassTools::MissingMassCalculatorV2::GetNNoSol
int GetNNoSol() const
Definition: MissingMassCalculatorV2.h:404
met
Definition: IMETSignificance.h:24
DiTauMassTools::MissingMassCalculatorV2::m_Mnu1ExcludeMax
double m_Mnu1ExcludeMax
Definition: MissingMassCalculatorV2.h:167
DiTauMassTools::MissingMassCalculatorV2::m_fPXfit1
std::shared_ptr< TH1F > m_fPXfit1
Definition: MissingMassCalculatorV2.h:205
DiTauMassTools::MissingMassCalculatorV2::m_fMEtL_all
std::shared_ptr< TH1F > m_fMEtL_all
Definition: MissingMassCalculatorV2.h:197
DiTauMassTools::MissingMassCalculatorV2::SetBeamEnergy
void SetBeamEnergy(const double val)
Definition: MissingMassCalculatorV2.h:397
DiTauMassTools::MissingMassCalculatorV2::m_tauVec1Pz
double m_tauVec1Pz
Definition: MissingMassCalculatorV2.h:177
DiTauMassTools::MissingMassCalculatorV2::DoOutputInfo
void DoOutputInfo()
Definition: MissingMassCalculatorV2.cxx:373
DiTauMassTools::MissingMassCalculatorV2::m_sinPhi1
double m_sinPhi1
Definition: MissingMassCalculatorV2.h:170
DiTauMassTools::MissingMassCalculatorV2::DitauMassCalculatorV9walk
int DitauMassCalculatorV9walk()
Definition: MissingMassCalculatorV2.cxx:863
DiTauMassTools::MissingMassCalculatorV2::m_iang1low
int m_iang1low
Definition: MissingMassCalculatorV2.h:95
DiTauMassTools::MissingMassCalculatorV2::m_NsucStop
int m_NsucStop
Definition: MissingMassCalculatorV2.h:252
DiTauMassTools::MissingMassCalculatorV2::m_fMetx
TH1F * m_fMetx
Definition: MissingMassCalculatorV2.h:234
DiTauMassTools::MissingMassCalculatorV2::m_fPhi2_all
std::shared_ptr< TH1F > m_fPhi2_all
Definition: MissingMassCalculatorV2.h:201
DiTauMassTools::MissingMassCalculatorV2::m_Ev1
double m_Ev1
Definition: MissingMassCalculatorV2.h:189
DiTauMassTools::MissingMassCalculatorV2::m_tauVec1Phi
double m_tauVec1Phi
Definition: MissingMassCalculatorV2.h:175
DiTauMassTools::MissingMassCalculatorV2::m_fPhi1_split2
std::shared_ptr< TH1F > m_fPhi1_split2
Definition: MissingMassCalculatorV2.h:225
DiTauMassTools::MissingMassCalculatorV2::m_testdiscri2
int m_testdiscri2
Definition: MissingMassCalculatorV2.h:112
DiTauMassTools::MissingMassCalculatorV2::m_PrintmMeanError
double m_PrintmMeanError
Definition: MissingMassCalculatorV2.h:128
DiTauMassTools::MissingMassCalculatorV2::PrintOtherInput
void PrintOtherInput()
Definition: MissingMassCalculatorV2.cxx:476
DiTauMassTools::MissingMassCalculatorV2::m_proposalTryMEt
double m_proposalTryMEt
Definition: MissingMassCalculatorV2.h:131
DiTauMassTools::MissingMassCalculatorV2::m_switch1
bool m_switch1
Definition: MissingMassCalculatorV2.h:116
DiTauMassTools::MaxHistStrategyV2::FIT
@ FIT
Definition: PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:26
DiTauMassTools::MissingMassCalculatorV2::m_m2Nu1
double m_m2Nu1
Definition: MissingMassCalculatorV2.h:182
DiTauMassTools::MissingMassCalculatorV2::m_fMEtP_split2
std::shared_ptr< TH1F > m_fMEtP_split2
Definition: MissingMassCalculatorV2.h:221
DiTauMassTools::MissingMassCalculatorV2::m_Meff
double m_Meff
Definition: MissingMassCalculatorV2.h:190
DiTauMassTools::MissingMassCalculatorV2::m_totalProbSum
double m_totalProbSum
Definition: MissingMassCalculatorV2.h:100
DiTauMassTools::MissingMassCalculatorV2::checkMEtInRange
bool checkMEtInRange()
Definition: MissingMassCalculatorV2.cxx:2821
DiTauMassTools::MissingMassCalculatorV2::m_RndmSeedAltering
int m_RndmSeedAltering
Definition: MissingMassCalculatorV2.h:254
DiTauMassTools::MissingMassCalculatorV2::SetMnuScanRange
void SetMnuScanRange(const double val)
Definition: MissingMassCalculatorV2.h:361
DiTauMassTools::MissingMassCalculatorV2::m_MnuScanRange
double m_MnuScanRange
Definition: MissingMassCalculatorV2.h:262
DiTauMassTools::MissingMassCalculatorV2::SetNiterFit1
void SetNiterFit1(const int val)
Definition: MissingMassCalculatorV2.h:346
DiTauMassTools::MissingMassCalculatorV2::m_nu2FinalSolVec
std::vector< TLorentzVector > m_nu2FinalSolVec
Definition: MissingMassCalculatorV2.h:164
DiTauMassTools::MissingMassCalculatorV2::DitauStuff::nutau1
TLorentzVector nutau1
Definition: MissingMassCalculatorV2.h:55
DiTauMassTools::MissingMassCalculatorV2::m_tauvecsol1
std::vector< TLorentzVector > m_tauvecsol1
Definition: MissingMassCalculatorV2.h:79
DiTauMassTools::MissingMassCalculatorV2::m_fMnu2
TH1F * m_fMnu2
Definition: MissingMassCalculatorV2.h:233
DiTauMassTools::MissingMassCalculatorV2::m_cosPhi2
double m_cosPhi2
Definition: MissingMassCalculatorV2.h:170
xAOD::MissingET_v1
Principal data object for Missing ET.
Definition: MissingET_v1.h:25
DiTauMassTools::MissingMassCalculatorV2::m_tauVec1
TLorentzVector m_tauVec1
Definition: MissingMassCalculatorV2.h:174
DiTauMassTools::MissingMassCalculatorV2::GetNsucStop
int GetNsucStop() const
Definition: MissingMassCalculatorV2.h:376
DiTauMassTools::MissingMassCalculatorV2::m_nu1FinalSolVec
std::vector< TLorentzVector > m_nu1FinalSolVec
Definition: MissingMassCalculatorV2.h:163
DiTauMassTools::MissingMassCalculatorV2::m_reRunWithBestMET
bool m_reRunWithBestMET
Definition: MissingMassCalculatorV2.h:191
DiTauMassTools::MissingMassCalculatorV2::precomputeCache
bool precomputeCache()
Definition: MissingMassCalculatorV2.cxx:2735
DiTauMassTools::MissingMassCalculatorV2::m_niter_fit1
int m_niter_fit1
Definition: MissingMassCalculatorV2.h:248
DiTauMassTools::MissingMassCalculatorV2::GetNiterRandom
int GetNiterRandom() const
Definition: MissingMassCalculatorV2.h:374
DiTauMassTools::MissingMassCalculatorV2::m_MEtPRange
double m_MEtPRange
Definition: MissingMassCalculatorV2.h:145
DiTauMassTools::MissingMassCalculatorV2::GetProposalTryMnu
double GetProposalTryMnu() const
Definition: MissingMassCalculatorV2.h:388
DiTauMassTools::MissingMassCalculatorV2::m_tauVec2Px
double m_tauVec2Px
Definition: MissingMassCalculatorV2.h:178
DiTauMassTools::MissingMassCalculatorV2::m_Phi2
double m_Phi2
Definition: MissingMassCalculatorV2.h:138
DiTauMassTools::MissingMassCalculatorV2::m_ProposalTryPhi
double m_ProposalTryPhi
Definition: MissingMassCalculatorV2.h:132
xAOD::eventNumber
eventNumber
Definition: EventInfo_v1.cxx:124
DiTauMassTools::MissingMassCalculatorV2::SetMeanbinStop
void SetMeanbinStop(const double val)
Definition: MissingMassCalculatorV2.h:352
DiTauMassTools::MissingMassCalculatorV2::m_eTau2Min
double m_eTau2Min
Definition: MissingMassCalculatorV2.h:151
DiTauMassTools::MissingMassCalculatorV2::m_fPYfit2
std::shared_ptr< TH1F > m_fPYfit2
Definition: MissingMassCalculatorV2.h:209
DiTauMassTools::MissingMassCalculatorV2::m_tauVec1Py
double m_tauVec1Py
Definition: MissingMassCalculatorV2.h:177
DiTauMassTools::MissingMassCalculatorV2::m_Mnu1Max
double m_Mnu1Max
Definition: MissingMassCalculatorV2.h:143
DiTauMassTools::MissingMassCalculatorV2::SetUseFloatStopping
void SetUseFloatStopping(const bool val)
Definition: MissingMassCalculatorV2.h:396
DiTauMassTools::MissingMassCalculatorV2::m_niter_fit3
int m_niter_fit3
Definition: MissingMassCalculatorV2.h:250
DiTauMassTools::MissingMassCalculatorV2::SetRndmSeedAltering
void SetRndmSeedAltering(const int val)
Definition: MissingMassCalculatorV2.h:353
DiTauMassTools::MissingMassCalculatorV2::m_PhiProposal
double m_PhiProposal
Definition: MissingMassCalculatorV2.h:146
DiTauMassTools::MissingMassCalculatorV2::GetProposalTryMEt
double GetProposalTryMEt() const
Definition: MissingMassCalculatorV2.h:386
DiTauMassTools::MissingMassCalculatorV2::TailCleanUp
int TailCleanUp(const TLorentzVector &vis1, const TLorentzVector &nu1, const TLorentzVector &vis2, const TLorentzVector &nu2, const double &mmc_mass, const double &vis_mass, const double &eff_mass, const double &dphiTT)
Definition: MissingMassCalculatorV2.cxx:2055
DiTauMassTools::MissingMassCalculatorV2::m_iter0
int m_iter0
Definition: MissingMassCalculatorV2.h:107
DiTauMassTools::MissingMassCalculatorV2::GetMarkovNAccept
int GetMarkovNAccept() const
Definition: MissingMassCalculatorV2.h:384
DiTauMassTools::MissingMassCalculatorV2::m_MEtLMax
double m_MEtLMax
Definition: MissingMassCalculatorV2.h:143
part2
Definition: part2.py:1
DiTauMassTools::MissingMassCalculatorV2::m_fApplyMassScale
int m_fApplyMassScale
Definition: MissingMassCalculatorV2.h:246
DiTauMassTools::MissingMassCalculatorV2::m_fJERsyst
int m_fJERsyst
Definition: MissingMassCalculatorV2.h:257
DiTauMassTools::MissingMassCalculatorV2::m_dTheta3d_binMin
double m_dTheta3d_binMin
Definition: MissingMassCalculatorV2.h:258
DiTauMassTools::MissingMassCalculatorV2::m_meanbinToBeEvaluated
bool m_meanbinToBeEvaluated
Definition: MissingMassCalculatorV2.h:119
DiTauMassTools::MissingMassCalculatorV2::m_markovCountDuplicate
int m_markovCountDuplicate
Definition: MissingMassCalculatorV2.h:121
DiTauMassTools::MissingMassCalculatorV2::m_tauvecsol2
std::vector< TLorentzVector > m_tauvecsol2
Definition: MissingMassCalculatorV2.h:80
DiTauMassTools::MissingMassCalculatorV2::m_tauVec2
TLorentzVector m_tauVec2
Definition: MissingMassCalculatorV2.h:174
DiTauMassTools::MissingMassCalculatorV2::SetLFVLeplepRefit
void SetLFVLeplepRefit(const bool val)
Definition: MissingMassCalculatorV2.h:398
DiTauMassTools::MissingMassCalculatorV2::m_Phi2Range
double m_Phi2Range
Definition: MissingMassCalculatorV2.h:145
DiTauMassTools::MissingMassCalculatorV2::m_eTau2Range
double m_eTau2Range
Definition: MissingMassCalculatorV2.h:151
DiTauMassTools::MissingMassCalculatorV2::m_fMnu1_split2
std::shared_ptr< TH1F > m_fMnu1_split2
Definition: MissingMassCalculatorV2.h:223
DiTauMassTools::MissingMassCalculatorV2::m_eTau10
double m_eTau10
Definition: MissingMassCalculatorV2.h:140
DiTauMassTools::MissingMassCalculatorV2::m_tauVec2Py
double m_tauVec2Py
Definition: MissingMassCalculatorV2.h:178
MissingET.h
DiTauMassTools::MissingMassCalculatorV2::GetNiterFit3
int GetNiterFit3() const
Definition: MissingMassCalculatorV2.h:373
DiTauMassTools::MissingMassCalculatorV2::SetApplyMassScale
void SetApplyMassScale(const int val)
Definition: MissingMassCalculatorV2.h:359
DiTauMassTools::MissingMassCalculatorV2::m_iterTheta3d
int m_iterTheta3d
Definition: MissingMassCalculatorV2.h:96
DiTauMassTools::MissingMassCalculatorV2::m_beamEnergy
double m_beamEnergy
Definition: MissingMassCalculatorV2.h:93
DiTauMassTools::MissingMassCalculatorV2::m_MEtP0
double m_MEtP0
Definition: MissingMassCalculatorV2.h:141
DiTauMassTools::MissingMassCalculatorV2::m_eTau2Proposal
double m_eTau2Proposal
Definition: MissingMassCalculatorV2.h:148
DiTauMassTools::MissingMassCalculatorV2::m_nosol1
int m_nosol1
Definition: MissingMassCalculatorV2.h:113
debug
const bool debug
Definition: MakeUncertaintyPlots.cxx:53
DiTauMassTools::MissingMassCalculatorV2::SetdTheta3d_binMax
void SetdTheta3d_binMax(const double val)
Definition: MissingMassCalculatorV2.h:354
createCoolChannelIdFile.par
par
Definition: createCoolChannelIdFile.py:29
DiTauMassTools::MissingMassOutput
Definition: MissingMassOutput.h:21
DiTauMassTools::MissingMassCalculatorV2::m_lfvLeplepRefit
bool m_lfvLeplepRefit
Definition: MissingMassCalculatorV2.h:89
DiTauMassTools::MissingMassCalculatorV2::m_Mnu2Max
double m_Mnu2Max
Definition: MissingMassCalculatorV2.h:143
DiTauMassTools::MissingMassCalculatorV2::m_fPhi1_all
std::shared_ptr< TH1F > m_fPhi1_all
Definition: MissingMassCalculatorV2.h:200
DiTauMassTools::MissingMassCalculatorV2::m_rmsStop
int m_rmsStop
Definition: MissingMassCalculatorV2.h:72
DiTauMassTools::MissingMassCalculatorV2::m_Phi10
double m_Phi10
Definition: MissingMassCalculatorV2.h:141
DiTauMassTools::MissingMassCalculatorV2::m_NiterRandom
int m_NiterRandom
Definition: MissingMassCalculatorV2.h:251
DiTauMassTools::MissingMassCalculatorV2::m_nsigma_METscan
double m_nsigma_METscan
Definition: MissingMassCalculatorV2.h:93
DiTauMassTools::MissingMassCalculatorV2::m_Phi2Min
double m_Phi2Min
Definition: MissingMassCalculatorV2.h:142
DiTauMassTools::MissingMassCalculatorV2::m_eTau1Max
double m_eTau1Max
Definition: MissingMassCalculatorV2.h:150
DiTauMassTools::MissingMassCalculatorV2::m_mtautauFinalSolOldVec
std::vector< double > m_mtautauFinalSolOldVec
Definition: MissingMassCalculatorV2.h:156
DiTauMassTools::MissingMassCalculatorV2::m_TLVdummy
TLorentzVector m_TLVdummy
Definition: MissingMassCalculatorV2.h:240
DiTauMassTools::MissingMassCalculatorV2::m_fMnu2_all
std::shared_ptr< TH1F > m_fMnu2_all
Definition: MissingMassCalculatorV2.h:199
DiTauMassTools::MissingMassCalculatorV2::m_nsolOld
int m_nsolOld
Definition: MissingMassCalculatorV2.h:154
DiTauMassTools::MissingMassCalculatorV2::m_nsigma_METscan_ll
double m_nsigma_METscan_ll
Definition: MissingMassCalculatorV2.h:93
DiTauMassTools::MissingMassCalculatorV2::m_Mnu1XRange
double m_Mnu1XRange
Definition: MissingMassCalculatorV2.h:168
DiTauMassTools::MissingMassCalculatorV2::m_fTauProb
TH1F * m_fTauProb
Definition: MissingMassCalculatorV2.h:237
DiTauMassTools::MissingMassCalculatorV2::m_eTau1
double m_eTau1
Definition: MissingMassCalculatorV2.h:139
DiTauMassTools::MissingMassCalculatorV2::m_mmcCalibrationSet
MMCCalibrationSetV2::e m_mmcCalibrationSet
Definition: MissingMassCalculatorV2.h:64
DiTauMassTools::MissingMassCalculatorV2
Definition: MissingMassCalculatorV2.h:45
DiTauMassTools::MissingMassCalculatorV2::m_fDitauStuffHisto
DitauStuff m_fDitauStuffHisto
Definition: MissingMassCalculatorV2.h:244
DiTauMassTools::MissingMassCalculatorV2::m_MEtPStep
double m_MEtPStep
Definition: MissingMassCalculatorV2.h:144
DiTauMassTools::MissingMassCalculatorV2::PrintResults
void PrintResults()
Definition: MissingMassCalculatorV2.cxx:518
DiTauMassTools::MissingMassCalculatorV2::m_tauVec2Pz
double m_tauVec2Pz
Definition: MissingMassCalculatorV2.h:178
DiTauMassTools::MissingMassCalculatorV2::m_tauVec2E
double m_tauVec2E
Definition: MissingMassCalculatorV2.h:181
MissingMassInput.h
DiTauMassTools::MissingMassCalculatorV2::m_MEtProposal
double m_MEtProposal
Definition: MissingMassCalculatorV2.h:146
DiTauMassTools::MissingMassCalculatorV2::m_mTau
double m_mTau
Definition: MissingMassCalculatorV2.h:137
DiTauMassTools::MMCCalibrationSetV2::e
e
Definition: PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:36
DiTauMassTools::MissingMassCalculatorV2::m_fFitting
TF1 * m_fFitting
Definition: MissingMassCalculatorV2.h:228
DiTauMassTools::MissingMassProb
Definition: MissingMassProb.h:27
DiTauMassTools::MissingMassCalculatorV2::m_eventNumber
int m_eventNumber
Definition: MissingMassCalculatorV2.h:103
DiTauMassTools::MissingMassCalculatorV2::m_MEtL
double m_MEtL
Definition: MissingMassCalculatorV2.h:138
DiTauMassTools::MissingMassCalculatorV2::m_mtautauFinalSolVec
std::vector< double > m_mtautauFinalSolVec
Definition: MissingMassCalculatorV2.h:162
DiTauMassTools::MissingMassCalculatorV2::m_Mnu1XMin
double m_Mnu1XMin
Definition: MissingMassCalculatorV2.h:168
DiTauMassTools::MissingMassCalculatorV2::m_seed
int m_seed
Definition: MissingMassCalculatorV2.h:104
DiTauMassTools::MissingMassCalculatorV2::SetdTheta3d_binMin
void SetdTheta3d_binMin(const double val)
Definition: MissingMassCalculatorV2.h:355
DiTauMassTools::MissingMassCalculatorV2::dTheta3DLimit
double dTheta3DLimit(const int &tau_type, const int &limit_code, const double &P_tau)
Definition: MissingMassCalculatorV2.cxx:2837
DiTauMassTools::MissingMassCalculatorV2::m_MEtPMin
double m_MEtPMin
Definition: MissingMassCalculatorV2.h:142
DiTauMassTools::MissingMassCalculatorV2::m_PrintmMaxError
double m_PrintmMaxError
Definition: MissingMassCalculatorV2.h:127
DiTauMassTools::MaxHistStrategyV2::e
e
Definition: PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:26
DiTauMassTools::MissingMassCalculatorV2::m_fMnu1_all
std::shared_ptr< TH1F > m_fMnu1_all
Definition: MissingMassCalculatorV2.h:198
DiTauMassTools::MissingMassCalculatorV2::m_E2v1
double m_E2v1
Definition: MissingMassCalculatorV2.h:186
TH1F
Definition: rootspy.cxx:320
DiTauMassTools::MissingMassCalculatorV2::m_E2v2
double m_E2v2
Definition: MissingMassCalculatorV2.h:187
DiTauMassTools::MissingMassCalculatorV2::NuPsolutionV3
int NuPsolutionV3(const double &mNu1, const double &mNu2, const double &phi1, const double &phi2, int &nsol1, int &nsol2)
Definition: MissingMassCalculatorV2.cxx:623
DiTauMassTools::MissingMassCalculatorV2::m_Mnu1Range
double m_Mnu1Range
Definition: MissingMassCalculatorV2.h:145
DiTauMassTools::MissingMassCalculatorV2::m_Phi1
double m_Phi1
Definition: MissingMassCalculatorV2.h:138
DiTauMassTools::MissingMassCalculatorV2::GetmMaxError
double GetmMaxError() const
Definition: MissingMassCalculatorV2.h:400
DiTauMassTools::MissingMassCalculatorV2::SetProposalTryPhi
void SetProposalTryPhi(const double val)
Definition: MissingMassCalculatorV2.h:364
DiTauMassTools::MissingMassCalculatorV2::SpaceWalkerInit
void SpaceWalkerInit()
Definition: MissingMassCalculatorV2.cxx:2434
DiTauMassTools::MissingMassCalculatorV2::m_scanMnu1
bool m_scanMnu1
Definition: MissingMassCalculatorV2.h:172
DiTauMassTools::MissingMassCalculatorV2::GetRMSStop
int GetRMSStop() const
Definition: MissingMassCalculatorV2.h:377
DiTauMassTools::MissingMassCalculatorV2::DitauStuff::nutau2
TLorentzVector nutau2
Definition: MissingMassCalculatorV2.h:56
DiTauMassTools::MissingMassCalculatorV2::m_tautau_tmp
TLorentzVector m_tautau_tmp
Definition: MissingMassCalculatorV2.h:87
Pythia8_RapidityOrderMPI.val
val
Definition: Pythia8_RapidityOrderMPI.py:14
DiTauMassTools::MissingMassCalculatorV2::m_Mnu1
double m_Mnu1
Definition: MissingMassCalculatorV2.h:138
DiTauMassTools::MissingMassCalculatorV2::m_ET2v1
double m_ET2v1
Definition: MissingMassCalculatorV2.h:184
DiTauMassTools::MissingMassCalculatorV2::m_Mnu2Range
double m_Mnu2Range
Definition: MissingMassCalculatorV2.h:145
DiTauMassTools::MissingMassCalculatorV2::GetMarkovCountDuplicate
int GetMarkovCountDuplicate() const
Definition: MissingMassCalculatorV2.h:381
DiTauMassTools::MissingMassCalculatorV2::SetProposalTryMEt
void SetProposalTryMEt(const double val)
Definition: MissingMassCalculatorV2.h:363
DiTauMassTools::MissingMassCalculatorV2::probCalculatorV9fast
int probCalculatorV9fast(const double &phi1, const double &phi2, const double &M_nu1, const double &M_nu2)
Definition: MissingMassCalculatorV2.cxx:1858
DiTauMassTools::MissingMassInput
Definition: MissingMassInput.h:19
DiTauMassTools::MissingMassCalculatorV2::GetUseEfficiencyRecovery
bool GetUseEfficiencyRecovery() const
Definition: MissingMassCalculatorV2.h:369
DiTauMassTools::MissingMassCalculatorV2::m_fMnu1_split1
std::shared_ptr< TH1F > m_fMnu1_split1
Definition: MissingMassCalculatorV2.h:216
DiTauMassTools::MissingMassCalculatorV2::SetEventNumber
void SetEventNumber(const int eventNumber)
Definition: MissingMassCalculatorV2.h:356
DiTauMassTools::MissingMassCalculatorV2::m_meanbinStop
double m_meanbinStop
Definition: MissingMassCalculatorV2.h:73
DiTauMassTools::MissingMassCalculatorV2::m_PrintmInvWidth2Error
double m_PrintmInvWidth2Error
Definition: MissingMassCalculatorV2.h:129
DiTauMassTools::MissingMassCalculatorV2::m_nsolmax
int m_nsolmax
Definition: MissingMassCalculatorV2.h:69
DiTauMassTools::MissingMassCalculatorV2::preparedInput
MissingMassInput preparedInput
Definition: MissingMassCalculatorV2.h:338
DiTauMassTools::MissingMassCalculatorV2::SpaceWalkerWalk
bool SpaceWalkerWalk()
Definition: MissingMassCalculatorV2.cxx:2611
DiTauMassTools::MissingMassCalculatorV2::m_Mnu1Exclude
bool m_Mnu1Exclude
Definition: MissingMassCalculatorV2.h:153
DiTauMassTools::MissingMassCalculatorV2::m_fMnu2_split1
std::shared_ptr< TH1F > m_fMnu2_split1
Definition: MissingMassCalculatorV2.h:217
DiTauMassTools::MissingMassCalculatorV2::GetNiterFit2
int GetNiterFit2() const
Definition: MissingMassCalculatorV2.h:372
DiTauMassTools::MissingMassCalculatorV2::m_Mnu1ExcludeMin
double m_Mnu1ExcludeMin
Definition: MissingMassCalculatorV2.h:167
DiTauMassTools::MissingMassCalculatorV2::m_m2Nu2
double m_m2Nu2
Definition: MissingMassCalculatorV2.h:183
DiTauMassTools::MissingMassCalculatorV2::m_testdiscri1
int m_testdiscri1
Definition: MissingMassCalculatorV2.h:111
DiTauMassTools::MissingMassCalculatorV2::m_Mnu2
double m_Mnu2
Definition: MissingMassCalculatorV2.h:138
DiTauMassTools::MissingMassCalculatorV2::GetNiterFit1
int GetNiterFit1() const
Definition: MissingMassCalculatorV2.h:371
DiTauMassTools::MissingMassCalculatorV2::m_nsolfinalmax
int m_nsolfinalmax
Definition: MissingMassCalculatorV2.h:69
DiTauMassTools::MissingMassCalculatorV2::m_dRmax_tau
double m_dRmax_tau
Definition: MissingMassCalculatorV2.h:260
DiTauMassTools::MissingMassCalculatorV2::checkAllParamInRange
bool checkAllParamInRange()
Definition: MissingMassCalculatorV2.cxx:2780
DiTauMassTools::MissingMassCalculatorV2::SetNsigmaMETscan_lh
void SetNsigmaMETscan_lh(const double val)
Definition: MissingMassCalculatorV2.h:392
DiTauMassTools::MissingMassCalculatorV2::m_nsigma_METscan_lfv_lh
double m_nsigma_METscan_lfv_lh
Definition: MissingMassCalculatorV2.h:93
DiTauMassTools::MissingMassCalculatorV2::m_Phi1Max
double m_Phi1Max
Definition: MissingMassCalculatorV2.h:143
DiTauMassTools::MissingMassCalculatorV2::m_tauVec2Phi
double m_tauVec2Phi
Definition: MissingMassCalculatorV2.h:175
DiTauMassTools::MissingMassCalculatorV2::m_MEtP
double m_MEtP
Definition: MissingMassCalculatorV2.h:138
DiTauMassTools::MissingMassCalculatorV2::m_fMEtP_all
std::shared_ptr< TH1F > m_fMEtP_all
Definition: MissingMassCalculatorV2.h:196
DiTauMassTools::MissingMassCalculatorV2::m_randomGen
TRandom2 m_randomGen
Definition: MissingMassCalculatorV2.h:62
MissingMassOutput.h
DiTauMassTools::MissingMassCalculatorV2::m_dTheta3d_binMax
double m_dTheta3d_binMax
Definition: MissingMassCalculatorV2.h:259
DiTauMassTools::MissingMassCalculatorV2::m_iang2high
int m_iang2high
Definition: MissingMassCalculatorV2.h:95
DiTauMassTools::MissingMassCalculatorV2::GetMarkovNFullscan
int GetMarkovNFullscan() const
Definition: MissingMassCalculatorV2.h:385
DiTauMassTools::MissingMassCalculatorV2::FinalizeSettings
void FinalizeSettings(const xAOD::IParticle *part1, const xAOD::IParticle *part2, const xAOD::MissingET *met, const int &njets)
Definition: MissingMassCalculatorV2.cxx:2984
DiTauMassTools::MissingMassCalculatorV2::m_fMfit_allGraph
std::shared_ptr< TGraph > m_fMfit_allGraph
Definition: MissingMassCalculatorV2.h:202
DiTauMassTools::MissingMassCalculatorV2::m_Mnu1Step
double m_Mnu1Step
Definition: MissingMassCalculatorV2.h:144
DiTauMassTools::MissingMassCalculatorV2::m_nu1FinalSolOldVec
std::vector< TLorentzVector > m_nu1FinalSolOldVec
Definition: MissingMassCalculatorV2.h:157
DiTauMassTools::MissingMassCalculatorV2::GetMarkovNRejectMetropolis
int GetMarkovNRejectMetropolis() const
Definition: MissingMassCalculatorV2.h:383
DiTauMassTools::MissingMassCalculatorV2::m_testptn2
int m_testptn2
Definition: MissingMassCalculatorV2.h:110
DiTauMassTools::MissingMassCalculatorV2::m_nsigma_METscan_lfv_ll
double m_nsigma_METscan_lfv_ll
Definition: MissingMassCalculatorV2.h:93
DiTauMassTools::MissingMassCalculatorV2::m_cosPhi1
double m_cosPhi1
Definition: MissingMassCalculatorV2.h:170
DiTauMassTools::MissingMassCalculatorV2::m_fMmass_split2
std::shared_ptr< TH1F > m_fMmass_split2
Definition: MissingMassCalculatorV2.h:220
DiTauMassTools::MissingMassCalculatorV2::m_nCallprobCalculatorV9fast
int m_nCallprobCalculatorV9fast
Definition: MissingMassCalculatorV2.h:91
DiTauMassTools::MissingMassCalculatorV2::m_MEtLMin
double m_MEtLMin
Definition: MissingMassCalculatorV2.h:142
DiTauMassTools::MissingMassCalculatorV2::m_fPZfit1
std::shared_ptr< TH1F > m_fPZfit1
Definition: MissingMassCalculatorV2.h:207
DiTauMassTools::MissingMassCalculatorV2::GetmInvWidth2Error
double GetmInvWidth2Error() const
Definition: MissingMassCalculatorV2.h:402
DiTauMassTools::MissingMassCalculatorV2::m_sinPhi2
double m_sinPhi2
Definition: MissingMassCalculatorV2.h:170
DiTauMassTools::MissingMassCalculatorV2::m_fPYfit1
std::shared_ptr< TH1F > m_fPYfit1
Definition: MissingMassCalculatorV2.h:206
DiTauMassTools::MissingMassCalculatorV2::m_nuvecsol2
std::vector< TLorentzVector > m_nuvecsol2
Definition: MissingMassCalculatorV2.h:77
DiTauMassTools::MissingMassCalculatorV2::m_tauVec1Px
double m_tauVec1Px
Definition: MissingMassCalculatorV2.h:177
DiTauMassTools::MissingMassCalculatorV2::m_iter3
int m_iter3
Definition: MissingMassCalculatorV2.h:95
DiTauMassTools::MissingMassCalculatorV2::m_markovNRejectMetropolis
int m_markovNRejectMetropolis
Definition: MissingMassCalculatorV2.h:124
DiTauMassTools::MissingMassCalculatorV2::m_MEtL0
double m_MEtL0
Definition: MissingMassCalculatorV2.h:141
DiTauMassTools::MissingMassCalculatorV2::m_iter1
int m_iter1
Definition: MissingMassCalculatorV2.h:95
DiTauMassTools::MissingMassCalculatorV2::m_eTau2Max
double m_eTau2Max
Definition: MissingMassCalculatorV2.h:151
DiTauMassTools::MissingMassCalculatorV2::m_eTau2
double m_eTau2
Definition: MissingMassCalculatorV2.h:139
DiTauMassTools::MissingMassCalculatorV2::m_tauvecprob1
std::vector< double > m_tauvecprob1
Definition: MissingMassCalculatorV2.h:81
DiTauMassTools::MissingMassCalculatorV2::m_fMnu2_split2
std::shared_ptr< TH1F > m_fMnu2_split2
Definition: MissingMassCalculatorV2.h:224
DiTauMassTools::MissingMassCalculatorV2::SetNsigmaMETscan_hh
void SetNsigmaMETscan_hh(const double val)
Definition: MissingMassCalculatorV2.h:393
DiTauMassTools::MissingMassCalculatorV2::DitauStuff::Sign_best
double Sign_best
Definition: MissingMassCalculatorV2.h:54
DiTauMassTools::MissingMassCalculatorV2::m_iang1high
int m_iang1high
Definition: MissingMassCalculatorV2.h:95
DiTauMassTools::MissingMassCalculatorV2::m_fTheta3D
TH1F * m_fTheta3D
Definition: MissingMassCalculatorV2.h:236
DiTauMassTools::MissingMassCalculatorV2::SetNsucStop
void SetNsucStop(const int val)
Definition: MissingMassCalculatorV2.h:350
DiTauMassTools::MissingMassCalculatorV2::m_niter_fit2
int m_niter_fit2
Definition: MissingMassCalculatorV2.h:249
DiTauMassTools::MissingMassCalculatorV2::m_MEtLStep
double m_MEtLStep
Definition: MissingMassCalculatorV2.h:144
DiTauMassTools::MissingMassCalculatorV2::m_mTau2
double m_mTau2
Definition: MissingMassCalculatorV2.h:137
DiTauMassTools::MissingMassCalculatorV2::m_walkWeight
double m_walkWeight
Definition: MissingMassCalculatorV2.h:169
DiTauMassTools::MissingMassCalculatorV2::m_nsigma_METscan2
double m_nsigma_METscan2
Definition: MissingMassCalculatorV2.h:93
DiTauMassTools::MissingMassCalculatorV2::m_nsucStop
int m_nsucStop
Definition: MissingMassCalculatorV2.h:71