Skip to content
Snippets Groups Projects
Commit dcaf4d39 authored by Sergey Gorbunov's avatar Sergey Gorbunov
Browse files

CA: sts QA task: check U/V correlation

parent abbc9fc7
No related branches found
No related tags found
1 merge request!1299CA: sts QA task: check U/V correlation
Pipeline #23855 passed
...@@ -251,6 +251,7 @@ void CbmCaInputQaSts::DeInit() ...@@ -251,6 +251,7 @@ void CbmCaInputQaSts::DeInit()
fvph_hit_dy.clear(); fvph_hit_dy.clear();
fvph_hit_du.clear(); fvph_hit_du.clear();
fvph_hit_dv.clear(); fvph_hit_dv.clear();
fvph_hit_kuv.clear();
fvph_hit_dt.clear(); fvph_hit_dt.clear();
fvph_n_points_per_hit.clear(); fvph_n_points_per_hit.clear();
...@@ -357,6 +358,9 @@ void CbmCaInputQaSts::FillHistograms() ...@@ -357,6 +358,9 @@ void CbmCaInputQaSts::FillHistograms()
double dxHit = pHit->GetDx(); double dxHit = pHit->GetDx();
double dyHit = pHit->GetDy(); double dyHit = pHit->GetDy();
double duvHit = Cxx * cosU * cosV + Cxy * (sinU * cosV + cosU * sinV) + Cyy * sinU * sinV;
double kuvHit = duvHit / duHit / dvHit;
// Hit time // Hit time
double tHit = pHit->GetTime(); double tHit = pHit->GetTime();
double dtHit = pHit->GetTimeError(); double dtHit = pHit->GetTimeError();
...@@ -371,6 +375,7 @@ void CbmCaInputQaSts::FillHistograms() ...@@ -371,6 +375,7 @@ void CbmCaInputQaSts::FillHistograms()
fvph_hit_dy[iSt]->Fill(dyHit); fvph_hit_dy[iSt]->Fill(dyHit);
fvph_hit_du[iSt]->Fill(duHit); fvph_hit_du[iSt]->Fill(duHit);
fvph_hit_dv[iSt]->Fill(dvHit); fvph_hit_dv[iSt]->Fill(dvHit);
fvph_hit_kuv[iSt]->Fill(kuvHit);
fvph_hit_dt[iSt]->Fill(dtHit); fvph_hit_dt[iSt]->Fill(dtHit);
fvph_hit_xy[nSt]->Fill(xHit, yHit); fvph_hit_xy[nSt]->Fill(xHit, yHit);
...@@ -383,6 +388,7 @@ void CbmCaInputQaSts::FillHistograms() ...@@ -383,6 +388,7 @@ void CbmCaInputQaSts::FillHistograms()
fvph_hit_dy[nSt]->Fill(dyHit); fvph_hit_dy[nSt]->Fill(dyHit);
fvph_hit_du[nSt]->Fill(duHit); fvph_hit_du[nSt]->Fill(duHit);
fvph_hit_dv[nSt]->Fill(dvHit); fvph_hit_dv[nSt]->Fill(dvHit);
fvph_hit_kuv[nSt]->Fill(kuvHit);
fvph_hit_dt[nSt]->Fill(dtHit); fvph_hit_dt[nSt]->Fill(dtHit);
// ********************** // **********************
...@@ -835,6 +841,23 @@ InitStatus CbmCaInputQaSts::InitCanvases() ...@@ -835,6 +841,23 @@ InitStatus CbmCaInputQaSts::InitCanvases()
fvph_reco_eff[nSt]->DrawCopy("colz", ""); fvph_reco_eff[nSt]->DrawCopy("colz", "");
} }
{
auto* canv = MakeQaObject<CbmQaCanvas>("err", "Hit Errors", 1600, 800);
canv->Divide2D(6);
canv->cd(1);
fvph_hit_dx[nSt]->DrawCopy();
canv->cd(2);
fvph_hit_dy[nSt]->DrawCopy();
canv->cd(3);
fvph_hit_dt[nSt]->DrawCopy();
canv->cd(4);
fvph_hit_du[nSt]->DrawCopy();
canv->cd(5);
fvph_hit_dv[nSt]->DrawCopy();
canv->cd(6);
fvph_hit_kuv[nSt]->DrawCopy();
}
{ {
auto* canv = MakeQaObject<CbmQaCanvas>("other", "Other histograms", 1600, 800); auto* canv = MakeQaObject<CbmQaCanvas>("other", "Other histograms", 1600, 800);
canv->Divide2D(3); canv->Divide2D(3);
...@@ -1149,6 +1172,7 @@ InitStatus CbmCaInputQaSts::InitHistograms() ...@@ -1149,6 +1172,7 @@ InitStatus CbmCaInputQaSts::InitHistograms()
fvph_hit_dy.resize(nSt + 1, nullptr); fvph_hit_dy.resize(nSt + 1, nullptr);
fvph_hit_dt.resize(nSt + 1, nullptr); fvph_hit_dt.resize(nSt + 1, nullptr);
fvph_hit_dv.resize(nSt + 1, nullptr); fvph_hit_dv.resize(nSt + 1, nullptr);
fvph_hit_kuv.resize(nSt + 1, nullptr);
fvph_hit_du.resize(nSt + 1, nullptr); fvph_hit_du.resize(nSt + 1, nullptr);
for (int iSt = 0; iSt <= nSt; ++iSt) { for (int iSt = 0; iSt <= nSt; ++iSt) {
...@@ -1203,6 +1227,10 @@ InitStatus CbmCaInputQaSts::InitHistograms() ...@@ -1203,6 +1227,10 @@ InitStatus CbmCaInputQaSts::InitHistograms()
sT = (TString) "Hit position error across back strips" + tsuff + ";dv_{hit} [cm]"; sT = (TString) "Hit position error across back strips" + tsuff + ";dv_{hit} [cm]";
fvph_hit_dv[iSt] = MakeQaObject<TH1F>(sF + "err/" + sN, sT, kNbins, kRHitDv[0], kRHitDv[1]); fvph_hit_dv[iSt] = MakeQaObject<TH1F>(sF + "err/" + sN, sT, kNbins, kRHitDv[0], kRHitDv[1]);
sN = (TString) "hit_kuv" + nsuff;
sT = (TString) "Hit error correlation between front and back strips" + tsuff + ";kuv_{hit} [unitless]";
fvph_hit_kuv[iSt] = MakeQaObject<TH1F>(sF + "err/" + sN, sT, kNbins / 2 * 2 + 1, -1.1, 1.1);
sN = (TString) "hit_dt" + nsuff; sN = (TString) "hit_dt" + nsuff;
sT = (TString) "Hit time error" + tsuff + ";dt_{hit} [ns]"; sT = (TString) "Hit time error" + tsuff + ";dt_{hit} [ns]";
fvph_hit_dt[iSt] = MakeQaObject<TH1F>(sF + "err/" + sN, sT, kNbins, kRHitDt[0], kRHitDt[1]); fvph_hit_dt[iSt] = MakeQaObject<TH1F>(sF + "err/" + sN, sT, kNbins, kRHitDt[0], kRHitDt[1]);
......
...@@ -142,6 +142,7 @@ private: ...@@ -142,6 +142,7 @@ private:
std::vector<TH1F*> fvph_hit_dy; std::vector<TH1F*> fvph_hit_dy;
std::vector<TH1F*> fvph_hit_du; std::vector<TH1F*> fvph_hit_du;
std::vector<TH1F*> fvph_hit_dv; std::vector<TH1F*> fvph_hit_dv;
std::vector<TH1F*> fvph_hit_kuv;
std::vector<TH1F*> fvph_hit_dt; std::vector<TH1F*> fvph_hit_dt;
// MC points occupancy // MC points occupancy
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment