2945 this->SetName(
"resplots");
2949 TDirectory *trt =
nullptr;
2950 TDirectory *det1 =
nullptr;
2951 TDirectory *det2 =
nullptr;
2952 TDirectory *det3 =
nullptr;
2953 TDirectory *det4 =
nullptr;
2957 cout <<
" In ResidualPlots Xenon" << endl;
2958 trt = (TDirectory *)
file->FindKey(
"TRT_all")->ReadObj();
2960 throw std::runtime_error(
"trt pointer is null");
2962 det1 = (TDirectory *)trt->FindKey(
"Detector_-1")->ReadObj();
2963 det2 = (TDirectory *)trt->FindKey(
"Detector_1")->ReadObj();
2964 det3 = (TDirectory *)trt->FindKey(
"Detector_-2")->ReadObj();
2965 det4 = (TDirectory *)trt->FindKey(
"Detector_2")->ReadObj();
2970 throw std::runtime_error(
"trt pointer is null");
2974 cout <<
" In ResidualPlots Argon" << endl;
2975 if (
file->FindKey(
"TRT_Ar_all"))
2976 trt = (TDirectory *)
file->FindKey(
"TRT_Ar_all")->ReadObj();
2977 if (trt->FindKey(
"Detector_Ar_-1"))
2978 det1 = (TDirectory *)trt->FindKey(
"Detector_Ar_-1")->ReadObj();
2979 if (trt->FindKey(
"Detector_Ar_1"))
2980 det2 = (TDirectory *)trt->FindKey(
"Detector_Ar_1")->ReadObj();
2981 if (trt->FindKey(
"Detector_Ar_-2"))
2982 det3 = (TDirectory *)trt->FindKey(
"Detector_Ar_-2")->ReadObj();
2983 if (trt->FindKey(
"Detector_Ar_2"))
2984 det4 = (TDirectory *)trt->FindKey(
"Detector_Ar_2")->ReadObj();
2987 TH2F *reshist1 =
nullptr;
2988 TH2F *reshist2 =
nullptr;
2989 TH2F *reshist3 =
nullptr;
2990 TH2F *reshist4 =
nullptr;
2991 TH2F *reshist5 =
nullptr;
2992 TH2F *treshist1 =
nullptr;
2993 TH2F *treshist2 =
nullptr;
2994 TH2F *treshist3 =
nullptr;
2995 TH2F *treshist4 =
nullptr;
2996 TH2F *treshist5 =
nullptr;
2998 cout <<
" Find residual histograms " << endl;
3000 if (trt->FindKey(
"residual"))
3001 reshist1 = (
TH2F *)trt->FindKey(
"residual")->ReadObj();
3004 if (det1->FindKey(
"residual"))
3005 reshist2 = (
TH2F *)det1->FindKey(
"residual")->ReadObj();
3009 if (det2->FindKey(
"residual"))
3010 reshist3 = (
TH2F *)det2->FindKey(
"residual")->ReadObj();
3014 if (det3->FindKey(
"residual"))
3015 reshist4 = (
TH2F *)det3->FindKey(
"residual")->ReadObj();
3019 if (det4->FindKey(
"residual"))
3020 reshist5 = (
TH2F *)det4->FindKey(
"residual")->ReadObj();
3023 cout <<
" Find time residual histograms" << endl;
3024 if (trt->FindKey(
"timeresidual"))
3025 treshist1 = (
TH2F *)trt->FindKey(
"timeresidual")->ReadObj();
3028 if (det1->FindKey(
"timeresidual"))
3029 treshist2 = (
TH2F *)det1->FindKey(
"timeresidual")->ReadObj();
3033 if (det2->FindKey(
"timeresidual"))
3034 treshist3 = (
TH2F *)det2->FindKey(
"timeresidual")->ReadObj();
3038 if (det3->FindKey(
"timeresidual"))
3039 treshist4 = (
TH2F *)det3->FindKey(
"timeresidual")->ReadObj();
3043 if (det4->FindKey(
"timeresidual"))
3044 treshist5 = (
TH2F *)det4->FindKey(
"timeresidual")->ReadObj();
3047 cout <<
" Configure residual histograms" << endl;
3049 reshist1->SetTitle(Form(
"residual whole TRT"));
3051 reshist2->SetTitle(Form(
"residual (barrel side C)"));
3053 reshist3->SetTitle(Form(
"residual (barrel side A)"));
3055 reshist4->SetTitle(Form(
"residual (endcap side C)"));
3057 reshist5->SetTitle(Form(
"residual (endcap side A)"));
3059 reshist2->SetFillColor(46);
3061 reshist3->SetFillColor(46);
3063 reshist4->SetFillColor(46);
3065 reshist5->SetFillColor(46);
3067 cout <<
" Configure time residual histograms" << endl;
3069 treshist1->SetTitle(
"time-residual whole TRT");
3071 treshist2->SetTitle(
"time-residual (barrel side C)");
3073 treshist3->SetTitle(
"time-residual (barrel side A)");
3075 treshist4->SetTitle(
"time-residual (endcap side C)");
3077 treshist5->SetTitle(
"time-residual (endcap side A)");
3079 treshist2->SetFillColor(38);
3081 treshist3->SetFillColor(38);
3083 treshist4->SetFillColor(38);
3085 treshist5->SetFillColor(38);
3091 cout <<
" Configure Argon residual histograms" << endl;
3093 reshist1->SetTitle(
"residual Argon whole TRT");
3095 reshist2->SetTitle(
"residual Argon (barrel side C)");
3097 reshist3->SetTitle(
"residual Argon (barrel side A)");
3099 reshist4->SetTitle(
"residual Argon (endcap side C)");
3101 reshist5->SetTitle(
"residual Argon (endcap side A)");
3103 treshist1->SetTitle(
"time-residual Argon whole TRT");
3105 treshist2->SetTitle(
"time-residual Argon (barrel side C)");
3107 treshist3->SetTitle(
"time-residual Argon (barrel side A)");
3109 treshist4->SetTitle(
"time-residual Argon (endcap side C)");
3111 treshist5->SetTitle(
"time-residual Argon (endcap side A)");
3114 TF1 *resfit2 =
nullptr;
3115 TF1 *resfit3 =
nullptr;
3116 TF1 *resfit4 =
nullptr;
3117 TF1 *resfit5 =
nullptr;
3118 TF1 *tresfit2 =
nullptr;
3119 TF1 *tresfit3 =
nullptr;
3120 TF1 *tresfit4 =
nullptr;
3121 TF1 *tresfit5 =
nullptr;
3124 resfit2 = (TF1 *)reshist2->GetListOfFunctions()->First();
3126 resfit3 = (TF1 *)reshist3->GetListOfFunctions()->First();
3128 resfit4 = (TF1 *)reshist4->GetListOfFunctions()->First();
3130 resfit5 = (TF1 *)reshist5->GetListOfFunctions()->First();
3132 tresfit2 = (TF1 *)treshist2->GetListOfFunctions()->First();
3134 tresfit3 = (TF1 *)treshist3->GetListOfFunctions()->First();
3136 tresfit4 = (TF1 *)treshist4->GetListOfFunctions()->First();
3138 tresfit5 = (TF1 *)treshist5->GetListOfFunctions()->First();
3140 TText *mintxt =
new TText();
3141 mintxt->SetNDC(kTRUE);
3148 cout <<
" Draw residual barrel C" << endl;
3150 mintxt->DrawText(0.15, 0.85, Form(
"Mean: %.3f", resfit2->GetParameter(1)));
3151 mintxt->DrawText(0.15, 0.80, Form(
"Sigma: %.3f", resfit2->GetParameter(2)));
3157 cout <<
" Draw residual barrel A" << endl;
3159 mintxt->DrawText(0.15, 0.85, Form(
"Mean: %.3f", resfit3->GetParameter(1)));
3160 mintxt->DrawText(0.15, 0.80, Form(
"Sigma: %.3f", resfit3->GetParameter(2)));
3166 cout <<
" Draw residual endcap C" << endl;
3168 mintxt->DrawText(0.15, 0.85, Form(
"Mean: %.3f", resfit4->GetParameter(1)));
3169 mintxt->DrawText(0.15, 0.80, Form(
"Sigma: %.3f", resfit4->GetParameter(2)));
3174 cout <<
" Draw residual endcap A" << endl;
3176 mintxt->DrawText(0.15, 0.85, Form(
"Mean: %.3f", resfit5->GetParameter(1)));
3177 mintxt->DrawText(0.15, 0.80, Form(
"Sigma: %.3f", resfit5->GetParameter(2)));
3183 cout <<
" Draw time residual barrel C" << endl;
3185 mintxt->DrawText(0.15, 0.85, Form(
"Mean: %.3f", tresfit2->GetParameter(1)));
3186 mintxt->DrawText(0.15, 0.80, Form(
"Sigma: %.3f", tresfit2->GetParameter(2)));
3192 cout <<
" Draw time residual barrel A" << endl;
3194 mintxt->DrawText(0.15, 0.85, Form(
"Mean: %.3f", tresfit3->GetParameter(1)));
3195 mintxt->DrawText(0.15, 0.80, Form(
"Sigma: %.3f", tresfit3->GetParameter(2)));
3200 cout <<
" Draw time residual endcap C" << endl;
3202 mintxt->DrawText(0.15, 0.85, Form(
"Mean: %.3f", tresfit4->GetParameter(1)));
3203 mintxt->DrawText(0.15, 0.80, Form(
"Sigma: %.3f", tresfit4->GetParameter(2)));
3208 cout <<
" Draw time residual endcap A" << endl;
3210 mintxt->DrawText(0.15, 0.85, Form(
"Mean: %.3f", tresfit5->GetParameter(1)));
3211 mintxt->DrawText(0.15, 0.80, Form(
"Sigma: %.3f", tresfit5->GetParameter(2)));
3213 gStyle->SetOptStat(0);