]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
AliTPCcalibDButil.cxx.diff Add NaN counter
authormarian <marian@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 24 Nov 2009 20:33:01 +0000 (20:33 +0000)
committermarian <marian@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 24 Nov 2009 20:33:01 +0000 (20:33 +0000)
AliTPCcalibDButil.h.diff Add NaN counter
AliTPCCalibViewerGUItime.cxx.diff Sort entries for timestamp
AliTPCCalibViewerGUItime.h.diff Sort entries for timestamp

Jens

TPC/AliTPCCalibViewerGUItime.cxx
TPC/AliTPCCalibViewerGUItime.h
TPC/AliTPCcalibDButil.cxx
TPC/AliTPCcalibDButil.h

index ddeee140f0648b7960d9d559767bf73599cf9813..6872bf6521181f65213c1a07d1e0e37aa3e80323 100644 (file)
@@ -699,7 +699,7 @@ void AliTPCCalibViewerGUItime::GetCutString(TString &cutStr){
   cutStr=cuts.GetTitle();
 }
 //______________________________________________________________________________
-void AliTPCCalibViewerGUItime::UpdateValueArrays(Bool_t withGraph)
+void AliTPCCalibViewerGUItime::UpdateValueArrays(Bool_t withGraph, const Double_t *xArr)
 {
   //
   //
@@ -710,13 +710,20 @@ void AliTPCCalibViewerGUItime::UpdateValueArrays(Bool_t withGraph)
     fRunNumbers.ResizeTo(1);
     fTimeStamps.ResizeTo(1);
   } else {
-    fValuesX.ResizeTo(fTree->GetSelectedRows());
-    fValuesY.ResizeTo(fTree->GetSelectedRows());
-    fRunNumbers.ResizeTo(fTree->GetSelectedRows());
-    fTimeStamps.ResizeTo(fTree->GetSelectedRows());
-    fValuesY.SetElements(fTree->GetV3());
-    fRunNumbers.SetElements(fTree->GetV1());
-    fTimeStamps.SetElements(fTree->GetV2());
+    const Long64_t nrows=fTree->GetSelectedRows();
+    fValuesX.ResizeTo(nrows);
+    fValuesY.ResizeTo(nrows);
+    fRunNumbers.ResizeTo(nrows);
+    fTimeStamps.ResizeTo(nrows);
+    long long *index=new long long[nrows];
+    TMath::Sort(nrows,fTree->GetV2(),index,kFALSE);
+    for (Long64_t i=0; i<nrows; ++i){
+      fValuesX.GetMatrixArray()[i]=xArr[index[i]];
+      fValuesY.GetMatrixArray()[i]=fTree->GetV3()[index[i]];
+      fRunNumbers.GetMatrixArray()[i]=fTree->GetV1()[index[i]];
+      fTimeStamps.GetMatrixArray()[i]=fTree->GetV2()[index[i]];
+    }
+    delete [] index;
   }
 }
 //______________________________________________________________________________
@@ -851,24 +858,29 @@ void AliTPCCalibViewerGUItime::DoDraw() {
   //select data
   fTree->Draw(drawString.Data(),cutString.Data(),optString.Data());
   if (fTree->GetSelectedRows()==-1) return;
-  UpdateValueArrays(graphOutput);
+  
   TString title;
   GetHistogramTitle(title);
   Bool_t drawGraph=kFALSE;
+  Double_t *xArr=0;
   if (graphOutput){
     drawGraph=kTRUE;
     if (fIsCustomDraw&&fDrawString.Contains(":")){
-        fValuesX.SetElements(fTree->GetV4());
+//       fValuesX.SetElements(fTree->GetV4());
+      xArr=fTree->GetV4();
     }else{
       if (fRadioXrun->GetState()==kButtonDown){
-        fValuesX.SetElements(fTree->GetV1());
+//         fValuesX.SetElements(fTree->GetV1());
+        xArr=fTree->GetV1();
       } else if (fRadioXtime->GetState()==kButtonDown){
-        fValuesX.SetElements(fTree->GetV2());
+//         fValuesX.SetElements(fTree->GetV2());
+        xArr=fTree->GetV2();
       } else {
         drawGraph=kFALSE;
       }
     }
   }
+  UpdateValueArrays(graphOutput, xArr);
 //   if (graphOutput){
 //     if (fIsCustomDraw){
 //       if (fDrawString.Contains(":")){
index 529bac1b9894f7e41652982af864652a867a198f..ca43baf102722f9bf1192634db9e56c1b3923de8 100644 (file)
@@ -177,7 +177,7 @@ public:
   void SetInitialValues();
   void CheckDrawGraph();
   Bool_t CheckChain();
-  void UpdateValueArrays(Bool_t withGraph);
+  void UpdateValueArrays(Bool_t withGraph, const Double_t *xArr);
   const char* SubstituteUnderscores(const char* in);
   void GetHistogramTitle(TString &title);
   void AdjustYRange();
index 8f870879fc225908c34bae9188e5ae7f40c05db6..acf2da5414c45dd58b20c75241b8f145d6a020c7 100644 (file)
@@ -331,7 +331,7 @@ void AliTPCcalibDButil::ProcessCEgraphs(TVectorD &vecTEntries, TVectorD &vecTMea
 //_____________________________________________________________________________________
 void AliTPCcalibDButil::ProcessNoiseData(TVectorD &vNoiseMean, TVectorD &vNoiseMeanSenRegions,
                       TVectorD &vNoiseRMS, TVectorD &vNoiseRMSSenRegions,
-                      Int_t &nonMaskedZero)
+                      Int_t &nonMaskedZero, Int_t &nNaN)
 {
   //
   // process noise data
@@ -352,6 +352,7 @@ void AliTPCcalibDButil::ProcessNoiseData(TVectorD &vNoiseMean, TVectorD &vNoiseM
   vNoiseRMS.Zero();
   vNoiseRMSSenRegions.Zero();
   nonMaskedZero=0;
+  nNaN=0;
   //counters
   TVectorD c(infoSize);
   TVectorD cs(infoSize);
@@ -379,7 +380,8 @@ void AliTPCcalibDButil::ProcessNoiseData(TVectorD &vNoiseMean, TVectorD &vNoiseM
         }
         //check for nan
         if ( !(noiseVal<10000000) ){
-          printf ("Warning: nan detected in (sec,row,pad - val): %02d,%02d,%03d - %.1f\n",isec,irow,ipad,noiseVal);
+//           printf ("Warning: nan detected in (sec,row,pad - val): %02d,%02d,%03d - %.1f\n",isec,irow,ipad,noiseVal);
+          ++nNaN;
           continue;
         }
         Int_t cpad=(Int_t)ipad-(Int_t)npads/2;
index b795eaaca9b6fea8a3ccfcc1f680b06464ac85ef..cb7ee3b2abd3a5c32999a58a5c658623acafa92d 100644 (file)
@@ -47,7 +47,7 @@ public:
                        Float_t &driftTimeA, Float_t &driftTimeC );
   void ProcessNoiseData(TVectorD &vNoiseMean, TVectorD &vNoiseMeanSenRegions,
                         TVectorD &vNoiseRMS, TVectorD &vNoiseRMSSenRegions,
-                        Int_t &nonMaskedZero);
+                        Int_t &nonMaskedZero, Int_t &nNaN);
   void ProcessPulser(TVectorD &vMeanTime);
   void ProcessALTROConfig(Int_t &nMasked);
   void ProcessGoofie(TVectorD & vecEntries, TVectorD & vecMedian, TVectorD &vecMean, TVectorD &vecRMS);