Add test for sector-by-sector fits from CE calibration. Fail CE entry production
authorhaavard <haavard@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 15 Nov 2010 12:33:40 +0000 (12:33 +0000)
committerhaavard <haavard@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 15 Nov 2010 12:33:40 +0000 (12:33 +0000)
if there is no side (A or C) with at least 32 half sectors present.

TPC/AliTPCPreprocessor.cxx

index b23e0cb..939d1f3 100644 (file)
@@ -60,6 +60,8 @@ const char* kPressureSensorNames[kNumPressureSensors] = {
                    "CavernAtmosPressure",
                    "CavernAtmosPressure2",
                    "SurfaceAtmosPressure" };
+const Int_t  kMinCESectors = 32;      // minimum number of sectors (per side)
+                                      // to accept CE calibration
       
 
 //
@@ -1023,11 +1025,27 @@ UInt_t AliTPCPreprocessor::ExtractCE(Int_t sourceFXS)
         } else {
           result=10;
         }
+
         delete calCE;
         f->Close();
       }
       ++index;
     }  // while(list)
+//
+//   Check number of calibrated sectors per side
+// 
+    Int_t aside=0, cside=0;
+    for (Int_t ind=0; ind<nSectors/4; ind++ ) {
+        TGraph *grT=(TGraph*)rocTtime->At(ind);
+       if (grT) aside++;
+       grT=(TGraph*)rocTtime->At(ind+nSectors/2);
+       if (grT) aside++;
+       grT=(TGraph*)rocTtime->At(ind+nSectors/4);
+       if (grT) cside++;
+       grT=(TGraph*)rocTtime->At(ind+3*nSectors/4);
+       if (grT) cside++;
+     }
+     if ( (aside<kMinCESectors) && (cside<kMinCESectors) ) result=10;
 
     //
     //=== New CE part