Changed from using arrays to use 2D histos which could now be saved. Results unchanged.
This commit is contained in:
@@ -50,9 +50,27 @@ int main(int argc, char* argv[]) {
|
||||
TH1F *gain_avg = new TH1F("gain_avg","",100,-1,4);
|
||||
TH2F *gainmap_avg = new TH2F("gainmap_avg","",NC,-0.5,NC-0.5,NR,-0.5,NR-0.5);
|
||||
TH1F *adc_avg_g1 = new TH1F("adc_avg_g1","",100,0,17000);
|
||||
TH2F *adcmap_avg_g1 = new TH2F("adcmap_avg_g1","",NC,-0.5,NC-0.5,NR,-0.5,NR-0.5);
|
||||
TH1F *adc_avg_g2 = new TH1F("adc_avg_g2","",100,0,17000);
|
||||
TH2F *adcmap_avg_g2 = new TH2F("adcmap_avg_g2","",NC,-0.5,NC-0.5,NR,-0.5,NR-0.5);
|
||||
|
||||
TH2F *adcmap_avg_g1 [35];
|
||||
TH2F *adcmap_avg_g2 [35];
|
||||
TH2F *adcermap_avg_g1 [35];
|
||||
TH2F *adcermap_avg_g2 [35];
|
||||
|
||||
for(int i = 0; i < 35; i++) {
|
||||
ostringstream histogramNameStreamg1;
|
||||
histogramNameStreamg1 << "adcmap_avg_g1_" << i;
|
||||
adcmap_avg_g1[i] = new TH2F(histogramNameStreamg1.str().c_str(),"",NC,-0.5,NC-0.5,NR,-0.5,NR-0.5);
|
||||
ostringstream histogramNameStreamg2;
|
||||
histogramNameStreamg2 << "adcmap_avg_g2_" << i;
|
||||
adcmap_avg_g2[i] = new TH2F(histogramNameStreamg2.str().c_str(),"",NC,-0.5,NC-0.5,NR,-0.5,NR-0.5);
|
||||
ostringstream histogramNameStreamg3;
|
||||
histogramNameStreamg3 << "adcermap_avg_g1_" << i;
|
||||
adcermap_avg_g1[i] = new TH2F(histogramNameStreamg3.str().c_str(),"",NC,-0.5,NC-0.5,NR,-0.5,NR-0.5);
|
||||
ostringstream histogramNameStreamg4;
|
||||
histogramNameStreamg4 << "adcermap_avg_g2_" << i;
|
||||
adcermap_avg_g2[i] = new TH2F(histogramNameStreamg4.str().c_str(),"",NC,-0.5,NC-0.5,NR,-0.5,NR-0.5);
|
||||
}
|
||||
|
||||
jungfrauPedestal *pedestalObject = new jungfrauPedestal();
|
||||
pedestalObject->pedestalSetNFrames(640);
|
||||
@@ -117,11 +135,6 @@ int main(int argc, char* argv[]) {
|
||||
}
|
||||
}
|
||||
|
||||
static double adcmeans_g1[NCH][35];
|
||||
static double adcmeans_g2[NCH][35];
|
||||
static double adcmeanerrs_g1[NCH][35];
|
||||
static double adcmeanerrs_g2[NCH][35];
|
||||
|
||||
double pede_ene[1];
|
||||
pede_ene[0] = 0.01;
|
||||
|
||||
@@ -352,25 +365,25 @@ int main(int argc, char* argv[]) {
|
||||
|
||||
for (int i = 0; i < NCH; i++) {
|
||||
if (pixel_mask[i] == 1) {
|
||||
adcmeans_g1[i][j/640-1] = adc_histos_g1[i]->GetMean();
|
||||
adcmeans_g2[i][j/640-1] = adc_histos_g2[i]->GetMean();
|
||||
adcmeanerrs_g1[i][j/640-1] = adc_histos_g1[i]->GetMeanError();
|
||||
adcmeanerrs_g2[i][j/640-1] = adc_histos_g2[i]->GetMeanError();
|
||||
|
||||
gainmap_avg->Fill(i%NC,i/NC,gain_histos[i]->GetMean());
|
||||
adcmap_avg_g1[j/640-1]->Fill(i%NC,i/NC,adc_histos_g1[i]->GetMean());
|
||||
adcermap_avg_g1[j/640-1]->Fill(i%NC,i/NC,adc_histos_g1[i]->GetMeanError());
|
||||
adcmap_avg_g2[j/640-1]->Fill(i%NC,i/NC,adc_histos_g2[i]->GetMean());
|
||||
adcermap_avg_g2[j/640-1]->Fill(i%NC,i/NC,adc_histos_g2[i]->GetMeanError());
|
||||
|
||||
if (gain_histos[i]->GetEntries() > 0) {
|
||||
gain_avg->Fill(gain_histos[i]->GetMean());
|
||||
gainmap_avg->Fill(i%NC,i/NC,gain_histos[i]->GetMean());
|
||||
}
|
||||
gain_histos[i]->Reset();
|
||||
if (adc_histos_g1[i]->GetEntries() > 0) {
|
||||
adc_avg_g1->Fill(adc_histos_g1[i]->GetMean());
|
||||
adcmap_avg_g1->Fill(i%NC,i/NC,adc_histos_g1[i]->GetMean());
|
||||
}
|
||||
adc_histos_g1[i]->Reset();
|
||||
if (adc_histos_g2[i]->GetEntries() > 0) {
|
||||
adc_avg_g2->Fill(adc_histos_g2[i]->GetMean());
|
||||
adcmap_avg_g2->Fill(i%NC,i/NC,adc_histos_g2[i]->GetMean());
|
||||
}
|
||||
|
||||
gain_histos[i]->Reset();
|
||||
adc_histos_g1[i]->Reset();
|
||||
adc_histos_g2[i]->Reset();
|
||||
}
|
||||
}
|
||||
@@ -397,13 +410,20 @@ int main(int argc, char* argv[]) {
|
||||
sprintf(savename,"plots/M%s/CurrentSource/perStep/adc_avg_g1_%i.png", module_str.c_str(), j/640);
|
||||
c1->SaveAs((const char *)(savename));
|
||||
mapcanvas->cd();
|
||||
adcmap_avg_g1->GetXaxis()->SetTitle("Column");
|
||||
adcmap_avg_g1->GetYaxis()->SetTitle("Row");
|
||||
adcmap_avg_g1->GetYaxis()->SetTitleOffset(0.7);
|
||||
adcmap_avg_g1->Draw("colz");
|
||||
adcmap_avg_g1[j/640-1]->GetXaxis()->SetTitle("Column");
|
||||
adcmap_avg_g1[j/640-1]->GetYaxis()->SetTitle("Row");
|
||||
adcmap_avg_g1[j/640-1]->GetYaxis()->SetTitleOffset(0.7);
|
||||
adcmap_avg_g1[j/640-1]->Draw("colz");
|
||||
mapcanvas->Update();
|
||||
sprintf(savename,"plots/M%s/CurrentSource/perStep/adcmap_avg_g1_%i.png", module_str.c_str(), j/640);
|
||||
mapcanvas->SaveAs((const char *)(savename));
|
||||
adcermap_avg_g1[j/640-1]->GetXaxis()->SetTitle("Column");
|
||||
adcermap_avg_g1[j/640-1]->GetYaxis()->SetTitle("Row");
|
||||
adcermap_avg_g1[j/640-1]->GetYaxis()->SetTitleOffset(0.7);
|
||||
adcermap_avg_g1[j/640-1]->Draw("colz");
|
||||
mapcanvas->Update();
|
||||
sprintf(savename,"plots/M%s/CurrentSource/perStep/adcermap_avg_g1_%i.png", module_str.c_str(), j/640);
|
||||
mapcanvas->SaveAs((const char *)(savename));
|
||||
|
||||
c1->cd();
|
||||
adc_avg_g2->GetXaxis()->SetTitle("Average G2 ADC");
|
||||
@@ -413,18 +433,23 @@ int main(int argc, char* argv[]) {
|
||||
sprintf(savename,"plots/M%s/CurrentSource/perStep/adc_avg_g2_%i.png", module_str.c_str(), j/640);
|
||||
c1->SaveAs((const char *)(savename));
|
||||
mapcanvas->cd();
|
||||
adcmap_avg_g2->GetXaxis()->SetTitle("Column");
|
||||
adcmap_avg_g2->GetYaxis()->SetTitle("Row");
|
||||
adcmap_avg_g2->GetYaxis()->SetTitleOffset(0.7);
|
||||
adcmap_avg_g2->Draw("colz");
|
||||
adcmap_avg_g2[j/640-1]->GetXaxis()->SetTitle("Column");
|
||||
adcmap_avg_g2[j/640-1]->GetYaxis()->SetTitle("Row");
|
||||
adcmap_avg_g2[j/640-1]->GetYaxis()->SetTitleOffset(0.7);
|
||||
adcmap_avg_g2[j/640-1]->Draw("colz");
|
||||
sprintf(savename,"plots/M%s/CurrentSource/perStep/adcmap_avg_g2_%i.png", module_str.c_str(), j/640);
|
||||
mapcanvas->SaveAs((const char *)(savename));
|
||||
adcermap_avg_g2[j/640-1]->GetXaxis()->SetTitle("Column");
|
||||
adcermap_avg_g2[j/640-1]->GetYaxis()->SetTitle("Row");
|
||||
adcermap_avg_g2[j/640-1]->GetYaxis()->SetTitleOffset(0.7);
|
||||
adcermap_avg_g2[j/640-1]->Draw("colz");
|
||||
sprintf(savename,"plots/M%s/CurrentSource/perStep/adcermap_avg_g2_%i.png", module_str.c_str(), j/640);
|
||||
mapcanvas->SaveAs((const char *)(savename));
|
||||
|
||||
gain_avg->Reset();
|
||||
gainmap_avg->Reset();
|
||||
adc_avg_g1->Reset();
|
||||
adcmap_avg_g1->Reset();
|
||||
adc_avg_g2->Reset();
|
||||
adcmap_avg_g2->Reset();
|
||||
}
|
||||
} // end of while
|
||||
|
||||
@@ -452,7 +477,7 @@ int main(int argc, char* argv[]) {
|
||||
TH2F *diffFromLinG1map = new TH2F("diffFromLinG1map","",NC,-0.5,NC-0.5,NR,-0.5,NR-0.5);
|
||||
TH2F *diffFromLinG2map = new TH2F("diffFromLinG2map","",NC,-0.5,NC-0.5,NR,-0.5,NR-0.5);
|
||||
|
||||
TH1F *g1hist;
|
||||
TH1F *g1hist = 0;
|
||||
if (module_str == "032") {
|
||||
g1hist = new TH1F("g1hist","",100,-12000,-4000);
|
||||
} else if (module_str == "022" || module_str == "021" || module_str == "006" || module_str == "008" || module_str == "044") {
|
||||
@@ -460,7 +485,7 @@ int main(int argc, char* argv[]) {
|
||||
}
|
||||
TH1F *g1erhist = new TH1F("g1erhist","",100,0,50);
|
||||
|
||||
TH1F *g2hist;
|
||||
TH1F *g2hist = 0;
|
||||
if (module_str == "032") {
|
||||
g2hist = new TH1F("g2hist","",100,-1000,-200);
|
||||
} else if (module_str == "022" || module_str == "021" || module_str == "006" || module_str == "008" || module_str == "044") {
|
||||
@@ -483,10 +508,6 @@ int main(int argc, char* argv[]) {
|
||||
|
||||
for (int i = 0; i < NCH; i++) {
|
||||
if (pixel_mask[i] == 1) {
|
||||
vector<double> r0_adc;
|
||||
vector<double> r0_filter;
|
||||
vector<double> r0_adcerr;
|
||||
vector<double> r0_ferr;
|
||||
|
||||
vector<double> r1_adc;
|
||||
vector<double> r1_filter;
|
||||
@@ -507,16 +528,17 @@ int main(int argc, char* argv[]) {
|
||||
}
|
||||
|
||||
for (int m = 0; m < m_max; m++) {
|
||||
if (adcmeans_g1[i][m] != 0 && adcmeanerrs_g1[i][m] != 0) {
|
||||
r1_adc.push_back(adcmeans_g1[i][m]);
|
||||
|
||||
if (adcmap_avg_g1[m]->GetBinContent((i%NC)+1,(i/NC)+1) != 0 && adcermap_avg_g1[m]->GetBinContent((i%NC)+1,(i/NC)+1) != 0) {
|
||||
r1_adc.push_back(adcmap_avg_g1[m]->GetBinContent((i%NC)+1,(i/NC)+1));
|
||||
r1_filter.push_back(filter[m]);
|
||||
r1_adcerr.push_back(adcmeanerrs_g1[i][m]);
|
||||
r1_adcerr.push_back(adcermap_avg_g1[m]->GetBinContent((i%NC)+1,(i/NC)+1));
|
||||
r1_ferr.push_back(0.);
|
||||
}
|
||||
if (adcmeans_g2[i][m] != 0 && adcmeanerrs_g2[i][m] != 0) {
|
||||
r3_adc.push_back(adcmeans_g2[i][m]);
|
||||
if (adcmap_avg_g2[m]->GetBinContent((i%NC)+1,(i/NC)+1) != 0 && adcermap_avg_g2[m]->GetBinContent((i%NC)+1,(i/NC)+1) != 0) {
|
||||
r3_adc.push_back(adcmap_avg_g2[m]->GetBinContent((i%NC)+1,(i/NC)+1));
|
||||
r3_filter.push_back(filter[m]);
|
||||
r3_adcerr.push_back(adcmeanerrs_g2[i][m]);
|
||||
r3_adcerr.push_back(adcermap_avg_g2[m]->GetBinContent((i%NC)+1,(i/NC)+1));
|
||||
r3_ferr.push_back(0.);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user