1 |
|
//-------------------------------------------------------------------------------------------------- |
2 |
|
// $Id$ |
3 |
|
// |
4 |
< |
// to calculate the mass to the di-tau system, I |
5 |
< |
// assume that the tau is boosted and that the |
6 |
< |
// neutrinos have the same flight direction as the |
7 |
< |
// tau. |
4 |
> |
// DiTauSystem |
5 |
|
// |
6 |
< |
// Authors: ceballos |
6 |
> |
// Class to calculate the mass to the di-tau system. It is assumed that the tau is boosted |
7 |
> |
// and that the neutrinos have the same flight direction as the tau. See CMS note 2006/082. |
8 |
> |
// |
9 |
> |
// Authors: G.Ceballos |
10 |
|
//-------------------------------------------------------------------------------------------------- |
11 |
|
|
12 |
– |
// TODO: Needs cleanup CL |
13 |
– |
|
12 |
|
#ifndef MITPHYSICS_UTILS_DITAUSYSTEM_H |
13 |
< |
#define MITPHYSICSUTILS_DITAUSYSTEM_H |
13 |
> |
#define MITPHYSICS_UTILS_DITAUSYSTEM_H |
14 |
|
|
15 |
< |
#include "MitAna/DataTree/interface/Collections.h" |
15 |
> |
#include <Rtypes.h> |
16 |
|
|
17 |
|
namespace mithep |
18 |
|
{ |
19 |
+ |
class Particle; |
20 |
+ |
class Met; |
21 |
+ |
|
22 |
|
class DiTauSystem { |
23 |
|
public: |
24 |
+ |
DiTauSystem(const Particle *t1, const Particle *t2, const Met *met); |
25 |
|
|
26 |
< |
DiTauSystem(ChargedParticle *t1, ChargedParticle *t2, Met *met); |
27 |
< |
~DiTauSystem() {}; |
28 |
< |
|
29 |
< |
double RecoMass() {return fRecoMass;} |
30 |
< |
double VisMass() {return fVisMass;} |
31 |
< |
double XTau1() {return fXTau[0];} |
32 |
< |
double XTau2() {return fXTau[1];} |
33 |
< |
double TransverseMass() {return fMT;} |
34 |
< |
double TransverseEll() {return fETll;} |
35 |
< |
double TransverseEnn() {return fETnn;} |
26 |
> |
Double_t RecoMass() const { return fRecoMass;} |
27 |
> |
Double_t TransverseMass() const { return fMT; } |
28 |
> |
Double_t TransverseEll() const { return fETll; } |
29 |
> |
Double_t TransverseEnn() const { return fETnn; } |
30 |
> |
Double_t VisMass() const { return fVisMass; } |
31 |
> |
Double_t XTau1() const { return fXTau[0]; } |
32 |
> |
Double_t XTau2() const { return fXTau[1]; } |
33 |
> |
Double_t Projected() const { return fProj; } |
34 |
> |
Double_t ProjectedVis() const { return fProjVis; } |
35 |
> |
Double_t ProjectedMet() const { return fProjMet; } |
36 |
> |
Double_t ProjectedPhi() const { return fProjPhi; } |
37 |
> |
Double_t Ht() const { return fHt; } |
38 |
|
|
39 |
< |
private: |
40 |
< |
void init(); |
39 |
> |
private: |
40 |
> |
void Init(); |
41 |
|
|
42 |
< |
ChargedParticle *fT1; |
43 |
< |
ChargedParticle *fT2; |
44 |
< |
Met *fMet; |
45 |
< |
|
46 |
< |
// derived data members |
47 |
< |
double fXTau[2]; |
48 |
< |
double fRecoMass; |
49 |
< |
double fVisMass; |
50 |
< |
double fMT; |
51 |
< |
double fETll; |
52 |
< |
double fETnn; |
53 |
< |
}; |
42 |
> |
const Particle *fT1; //first tau |
43 |
> |
const Particle *fT2; //second tau |
44 |
> |
const Met *fMet; //missing et |
45 |
> |
Double_t fXTau[2]; //visible fraction of the tau momenta |
46 |
> |
Double_t fRecoMass; //higgs mass |
47 |
> |
Double_t fVisMass; //visible mass |
48 |
> |
Double_t fMT; //transverse visible mass |
49 |
> |
Double_t fETll; //transverse energy of tau products |
50 |
> |
Double_t fETnn; //transverse missing energy |
51 |
> |
Double_t fProj; |
52 |
> |
Double_t fProjMet; |
53 |
> |
Double_t fProjVis; |
54 |
> |
Double_t fProjPhi; |
55 |
> |
Double_t fHt; |
56 |
> |
|
57 |
> |
|
58 |
> |
|
59 |
> |
ClassDef(DiTauSystem, 0) // DiTauSystem ala CMS note 2006/082 |
60 |
> |
}; |
61 |
|
} |
62 |
|
#endif |