void pl_over_MCHitRes(Double_t dChi2Lim, Double_t dSigmaDX04, Double_t dSigmaDY04, Double_t dSigmaDT04) { // gStyle->SetOptStat(0); gStyle->SetOptStat("emr"); // gStyle->SetOptFit(0); gStyle->SetLabelSize(0.07, "x"); gStyle->SetLabelSize(0.07, "y"); gStyle->SetLabelSize(0.06, "z"); Bool_t gbChi2LimFitRange = kFALSE; TH1* tHisto; TH1* tHisto1; TH2* tHisto2; TProfile* tProfile; TF1* tFunction; TLine* tLine; TPaveStats* tStatsBox; if(gbChi2LimFitRange) { TFile::Open("./calib_ana.cor_out.root", "READ"); if(gFile) { tHisto = dynamic_cast(gFile->FindObjectAny("hSelTypeNNResidualX_Width")); dSigmaDX04 = tHisto->GetBinContent(1); tHisto = dynamic_cast(gFile->FindObjectAny("hSelTypeNNResidualY_Width")); dSigmaDY04 = tHisto->GetBinContent(1); tHisto = dynamic_cast(gFile->FindObjectAny("hSelTypeNNResidualT_Width")); dSigmaDT04 = tHisto->GetBinContent(1); gFile->Close(); delete gFile; } else { cout<<"Could not open output calibration file. Using default 04 sigmas."<Divide(3, 3); tCanvas->cd(1); gPad->SetLogy(); tHisto2 = dynamic_cast(gROOT->FindObjectAny("hResXSelMRefHitMC")); tHisto1 = tHisto2->ProjectionY(); tHisto1->Fit("gaus", "Q"); tHisto1->GetXaxis()->SetRangeUser(-15., 15.); tHisto1->Draw(); gPad->Modified(); gPad->Update(); tFunction = tHisto1->GetFunction("gaus"); tFunction->FixParameter(0, tFunction->GetParameter(0)); tFunction->FixParameter(1, tFunction->GetParameter(1)); gPad->Modified(); gPad->Update(); tStatsBox = dynamic_cast(tHisto1->FindObject("stats")); tStatsBox->SetOptStat(1100); tStatsBox->SetOptFit(10001); tStatsBox->SetX1NDC(0.618); tStatsBox->SetY1NDC(0.697); tStatsBox->SetX2NDC(0.963); tStatsBox->SetY2NDC(0.898); gPad->Modified(); gPad->Update(); tCanvas->cd(2); gPad->SetLogy(); tHisto2 = dynamic_cast(gROOT->FindObjectAny("hResYSelMRefHitMC")); tHisto1 = tHisto2->ProjectionY(); tHisto1->Fit("gaus", "Q"); tHisto1->GetXaxis()->SetRangeUser(-15., 15.); tHisto1->Draw(); gPad->Modified(); gPad->Update(); tFunction = tHisto1->GetFunction("gaus"); tFunction->FixParameter(0, tFunction->GetParameter(0)); tFunction->FixParameter(1, tFunction->GetParameter(1)); gPad->Modified(); gPad->Update(); tStatsBox = dynamic_cast(tHisto1->FindObject("stats")); tStatsBox->SetOptStat(1100); tStatsBox->SetOptFit(10001); tStatsBox->SetX1NDC(0.618); tStatsBox->SetY1NDC(0.697); tStatsBox->SetX2NDC(0.963); tStatsBox->SetY2NDC(0.898); gPad->Modified(); gPad->Update(); tCanvas->cd(3); gPad->SetLogy(); tHisto2 = dynamic_cast(gROOT->FindObjectAny("hResTSelMRefHitMC")); tHisto1 = tHisto2->ProjectionY(); tHisto1->Fit("gaus", "Q"); tHisto1->GetXaxis()->SetRangeUser(-1., 1.); tHisto1->Draw(); gPad->Modified(); gPad->Update(); tFunction = tHisto1->GetFunction("gaus"); tFunction->FixParameter(0, tFunction->GetParameter(0)); tFunction->FixParameter(1, tFunction->GetParameter(1)); gPad->Modified(); gPad->Update(); tStatsBox = dynamic_cast(tHisto1->FindObject("stats")); tStatsBox->SetOptStat(1100); tStatsBox->SetOptFit(10001); tStatsBox->SetX1NDC(0.618); tStatsBox->SetY1NDC(0.697); tStatsBox->SetX2NDC(0.963); tStatsBox->SetY2NDC(0.898); gPad->Modified(); gPad->Update(); tCanvas->cd(4); gPad->SetLogy(); tHisto2 = dynamic_cast(gROOT->FindObjectAny("hResXSelSel2HitMC")); tHisto1 = tHisto2->ProjectionY(); tHisto1->Fit("gaus", "Q"); tHisto1->GetXaxis()->SetRangeUser(-15., 15.); tHisto1->Draw(); gPad->Modified(); gPad->Update(); tFunction = tHisto1->GetFunction("gaus"); tFunction->FixParameter(0, tFunction->GetParameter(0)); tFunction->FixParameter(1, tFunction->GetParameter(1)); gPad->Modified(); gPad->Update(); tStatsBox = dynamic_cast(tHisto1->FindObject("stats")); tStatsBox->SetOptStat(1100); tStatsBox->SetOptFit(10001); tStatsBox->SetX1NDC(0.618); tStatsBox->SetY1NDC(0.697); tStatsBox->SetX2NDC(0.963); tStatsBox->SetY2NDC(0.898); gPad->Modified(); gPad->Update(); tCanvas->cd(5); gPad->SetLogy(); tHisto2 = dynamic_cast(gROOT->FindObjectAny("hResYSelSel2HitMC")); tHisto1 = tHisto2->ProjectionY(); tHisto1->Fit("gaus", "Q"); tHisto1->GetXaxis()->SetRangeUser(-15., 15.); tHisto1->Draw(); gPad->Modified(); gPad->Update(); tFunction = tHisto1->GetFunction("gaus"); tFunction->FixParameter(0, tFunction->GetParameter(0)); tFunction->FixParameter(1, tFunction->GetParameter(1)); gPad->Modified(); gPad->Update(); tStatsBox = dynamic_cast(tHisto1->FindObject("stats")); tStatsBox->SetOptStat(1100); tStatsBox->SetOptFit(10001); tStatsBox->SetX1NDC(0.618); tStatsBox->SetY1NDC(0.697); tStatsBox->SetX2NDC(0.963); tStatsBox->SetY2NDC(0.898); gPad->Modified(); gPad->Update(); tCanvas->cd(6); gPad->SetLogy(); tHisto2 = dynamic_cast(gROOT->FindObjectAny("hResTSelSel2HitMC")); tHisto1 = tHisto2->ProjectionY(); tHisto1->Fit("gaus", "Q"); tHisto1->GetXaxis()->SetRangeUser(-1., 1.); tHisto1->Draw(); gPad->Modified(); gPad->Update(); tFunction = tHisto1->GetFunction("gaus"); tFunction->FixParameter(0, tFunction->GetParameter(0)); tFunction->FixParameter(1, tFunction->GetParameter(1)); gPad->Modified(); gPad->Update(); tStatsBox = dynamic_cast(tHisto1->FindObject("stats")); tStatsBox->SetOptStat(1100); tStatsBox->SetOptFit(10001); tStatsBox->SetX1NDC(0.618); tStatsBox->SetY1NDC(0.697); tStatsBox->SetX2NDC(0.963); tStatsBox->SetY2NDC(0.898); gPad->Modified(); gPad->Update(); tCanvas->cd(7); gPad->SetLogy(); tHisto2 = dynamic_cast(gROOT->FindObjectAny("hResX04HitMC")); tHisto1 = tHisto2->ProjectionY(); tHisto1->Fit("gaus", "Q", "", -dFitRangeDX04, dFitRangeDX04); tHisto1->GetXaxis()->SetRangeUser(-15., 15.); tHisto1->Draw(); gPad->Modified(); gPad->Update(); tFunction = tHisto1->GetFunction("gaus"); tFunction->FixParameter(0, tFunction->GetParameter(0)); tFunction->FixParameter(1, tFunction->GetParameter(1)); gPad->Modified(); gPad->Update(); tStatsBox = dynamic_cast(tHisto1->FindObject("stats")); tStatsBox->SetOptStat(1100); tStatsBox->SetOptFit(10001); tStatsBox->SetX1NDC(0.618); tStatsBox->SetY1NDC(0.697); tStatsBox->SetX2NDC(0.963); tStatsBox->SetY2NDC(0.898); gPad->Modified(); gPad->Update(); tCanvas->cd(8); gPad->SetLogy(); tHisto2 = dynamic_cast(gROOT->FindObjectAny("hResY04HitMC")); tHisto1 = tHisto2->ProjectionY(); tHisto1->Fit("gaus", "Q", "", -dFitRangeDY04, dFitRangeDY04); tHisto1->GetXaxis()->SetRangeUser(-15., 15.); tHisto1->Draw(); gPad->Modified(); gPad->Update(); tFunction = tHisto1->GetFunction("gaus"); tFunction->FixParameter(0, tFunction->GetParameter(0)); tFunction->FixParameter(1, tFunction->GetParameter(1)); gPad->Modified(); gPad->Update(); tStatsBox = dynamic_cast(tHisto1->FindObject("stats")); tStatsBox->SetOptStat(1100); tStatsBox->SetOptFit(10001); tStatsBox->SetX1NDC(0.618); tStatsBox->SetY1NDC(0.697); tStatsBox->SetX2NDC(0.963); tStatsBox->SetY2NDC(0.898); gPad->Modified(); gPad->Update(); tCanvas->cd(9); gPad->SetLogy(); tHisto2 = dynamic_cast(gROOT->FindObjectAny("hResT04HitMC")); tHisto1 = tHisto2->ProjectionY(); tHisto1->Fit("gaus", "Q", "", -dFitRangeDT04, dFitRangeDT04); tHisto1->GetXaxis()->SetRangeUser(-1., 1.); tHisto1->Draw(); gPad->Modified(); gPad->Update(); tFunction = tHisto1->GetFunction("gaus"); tFunction->FixParameter(0, tFunction->GetParameter(0)); tFunction->FixParameter(1, tFunction->GetParameter(1)); gPad->Modified(); gPad->Update(); tStatsBox = dynamic_cast(tHisto1->FindObject("stats")); tStatsBox->SetOptStat(1100); tStatsBox->SetOptFit(10001); tStatsBox->SetX1NDC(0.618); tStatsBox->SetY1NDC(0.697); tStatsBox->SetX2NDC(0.963); tStatsBox->SetY2NDC(0.898); gPad->Modified(); gPad->Update(); tCanvas->SaveAs("pl_over_MCHitRes.pdf"); }