-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgetKin.h
49 lines (37 loc) · 1.23 KB
/
getKin.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include <iostream>
#include <cmath>
#include <sstream>
#include "TStopwatch.h"
#include "TH1D.h"
#include "TH2D.h"
#include "TH3D.h"
#include "THStack.h"
#include "TFile.h"
#include "TChain.h"
#include "TTree.h"
#include "TLorentzVector.h"
#include "TSystem.h"
#include "neutpart.h"
#include "neutfsipart.h"
#include "neutvect.h"
#include "neutfsivert.h"
#include "neutvtx.h"
#include "neutrootTreeSingleton.h"
void getKin(std::string fileName, int fitType, double maxMom);
void Usage(void);
// And enum to keep track of signal definiton
enum SignalDefinition {
kCC0pi = 0,
kCC1pip = 1,
kCC1pi0 = 2
};
// Signal definitions
bool isT2K_CC0pi(NeutVect *nvect, double EnuMin, double EnuMax, bool restricted);
bool isT2K_CC1pip(NeutVect *nvect, double EnuMin, double EnuMax, bool restricted);
bool isT2K_CC1pi0(NeutVect *nvect, double EnuMin, double EnuMax, bool restricted);
// Reconstruction variables
double Q2CCpiprec(TLorentzVector pnu, TLorentzVector pmu, TLorentzVector ppip);
double Q2true(TLorentzVector pnu, TLorentzVector pmu);
double EnuCCpiprec(TLorentzVector pnu, TLorentzVector pmu, TLorentzVector ppip);
double Wrec(TLorentzVector pnu, TLorentzVector pmu);
double Wtrue(TLorentzVector pnu, TLorentzVector pmu, TLorentzVector pprim);