DUNE StandardRecord
Base object for DUNE analysis files (CAFs)
Loading...
Searching...
No Matches
SRLorentzVector.h
1
8
9#ifndef DUNEANAOBJ_SRLORENTZVECTOR_H
10#define DUNEANAOBJ_SRLORENTZVECTOR_H
11
12#if !defined(__GCCXML__) && !defined(__castxml__)
13
14#include <cmath>
15#include <limits>
16
17#include "TMath.h"
18#include "TLorentzVector.h"
19#include "TVector3.h"
20
21#endif
22
23
24
25namespace caf
26{
28 {
29 public:
31 virtual ~SRLorentzVector() = default;
32
33#if !defined(__GCCXML__) && !defined(__castxml__)
34
35 SRLorentzVector(const TLorentzVector& v);
36
38 operator TLorentzVector() const;
39
40 SRLorentzVector & operator=(const TLorentzVector& vec);
41
42 // For access as a position vector. For momentum use the member variables
43 // directly.
44 float T() const {return E;}
45 float X() const {return px;}
46 float Y() const {return py;}
47 float Z() const {return pz;}
48 float Mag() const {return sqrt(px*px + py*py + pz*pz);}
49 float Beta() const {return Mag()/E;}
50 float Gamma() const {return 1.0/sqrt(1-Beta()*Beta());}
51
52 TVector3 Vect() const {return TVector3(px, py, pz);}
53#endif
54
55 float E;
56 float px;
57 float py;
58 float pz;
59 };
60
61}
62#endif //DUNEANAOBJ_SRLORENTZVECTOR_H
Definition SRLorentzVector.h:28
Common Analysis Files.
Definition Navigate.cxx:8