21 std::ifstream openfile;
25 openfile.open(inputFilePath+
"/bad_chan_stats.txt");
27 if ( !(openfile.is_open()) ){
36 TH1F *hmismatch_distro =
new TH1F(
"mismatch_distro",
37 myDet+
" Distribution of Mismatches;Mismatch(%);frequency",
41 TH1F *hfracdb_distro =
new TH1F(
"fracdb_distro",
42 myDet+
" Fraction channels DB sees good, OnMon sees bad;FracDB(%);frequency",
46 TH1F *hfracom_distro =
new TH1F(
"fracom_distro",
47 myDet+
" Fraction of Channels OnMon sees good, DB sees bad;FracOM(%);frequency",
53 int lowR = firstRun-1;
54 int highR = lastRun+2;
56 TH2F *hmismatchVsRun =
new TH2F(
"mismatchVsRun",
57 myDet+
" Mismatch vs Run number; Run; Mismatch (%)",
61 nBins,lowR,highR,100,0.0,100.0);
68 while (getline(openfile,Line)){
70 std::istringstream is(Line);
79 is >> run >> srun >> mismatch >> fracdb >> fracom;
82 hmismatch_distro->Fill(mismatch);
83 hfracdb_distro->Fill(fracdb);
84 hfracom_distro->Fill(fracom);
85 hmismatchVsRun->Fill(run,mismatch);
94 if( (mismatch > thresh) ){
95 std::cout<< run <<
", "<< srun <<
", "<< mismatch
96 <<
", "<< fracdb <<
", "<< fracom <<
std::endl;
112 TCanvas *
c1 =
new TCanvas(
"c1",
"c1",880,590);
113 hmismatch_distro->SetLineColor(
kBlue);
114 hmismatch_distro->SetLineWidth(2);
115 hmismatch_distro->SetStats(kTRUE);
117 hmismatch_distro->Draw();
118 c1->SaveAs(
"mismatch_distro_"+myDet+
".C");
120 c1->SaveAs(
"/nusoft/app/web/htdoc/nova/users/novadq/BadChanValidationPlots/mismatch_distro_"+myDet+
".png");
146 TCanvas *
c2 =
new TCanvas(
"c2",
"c2",880,590);
147 hfracdb_distro->SetLineColor(
kBlue);
148 hfracdb_distro->SetLineWidth(2);
149 hfracdb_distro->SetStats(kTRUE);
151 hfracdb_distro->Draw();
152 c2->SaveAs(
"fracdb_distro_"+myDet+
".C");
154 c2->SaveAs(
"/nusoft/app/web/htdoc/nova/users/novadq/BadChanValidationPlots/fracdb_distro_"+myDet+
".png");
156 TCanvas *
c3 =
new TCanvas(
"c3",
"c3",880,590);
157 hfracom_distro->SetLineColor(
kBlue);
158 hfracom_distro->SetLineWidth(2);
159 hfracom_distro->SetStats(kTRUE);
161 hfracom_distro->Draw();
162 c3->SaveAs(
"fracom_distro_"+myDet+
".C");
164 c3->SaveAs(
"/nusoft/app/web/htdoc/nova/users/novadq/BadChanValidationPlots/fracom_distro_"+myDet+
".png");
167 const Int_t NRGBs2 = 3;
168 const Int_t NCont2 = 255;
169 Double_t stops2[NRGBs2] = { 0.00, 0.3, 1.00};
170 Double_t red2[NRGBs2] = { 0.85, 0.25, 0.00};
171 Double_t green2[NRGBs2] = { 0.96, 0.61, 0.00};
172 Double_t blue2[NRGBs2] = { 1.00, 0.98, 0.59};
173 TColor::CreateGradientColorTable(NRGBs2, stops2, red2, green2, blue2, NCont2);
174 gStyle->SetNumberContours(NCont2);
176 TCanvas *
c4 =
new TCanvas(
"c4",
"c4",880,590);
177 hmismatchVsRun->SetStats(kTRUE);
178 hmismatchVsRun->Draw(
"colz");
179 c4->SaveAs(
"mismatchVsRun_"+myDet+
".C");
181 c4->SaveAs(
"/nusoft/app/web/htdoc/nova/users/novadq/BadChanValidationPlots/mismatchVsRun_"+myDet+
".png");
int stats(TString inputFilePath, Int_t firstRun, Int_t lastRun, Float_t thresh, TString myDet)