28 std::string period_numi =
"full", period_cosmic =
"full";
51 std::string file_name_cosmic =
"results/cosmiccosmic_" +
horn +
"_" + period_cosmic +
"__numu2018.root";
52 TFile *fcosmic = TFile::Open(file_name_cosmic.c_str());
54 std::vector<TH1*> hcosmic;
56 for(
int quantId = 0; quantId < 5; quantId++){
57 hcosmic.push_back((TH1*)fcosmic->Get(Form(
"numuEOpt_q%d", quantId)));
62 TH1* hlivetime_cosmic = (TH1*)fcosmic->Get(
"livetime");
63 float livetime_cosmic = hlivetime_cosmic->Integral();
68 std::vector<TH1*> hcount_cosmic;
69 std::vector<float> count_cosmic;
70 for(
int quantId = 0; quantId < 5; quantId++){
71 float counttemp = hcosmic[quantId]->Integral();
72 count_cosmic.push_back(counttemp);
77 float scale = livetime / livetime_cosmic;
78 std::cout <<
"\ncosmic trigger livetime = " << livetime_cosmic <<
", ana livetime = " << livetime <<
" -> scale = " << scale <<
std::endl;
83 for(
int quantId=0; quantId<5; quantId++){
84 events.push_back( count_cosmic[quantId] * scale );
85 errors.push_back( events[quantId] *
sqrt(count_cosmic[quantId]) / count_cosmic[quantId] );
86 if(quantId==0)
std::cout <<
"\nTotal estimate = " << events[quantId] <<
" +/- " << errors[quantId] <<
" from " << count_cosmic[quantId] <<
" raw events" <<
std::endl;
87 else std::cout <<
"quantile " << quantId <<
" = " << events[quantId] <<
" +/- " << errors[quantId] <<
" from " << count_cosmic[quantId] <<
" raw events" <<
std::endl;
93 for(
int quantId=0; quantId<5; quantId++){
94 hcosmic[quantId]->Scale( events[quantId] / (hcosmic[quantId]->
Integral()) );
95 if(quantId==0)
std::cout <<
"Total integral = " << hcosmic[quantId]->Integral() <<
std::endl;
96 else std::cout <<
"quantile " << quantId <<
" = " << hcosmic[quantId]->Integral() <<
std::endl;
100 std::string name_out =
"cosmicstriggeronly_" +
horn +
"__numu2018.root";
101 TFile
fout(name_out.c_str(),
"recreate");
102 for(
int quantId=0; quantId<5; quantId++){
103 hcosmic[quantId]->Write(Form(
"cosmics_q%d", quantId));
Cuts and Vars for the 2020 FD DiF Study.
void estimate_cosmics_triggeronly(std::string horn="fhc")
double Integral(const Spectrum &s, const double pot, int cvnregion)
const double kAna2017Period3Livetime
const double kAna2018RHCPOT
const double kAna2018FHCPOT
const double kAna2017Period3POT
const double kAna2018FHCLivetime
const double kAna2018RHCLivetime