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