@@ -207,6 +207,11 @@ InitStatus R3BOnlineSpectraFrsSci::Init()
207207 cTcal_Tof->Divide (1 , fNbTofs );
208208 fh1_Tcal1Hit_TofRaw = new TH1D *[fNbTofs ];
209209
210+ sprintf (Name1, " Tcal1Hit_Delta_Tcal_Tref" );
211+ cTcal_DTcal = new TCanvas (Name1, Name1, 10 , 10 , 800 , 700 );
212+ cTcal_DTcal->Divide (fNbDets , fNbPmts - 1 );
213+ fh1_Tcal1Hit_DeltaTcal = new TH1D *[fNbDets * (fNbPmts - 1 )];
214+
210215 for (UShort_t i = 0 ; i < fNbDets ; i++)
211216 {
212217 // === TH1F: Raw Position in Ns if mult1 RIGHT and LEFT === //
@@ -226,6 +231,24 @@ InitStatus R3BOnlineSpectraFrsSci::Init()
226231 fh1_Tcal1Hit_PosRaw[i]->GetYaxis ()->SetTitleSize (0.05 );
227232 cTcal_Pos->cd (i + 1 );
228233 fh1_Tcal1Hit_PosRaw[i]->Draw ();
234+
235+ // === TH1F: DeltaTcal = Tcal_Pmt - Tcal_Tref
236+ for (UShort_t j = 0 ; j < fNbPmts - 1 ; j++)
237+ { // Tref has the last index
238+ sprintf (Name1, " FrsSci%i_Delta_TcalPmt%i_Tref_MULT1" , i + 1 , j + i);
239+ fh1_Tcal1Hit_DeltaTcal[i * (fNbPmts - 1 ) + j] = new TH1D (Name1, Name1, 600000 , -5000 , 1000 );
240+ fh1_Tcal1Hit_DeltaTcal[i * (fNbPmts - 1 ) + j]->GetXaxis ()->SetTitle (
241+ " DeltaTcal=Tref-Tpmt [ns]. 10ps/bin" );
242+ fh1_Tcal1Hit_DeltaTcal[i * (fNbPmts - 1 ) + j]->GetYaxis ()->SetTitle (" number of counts with mult1" );
243+ fh1_Tcal1Hit_DeltaTcal[i * (fNbPmts - 1 ) + j]->GetXaxis ()->CenterTitle (true );
244+ fh1_Tcal1Hit_DeltaTcal[i * (fNbPmts - 1 ) + j]->GetYaxis ()->CenterTitle (true );
245+ fh1_Tcal1Hit_DeltaTcal[i * (fNbPmts - 1 ) + j]->GetXaxis ()->SetLabelSize (0.05 );
246+ fh1_Tcal1Hit_DeltaTcal[i * (fNbPmts - 1 ) + j]->GetXaxis ()->SetTitleSize (0.05 );
247+ fh1_Tcal1Hit_DeltaTcal[i * (fNbPmts - 1 ) + j]->GetYaxis ()->SetLabelSize (0.05 );
248+ fh1_Tcal1Hit_DeltaTcal[i * (fNbPmts - 1 ) + j]->GetYaxis ()->SetTitleSize (0.05 );
249+ cTcal_DTcal->cd (i * (fNbPmts - 2 ) + j + 1 );
250+ fh1_Tcal1Hit_DeltaTcal[i * (fNbPmts - 1 ) + j]->Draw ();
251+ }
229252 }
230253
231254 if (fNbTofs > 0 )
@@ -530,6 +553,7 @@ InitStatus R3BOnlineSpectraFrsSci::Init()
530553 TFolder* mainfolTcal = new TFolder (" FrsSciTcal" , " FrsSci Tcal info" );
531554 mainfolTcal->Add (cTcal_Pos);
532555 mainfolTcal->Add (cTcal_Tof);
556+ mainfolTcal->Add (cTcal_DTcal);
533557 run->AddObject (mainfolTcal);
534558 }
535559 if (fPosCal || fTofCal )
@@ -574,7 +598,12 @@ void R3BOnlineSpectraFrsSci::Reset_Histo()
574598 }
575599
576600 if (fTcal )
601+ {
577602 fh1_Tcal1Hit_PosRaw[i]->Reset ();
603+ for (UShort_t j = 0 ; j < fNbPmts - 1 ; j++)
604+ fh1_Tcal1Hit_DeltaTcal[i * (fNbPmts - 1 ) * j]->Reset ();
605+ }
606+
578607 if (fPosCal )
579608 {
580609 fh1_Cal_PosRaw[i]->Reset ();
@@ -694,6 +723,11 @@ void R3BOnlineSpectraFrsSci::Exec(Option_t* option)
694723 if (multTcal[i * fNbPmts ] == 1 && multTcal[i * fNbPmts + 1 ] == 1 )
695724 {
696725 fh1_Tcal1Hit_PosRaw[i]->Fill ((Float_t)(Traw[i * fNbPmts ] - Traw[i * fNbPmts + 1 ]));
726+ for (UShort_t j = 0 ; j < fNbPmts - 1 ; j++)
727+ {
728+ fh1_Tcal1Hit_DeltaTcal[i * (fNbPmts - 1 ) + j]->Fill (
729+ Traw[i * (fNbPmts - 1 ) + j] - Traw[i * (fNbPmts - 1 ) + fNbPmts - 1 ]);
730+ }
697731 }
698732 }
699733 // TofRaw [ns] relatively to Tref
@@ -819,6 +853,10 @@ void R3BOnlineSpectraFrsSci::FinishTask()
819853 for (UShort_t i = 0 ; i < fNbDets ; i++)
820854 {
821855 fh1_Tcal1Hit_PosRaw[i]->Write ();
856+ for (UShort_t j = 0 ; j < fNbPmts - 1 ; j++)
857+ {
858+ fh1_Tcal1Hit_DeltaTcal[i * (fNbPmts - 1 ) + j]->Write ();
859+ }
822860 }
823861 for (UShort_t i = 0 ; i < fNbTofs ; i++)
824862 {
0 commit comments