55 std::vector<std::string> allsamples;
56 for(
auto& samp : fSamples ) allsamples.push_back(samp.first);
60 "Tyler Alion, Alexander Booth, Yibing Zhang",
61 "Miniproduction 5 Data vs. MC. Tricell hits from Stopping Cosmics populate all plots, with Absolute Calibration cuts applied. Showing PE/cm and PECorr/cm broken down by cell group and view then further by FEB, then further by individual cell.");
64 Draw(plotdir, allsamples,
false);
76 fTex->
AddFigureRow({plotdir+
"/pecm_time_x_0-31", plotdir+
"/pecorrcm_time_y_0-31" }, {
"",
""}, {
"",
""});
77 fTex->
AddFigureRow({plotdir+
"/pecm_time_x_32-63", plotdir+
"/pecorrcm_time_y_32-63"}, {
"",
""}, {
"",
""});
78 fTex->
AddFigureRow({plotdir+
"/pecm_time_x_64-95", plotdir+
"/pecorrcm_time_y_64-95"}, {
"",
""}, {
"",
""});
86 fTex->
AddFigureRow({plotdir+
"/pecm_time_"+pstr+
"_0-31", plotdir+
"/pecorrcm_time_"+pstr+
"_0-31" }, {
"",
""}, {
"",
""});
87 fTex->
AddFigureRow({plotdir+
"/pecm_time_"+pstr+
"_32-63", plotdir+
"/pecorrcm_time_"+pstr+
"_32-63"}, {
"",
""}, {
"",
""});
88 fTex->
AddFigureRow({plotdir+
"/pecm_time_"+pstr+
"_64-95", plotdir+
"/pecorrcm_time_"+pstr+
"_64-95"}, {
"",
""}, {
"",
""});
93 if(
c % 3 == 0 &&
c!=0)
110 bool abscal_hit = (
w > -100 &&
w < 100 &&
115 if( !abscal_hit )
return;
116 if(
plane > 191)
return;
119 if(
view==0){ vstr=
"x"; }
120 if(
view==1){ vstr=
"y"; }
155 fHitVars=
"w, view, plane, cell, pe, pecorr, path, evt_time, cmFromEnd,";
164 std::vector< PlotAxis > xaxes = {
165 {
"time",
"Unix Time (s)", 100, 14e8, 16e8}
168 std::vector< ContentAxis > yaxes = {
170 {
"pecorrcm",
"PECorr/cm"},
173 std::vector< std::string > cells = {
"0-31",
"32-63",
"64-95"};
174 std::vector<int> planes(nPlanes);
175 std::iota(planes.begin(), planes.end(), 0);
176 std::vector<int> allcells(nCells);
177 std::iota(allcells.begin(), allcells.end(), 0);
178 for(
auto&
p : planes){
181 for(
auto& xax : xaxes){
182 for(
auto& yax : yaxes){
183 for(
auto&
c : cells){
188 (vstr+
" View, Plane "+
std::to_string(
p)+
", Cells "+c+
";" + xax.title +
";"+ yax.title).c_str(),
189 xax.nbins, xax.min, xax.max );
193 name = yax.label +
"_"+ xax.label +
"_"+ v +
"_" +
c;
195 (vstr+
" View, Cells "+c+
";" + xax.title +
";"+ yax.title).c_str(),
196 xax.nbins, xax.min, xax.max );
199 for(
auto&
c : allcells){
204 60, xax.min, xax.max );
214 std::vector< std::string > epoch_list = {
215 "2a",
"2b",
"2c",
"2d",
"2e",
217 "4a",
"4b.1",
"4b.2",
"4c",
225 for(
auto&
ep : epoch_list ){
226 if(
ep==
"4b.1" ||
ep==
"4b.2")
227 fSamples[
"nd_data_ep"+
ep]=
"/nova/ana/users/talion/miniprod5/pcliststop_miniprod5.b/nd_data_epoch4b/calibana/merged.root";
229 fSamples[
"nd_data_ep"+
ep]=
"/nova/ana/users/talion/miniprod5/pcliststop_miniprod5.b/nd_data_epoch"+
ep+
"/calibana/merged.root";
232 fSamples[
"nd_mc"]=
"/nova/ana/users/abooth/miniprod5.b/nd_mc/merged.root";
std::map< std::string, TH1 * > fPlots
void MakeMEUPerCell(std::string outpath)
std::vector< std::string > fEpochList
void ProcessTrees(std::string sample)
void SubSectionNoNum(std::string subsecname)
void SectionNoNum(std::string secname)
void Draw(std::string pdfdir, std::vector< Plot > plots, Plot denom_plot, std::string ratio_title="")
MEUPerCell(std::string outpath, std::string group)
std::string to_string(ModuleType mt)
void DriftTex(std::string plotdir)
std::map< std::string, std::string > fSamples
void AddFigureRow(std::vector< std::string > figure, std::vector< std::string > caption, std::vector< std::string > label)