CMS 3D CMS Logo

TSLToyGen.h
Go to the documentation of this file.
1 #ifndef TSLToyGen_hh
2 #define TSLToyGen_hh
3 
4 #include <vector>
5 #include "TObject.h"
6 #include "TObjArray.h"
8 #include "TVector3.h"
9 
10 class TAbsFitParticle;
11 
12 class TSLToyGen : public TObject {
13 public:
14  TSLToyGen(const TAbsFitParticle* bReco,
15  const TAbsFitParticle* lepton,
16  const TAbsFitParticle* X,
17  const TAbsFitParticle* neutrino);
18  ~TSLToyGen() override;
19  Bool_t doToyExperiments(Int_t nbExperiments = 1000);
20 
21  TH1D* _histStatus;
22  TH1D* _histNIter;
23  TH1D* _histPChi2;
24  TH1D* _histChi2;
25 
29  TH1D* _histMXTrue;
30  TH1D* _histMXSmear;
31  TH1D* _histMXFit;
35 
36  TObjArray _histsParTrue;
37  TObjArray _histsParSmear;
38  TObjArray _histsParFit;
39 
40  TObjArray _histsPull1;
41  TObjArray _histsError1;
42  TObjArray _histsDiff1;
43  TObjArray _histsPull2;
44  TObjArray _histsError2;
45  TObjArray _histsDiff2;
46 
53 
55  void setMPDGCons(Bool_t value) { _withMPDGCons = value; }
57 
58 protected:
59  void smearParticles();
60 
61  void createHists();
62 
63  void fillPull1();
64  void fillPull2();
65  void fillPar();
66  void fillM();
67 
68 private:
69  std::vector<TAbsFitParticle*> _inimeasParticles; // vector that contains all true measured particles
70  std::vector<TAbsFitParticle*> _iniunmeasParticles; // vector that contains all true unmeasured particles
71  std::vector<TAbsFitParticle*> _measParticles; // vector that contains all smeared measured particles
72  std::vector<TAbsFitParticle*> _unmeasParticles; // vector that contains all smeared unmeasured particles
73  TVector3 _Y4S;
74 
83 
84  Bool_t _printPartIni;
85  Bool_t _printConsIni;
91  Bool_t _withMPDGCons;
93 
94  ClassDefOverride(TSLToyGen, 0)
95 };
96 
97 #endif
TObjArray _histsDiff1
Definition: TSLToyGen.h:42
TH1D * _histPChi2
Definition: TSLToyGen.h:23
TObjArray _histsPull2
Definition: TSLToyGen.h:43
void setprintSmearedPartBefore(Bool_t value)
Definition: TSLToyGen.h:49
TH1D * _histNIter
Definition: TSLToyGen.h:22
void fillM()
Definition: TSLToyGen.cc:299
TH1D * _histMXlnuFit
Definition: TSLToyGen.h:34
TAbsFitParticle * _iniLepton
Definition: TSLToyGen.h:76
void setCheckConstraintsTruth(Bool_t value)
Definition: TSLToyGen.h:56
TObjArray _histsPull1
Definition: TSLToyGen.h:40
Bool_t _withMassConstraint
Definition: TSLToyGen.h:90
void setprintPartAfter(Bool_t value)
Definition: TSLToyGen.h:50
void smearParticles()
Definition: TSLToyGen.cc:216
Bool_t _printPartIni
Definition: TSLToyGen.h:84
void fillPar()
Definition: TSLToyGen.cc:284
TObjArray _histsError1
Definition: TSLToyGen.h:41
~TSLToyGen() override
Definition: TSLToyGen.cc:44
Bool_t _withMPDGCons
Definition: TSLToyGen.h:91
TSLToyGen(const TAbsFitParticle *bReco, const TAbsFitParticle *lepton, const TAbsFitParticle *X, const TAbsFitParticle *neutrino)
Definition: TSLToyGen.cc:12
#define X(str)
Definition: MuonsGrabber.cc:38
Bool_t _printConsAfter
Definition: TSLToyGen.h:88
TH1D * _histMXTrue
Definition: TSLToyGen.h:29
TObjArray _histsDiff2
Definition: TSLToyGen.h:45
TObjArray _histsError2
Definition: TSLToyGen.h:44
std::vector< TAbsFitParticle * > _inimeasParticles
Definition: TSLToyGen.h:69
TAbsFitParticle * _iniX
Definition: TSLToyGen.h:77
TAbsFitParticle * _breco
Definition: TSLToyGen.h:79
TObjArray _histsParTrue
Definition: TSLToyGen.h:36
TAbsFitParticle * _X
Definition: TSLToyGen.h:81
std::vector< TAbsFitParticle * > _measParticles
Definition: TSLToyGen.h:71
TVector3 _Y4S
Definition: TSLToyGen.h:73
void fillPull2()
Definition: TSLToyGen.cc:268
TH1D * _histMBrecoTrue
Definition: TSLToyGen.h:26
void setprintConsAfter(Bool_t value)
Definition: TSLToyGen.h:52
TAbsFitParticle * _iniNeutrino
Definition: TSLToyGen.h:78
void setMPDGCons(Bool_t value)
Definition: TSLToyGen.h:55
Definition: value.py:1
TH1D * _histChi2
Definition: TSLToyGen.h:24
Bool_t _doCheckConstraintsTruth
Definition: TSLToyGen.h:92
TAbsFitParticle * _neutrino
Definition: TSLToyGen.h:82
void createHists()
Definition: TSLToyGen.cc:324
void setprintConsBefore(Bool_t value)
Definition: TSLToyGen.h:51
void setMassConstraint(Bool_t value)
Definition: TSLToyGen.h:54
Bool_t _printConsBefore
Definition: TSLToyGen.h:87
TAbsFitParticle * _iniBreco
Definition: TSLToyGen.h:75
TH1D * _histMXlnuTrue
Definition: TSLToyGen.h:32
std::vector< TAbsFitParticle * > _unmeasParticles
Definition: TSLToyGen.h:72
TH1D * _histStatus
Definition: TSLToyGen.h:21
TAbsFitParticle * _lepton
Definition: TSLToyGen.h:80
Bool_t _printConsIni
Definition: TSLToyGen.h:85
TObjArray _histsParSmear
Definition: TSLToyGen.h:37
TH1D * _histMBrecoFit
Definition: TSLToyGen.h:28
TH1D * _histMXSmear
Definition: TSLToyGen.h:30
void fillPull1()
Definition: TSLToyGen.cc:246
TH1D * _histMXlnuSmear
Definition: TSLToyGen.h:33
std::vector< TAbsFitParticle * > _iniunmeasParticles
Definition: TSLToyGen.h:70
Bool_t doToyExperiments(Int_t nbExperiments=1000)
Definition: TSLToyGen.cc:56
Bool_t _printPartAfter
Definition: TSLToyGen.h:89
TH1D * _histMBrecoSmear
Definition: TSLToyGen.h:27
void setprintConsIni(Bool_t value)
Definition: TSLToyGen.h:48
Bool_t _printSmearedPartBefore
Definition: TSLToyGen.h:86
TObjArray _histsParFit
Definition: TSLToyGen.h:38
void setprintPartIni(Bool_t value)
Definition: TSLToyGen.h:47
TH1D * _histMXFit
Definition: TSLToyGen.h:31