-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathCbmCuts.h
More file actions
52 lines (38 loc) · 1.95 KB
/
CbmCuts.h
File metadata and controls
52 lines (38 loc) · 1.95 KB
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 "AnalysisTree/Cuts.hpp"
#include "AnalysisTree/SimpleCut.hpp"
namespace AnalysisTree{
Cuts* GetCbmEventCuts(std::string branch, std::string name="CbmGoodEvent") {
SimpleCut vtx_x_cut({branch, "vtx_x"}, -0.5, 0.5);
SimpleCut vtx_y_cut({branch, "vtx_y"}, -0.5, 0.5);
SimpleCut vtx_z_cut({branch, "vtx_z"}, -0.03, 0.03);
SimpleCut vtx_chi2_cut({branch, "vtx_chi2"}, 0.8, 1.7);
Cuts* event_cuts = new Cuts(std::move(name), {vtx_x_cut, vtx_y_cut, vtx_z_cut, vtx_chi2_cut});
return event_cuts;
}
Cuts* GetCbmTrackCuts(std::string branch, std::string name="CbmGoodVertexTrack") {
SimpleCut vtx_chi2_track_cut({branch, "vtx_chi2"}, 0, 3);
SimpleCut nhits_cut({branch, "nhits"}, 4, 100);
SimpleCut chi2_cut({branch + ".chi2", branch + ".ndf"}, [](std::vector<double> par){ return par[0]/par[1] < 3; });
SimpleCut eta_cut({branch, "eta"}, 0.2, 6);
Cuts* vertex_tracks_cuts = new Cuts(std::move(name), {vtx_chi2_track_cut, nhits_cut, chi2_cut, eta_cut});
return vertex_tracks_cuts;
};
Cuts* GetCbmCentralityTrackCuts(std::string branch, std::string name="CbmGoodCentralityTrack") {
SimpleCut vtx_chi2_track_cut({branch, "vtx_chi2"}, 0, 3);
SimpleCut nhits_cut({branch, "nhits"}, 4, 100);
SimpleCut chi2_cut({branch + ".chi2", branch + ".ndf"}, [](std::vector<double> par){ return par[0]/par[1] < 10; });
SimpleCut eta_cut({branch, "eta"}, 0, 3);
Cuts* vertex_tracks_cuts = new Cuts(std::move(name), {vtx_chi2_track_cut, nhits_cut, chi2_cut, eta_cut});
return vertex_tracks_cuts;
};
Cuts* GetCbmTofHitsCuts(std::string branch, std::string name="CbmGoodTofHit") {
SimpleCut tof_cuts_dx({branch, "dx"}, -2, 2);
SimpleCut tof_cuts_dy({branch, "dy"}, -1, 1);
Cuts* tof_cuts = new Cuts(std::move(name), {tof_cuts_dx, tof_cuts_dy});
return tof_cuts;
};
Cuts* GetCbmMcTracksCuts(std::string branch, std::string name="CbmMcPrimaryTrack") {
Cuts* sim_tracks_cut = new Cuts(std::move(name), {{{branch, "mother_id"}, -1}});
return sim_tracks_cut;
};
}