-
- for (Int_t ik = 0; ik<24; ik+=2)
- for (Int_t iHt=0; iHt<5; iHt++){
- Int_t cc = ik/2;
- if(allData[cc+1][iHt]!=0 ){
- hCFD1_CFD[cc]->Fill(allData[cc+1][iHt]-allData[1][iHt]);
- hCFD[cc]->Fill(allData[cc+13][iHt]);
- }
+ Float_t besttimeA=9999999;
+ Float_t besttimeC=9999999;
+ Float_t time[24];
+ Float_t meanShift[24];
+ for (Int_t ik = 0; ik<24; ik++)
+ {
+ if(ik<12 && allData[ik+1][0]>0 && allData[knpmtC][0]>0 ){
+ hCFD1minCFD[ik]->Fill(allData[ik+1][0]-allData[knpmtC][0]);
+ hCFD[ik]->Fill(allData[ik+1][0]);
+ }
+
+ if(ik>11 && allData[ik+45][0]>0 && allData[56+knpmtA][0]>0 )
+ {
+ hCFD1minCFD[ik]->Fill(allData[ik+45][0]-allData[56+knpmtA][0]);
+ hCFD[ik]->Fill(allData[ik+45][0]);
+ }
+ if(iev == 10000) {
+ meanShift[ik] = hCFD1minCFD[ik]->GetMean();
+ if(ik==knpmtC || ik==(56+knpmtA)) meanShift[ik]=0;
+ }
+ }
+ //fill mean time _ fast reconstruction
+ if (iev > 10000 )
+ {
+ for (Int_t in=0; in<12; in++)
+ {
+ time[in] = allData[in+1][0] - meanShift[in] ;
+ time[in+12] = allData[in+56+1][0] ;
+ }
+ for (Int_t ipmt=0; ipmt<12; ipmt++){
+ if(time[ipmt] > 1 ) {
+ if(time[ipmt]<besttimeC)
+ besttimeC=time[ipmt]; //timeC
+ }
+ }
+ for ( Int_t ipmt=12; ipmt<24; ipmt++){
+ if(time[ipmt] > 1) {
+ if(time[ipmt]<besttimeA)
+ besttimeA=time[ipmt]; //timeA
+ }
+ }
+ if(besttimeA<9999999 &&besttimeC< 9999999) {
+ Float_t t0 =0.001* 24.4 * Float_t( besttimeA+besttimeC)/2.;
+ hVertex->Fill(t0);
+ }