From: Benjamin Linnik Date: Wed, 17 Jun 2015 11:57:38 +0000 (+0200) Subject: Run analyzer: merged with trunk X-Git-Url: https://jspc29.x-matter.uni-frankfurt.de/git/?a=commitdiff_plain;h=207378313c3a7151d7fb10b1aba03d9031e06c02;p=radhard.git Run analyzer: merged with trunk --- 207378313c3a7151d7fb10b1aba03d9031e06c02 diff --cc MABS_run_analyzer/ChargeSpektrum.c index 4ca874d,2068760..a77c795 --- a/MABS_run_analyzer/ChargeSpektrum.c +++ b/MABS_run_analyzer/ChargeSpektrum.c @@@ -168,7 -194,233 +168,8 @@@ void ChargeSpektrum(TString runnumber } } // plotAllRuns(""); - plotAllRuns("threshold calibrated"); + plotAllRuns("seed calibrated"); // writeObservableToFile("seed threshold calibrated"); - writeObservableToFile("seed threshold calibrated"); - } + writeObservableToFile("seed threshold"); + writeObservableToFile("seed threshold calibrated"); -} - -Int_t ReadRunList(std::vector* runlist) -{ - std::ifstream file("runlist.txt"); - Int_t row; - while (file >> row) - { - try - { - if (row > 0) - { - runlist->push_back(row); - numberRuns++; - } - } - catch(...) - { - cout << "File ended"; - } - } - return numberRuns; -} - - -// void plotNoiseComparison() -// { -// -// } - -Bool_t writeObservableToFile(TString histogramtype) -{ - if (histogramtype.Contains("threshold")) - { - if (histogramtype.Contains("calibrated")) - { - for(Int_t runi=0;runihistogramthresholdCalibrated.calibrated) - runs[runi]->plothistogramstructpointer = &runs[runi]->histogramthresholdCalibrated; - else - return 1; - } - } - else - { - for(Int_t runi=0;runiplothistogramstructpointer = &runs[runi]->histogramthreshold; - } - - } - else if (histogramtype.Contains("calibrated") || histogramtype.Contains("electron")) { - for(Int_t runi=0;runihistogramCalibrated.calibrated) - runs[runi]->plothistogramstructpointer = &runs[runi]->histogramCalibrated; - else return 1; } } - else { - for(Int_t runi=0;runiplothistogramstructpointer = &runs[runi]->histogram; } } - writeObservableToFileHistSelect(histogramtype); - return 0; -} -void writeObservableToFileHistSelect(TString histogramtype) -{ - if (histogramtype.Contains("Seed") || histogramtype.Contains("seed")) { - for(Int_t runi=0;runiplothistogrampointer = &runs[runi]->plothistogramstructpointer->Seed; } } - else if (histogramtype.Contains("Sum") || histogramtype.Contains("sum")) { - for(Int_t runi=0;runiplothistogrampointer = &runs[runi]->plothistogramstructpointer->Sum; } } - else if (histogramtype.Contains("Veto") || histogramtype.Contains("veto")) { - for(Int_t runi=0;runiplothistogrampointer = &runs[runi]->plothistogramstructpointer->Veto; } } - else { - for(Int_t runi=0;runiplothistogrampointer = &runs[runi]->plothistogramstructpointer->Seed; } } - writeObservableToFile(); -} - -Bool_t writeObservableToFile() -{ - system("mkdir "+ runs[0]->savepathresults + " -p"); - TString headerInfo = ""; - for(Int_t runi=0;runilabbook.tempSens); - headerInfo+=runs[runi]->runcode+"\t"+labbookTempSens+"\t"; - } - TH1F* plothistogrampointer = *runs[0]->plothistogrampointer; - TString runnumberListe=Form("%s_",plothistogrampointer->GetName()); - TString header=""; - for(Int_t runi=0;runierror) - { - plothistogrampointer = *runs[runi]->plothistogrampointer; - runnumberListe+=Form("%d_",runs[runi]->labbook.runnumber); - header+=Form("%d\t%d_%s\t", runs[runi]->labbook.runnumber, runs[runi]->labbook.runnumber, plothistogrampointer->GetName()); - } - } - } - TString filename= runs[0]->savepathresults + "/" + runnumberListe + "histograms.dat"; - fstream* fout = new fstream(filename,ios::out); - *fout << headerInfo << endl; - *fout << header << endl; - for(Int_t bini=0;biniGetNbinsX();bini++) - { - for(Int_t runi=0;runierror) - { - plothistogrampointer = *runs[runi]->plothistogrampointer; - TString outline; - outline=Form("%.1f\t%.1f\t",plothistogrampointer->GetBinCenter(bini),plothistogrampointer->GetBinContent(bini)); - *fout<close(); - - return 0; -} - -Bool_t plotAllRuns(TString histogramtype) -{ - if (histogramtype.Contains("threshold")) - { - if (histogramtype.Contains("calibrated")) - { - for(Int_t runi=0;runihistogramthresholdCalibrated.calibrated) - runs[runi]->plothistogramstructpointer = &runs[runi]->histogramthresholdCalibrated; - else - return 1; - } - else - { - for(Int_t runi=0;runiplothistogramstructpointer = &runs[runi]->histogramthreshold; - } - - } - else if (histogramtype.Contains("calibrated") || histogramtype.Contains("electron")) { - for(Int_t runi=0;runihistogramCalibrated.calibrated) - runs[runi]->plothistogramstructpointer = &runs[runi]->histogramCalibrated; - else - return 1; } } - else { - for(Int_t runi=0;runiplothistogramstructpointer = &runs[runi]->histogram; } } - plotAllRuns(); - return 0; -} - -Bool_t plotAllRuns() -{ - if (numberRuns > 1) - { - Float_t lastbin; - TTimeStamp* time = new TTimeStamp(); - - TCanvas* canvas = new TCanvas(Form("%d",time->GetNanoSec()), "Summary", 1600, 1000); - if (isBatch) - canvas->SetCanvasSize(3200,2000); - - canvas->Divide(2,2); - Float_t height = numberRuns * 0.04; - TLegend* leg1 = new TLegend(0.3,0.89-height,0.89,0.89);//(0.6,0.7,0.89,0.89); - TLegend* leg2 = new TLegend(0.6,0.89-height,0.89,0.89);//(0.6,0.7,0.89,0.89); - leg1->SetTextSize(0.02); - leg2->SetTextSize(0.02); - leg1->SetFillColor(0); leg1->SetBorderSize(0); - leg2->SetFillColor(0); leg2->SetBorderSize(0); - TString legendEntry; - - for(Int_t runi=0;runierror) - { - canvas->cd(1); - runs[runi]->plothistogramstructpointer->Seed->Draw("SAME"); - lastbin = runs[runi]->plothistogramstructpointer->Seed->GetBinCenter(runs[runi]->plothistogramstructpointer->Seed->FindLastBinAbove(2,1)); - runs[runi]->plothistogramstructpointer->Seed->SetAxisRange(0,lastbin*1.1,"X"); - gPad->SetLogy(1); - legendEntry = Form("%s", runs[runi]->plothistogramstructpointer->Seed->GetTitle()); - leg1->AddEntry(runs[runi]->plothistogramstructpointer->Veto, legendEntry, "l"); - leg1->Draw("SAME"); - canvas->cd(2); - runs[runi]->plothistogramstructpointer->Sum->Draw("SAME"); - lastbin = runs[runi]->plothistogramstructpointer->Sum->GetBinCenter(runs[runi]->plothistogramstructpointer->Sum->FindLastBinAbove(2,1)); - runs[runi]->plothistogramstructpointer->Sum->SetAxisRange(0,lastbin*1.1,"X"); - canvas->cd(3); - runs[runi]->plothistogramstructpointer->Veto->Draw("SAME"); - runs[runi]->plothistogramstructpointer->Veto->SetAxisRange(runs[runi]->plothistogramstructpointer->posVeto*0.7,runs[runi]->plothistogramstructpointer->posVeto*1.4,"X"); - canvas->cd(4); - runs[runi]->plothistogramstructpointer->Noise->Draw("SAME"); - legendEntry = Form("%s, Noise: %.2f", runs[runi]->labbook.matrix.Data(), runs[runi]->plothistogramstructpointer->avgNoise); - leg2->AddEntry(runs[runi]->plothistogramstructpointer->Veto, legendEntry, "l"); - leg2->Draw("SAME"); - } - } - } - - // canvas -> Print( runs[0]->savepathresults + "/" + canvastitle + ".eps"); - TImageDump *img = new TImageDump(runs[0]->savepathresults + "/" + Form("%s - %s",runs[0]->runcode.Data(), runs[numberRuns-1]->runcode.Data()) + ".png"); - canvas->Paint(); - img->Close(); - - TFile *f = new TFile(runs[0]->savepathresults + "/" + Form("%s - %s",runs[0]->runcode.Data(),runs[numberRuns-1]->runcode.Data()) + ".root","RECREATE"); - f->cd(); - f->Append(canvas); - f->Append(img); - f->Write(); - } - return 0; -} - ++}