]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
AliDigits.cxx - Format Warning removal
authormarian <marian@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 15 Jul 2010 09:38:44 +0000 (09:38 +0000)
committermarian <marian@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 15 Jul 2010 09:38:44 +0000 (09:38 +0000)
AliTPCcalibDB.cxx      - Format warnings removal
AliTPCcalibTracksGain.cxx - Format warnings removal
 AliTPCCalibViewerGUI.cxx - Format warnings removal
AliTPCkalmanAlign.cxx     - Format warnings removal
AliTPCcalibAlign.cxx AliTPCcalibAlign.h   - Tracklet residual histograms

TPC/AliDigits.cxx
TPC/AliTPCCalibViewerGUI.cxx
TPC/AliTPCcalibAlign.cxx
TPC/AliTPCcalibAlign.h
TPC/AliTPCcalibDB.cxx
TPC/AliTPCcalibTracksGain.cxx
TPC/AliTPCkalmanAlign.cxx

index 3b8a655a756e456c26aefe7b2bebc6ac760b626a..2e16f5a9e479aee30c23dd42f647b623d1c74561 100644 (file)
@@ -126,8 +126,8 @@ AliDigits::~AliDigits()
 Bool_t AliDigits::OutOfBoundsError(const char *where, Int_t row, Int_t column) 
 {
    // Generate an out-of-bounds error. Always returns false.
-   ::Error(where, "row %d  col %d out of bounds (size: %d x %d, this: 0x%08x)", 
-          row, column, fNrows, fNcols, this);
+   ::Error(where, "row %d  col %d out of bounds (size: %d x %d, this: 0x%08lx)", 
+          row, column, fNrows, fNcols, (ULong_t) this);
    return kFALSE;
 }
 
index fa0b7e95228595b7ba74990082c04f4992a4e3ef..898c75821f22e1177cbf12fd5beb2f2ed0f3c82d 100644 (file)
@@ -1841,7 +1841,7 @@ void AliTPCCalibViewerGUI::DoExport() {
    // create calPad according to drawCommand and cuts
    AliTPCCalPad *calPad = fViewer->GetCalPad(desiredData.Data(), (char*)cutsStr.Data(), (char*)calPadName);
    // finally export calPad to Cint:
-   gROOT->ProcessLine(Form("AliTPCCalPad* %s = (AliTPCCalPad*)0x%lx;", calPadName, calPad));
+   gROOT->ProcessLine(Form("AliTPCCalPad* %s = (AliTPCCalPad*)0x%lx;", calPadName, (ULong_t)calPad));
    fPreprocessor->AddComponent(calPad);
    Info("ExportCalPad", "Current 2D view has been exported to an AliTPCCalPad* with name '%s'", calPadName);
 }
@@ -1872,7 +1872,7 @@ void AliTPCCalibViewerGUI::DoExportNorm() {
    // create calPad according to drawCommand and cuts
    AliTPCCalPad *calPad = fViewer->GetCalPad(desiredData.Data(), (char*)cutsStr.Data(), (char*)fComboExportName->GetTextEntry()->GetText());
    // finally export calPad to Cint:
-   gROOT->ProcessLine(Form("AliTPCCalPad* %s = (AliTPCCalPad*)0x%lx;", calPadName, calPad));
+   gROOT->ProcessLine(Form("AliTPCCalPad* %s = (AliTPCCalPad*)0x%lx;", calPadName, (ULong_t) calPad));
    Info("ExportCalPad", "Current 2D view has been exported to an AliTPCCalPad* with name '%s'", calPadName);
 }
 
index e2e804921b5c1f84f84a82c372fc9ae93548083b..5a44932d478d59de25b56401570d368a695787d1 100644 (file)
@@ -181,7 +181,6 @@ AliTPCcalibAlign::AliTPCcalibAlign()
      fMatrixArray9(72*72),
      fMatrixArray6(72*72),
      fCombinedMatrixArray6(72),
-     fCompTracklet(0),             // tracklet comparison
      fNoField(kFALSE),
      fXIO(0),
      fXmiddle(0),
@@ -213,6 +212,12 @@ AliTPCcalibAlign::AliTPCcalibAlign()
   fClusterDelta[3]=0;   // cluster residuals
   fClusterDelta[4]=0;   // cluster residuals - ITS constrained
   fClusterDelta[5]=0;   // cluster residuals
+  
+  
+  fTrackletDelta[0]=0;   // tracklet residuals
+  fTrackletDelta[1]=0;   // tracklet residuals
+  fTrackletDelta[2]=0;   // tracklet residuals 
+  fTrackletDelta[3]=0;   // tracklet residuals
 }
 
 AliTPCcalibAlign::AliTPCcalibAlign(const Text_t *name, const Text_t *title)
@@ -234,7 +239,6 @@ AliTPCcalibAlign::AliTPCcalibAlign(const Text_t *name, const Text_t *title)
    fMatrixArray9(72*72),
    fMatrixArray6(72*72),
    fCombinedMatrixArray6(72),
-   fCompTracklet(0),             // tracklet comparison
    fNoField(kFALSE),
    fXIO(0),
    fXmiddle(0),
@@ -270,8 +274,10 @@ AliTPCcalibAlign::AliTPCcalibAlign(const Text_t *name, const Text_t *title)
   fClusterDelta[4]=0;   // cluster residuals - ITS constrained
   fClusterDelta[5]=0;   // cluster residuals
 
-
-
+  fTrackletDelta[0]=0;   // tracklet residuals
+  fTrackletDelta[1]=0;   // tracklet residuals
+  fTrackletDelta[2]=0;   // tracklet residuals 
+  fTrackletDelta[3]=0;   // tracklet residuals
 }
 
 
@@ -296,7 +302,6 @@ AliTPCcalibAlign::AliTPCcalibAlign(const AliTPCcalibAlign &align)
    fMatrixArray9(align.fMatrixArray9),
    fMatrixArray6(align.fMatrixArray6),
    fCombinedMatrixArray6(align.fCombinedMatrixArray6),
-   fCompTracklet(align.fCompTracklet),             // tracklet comparison
    fNoField(align.fNoField),
    fXIO(align.fXIO),   
    fXmiddle(align.fXmiddle),   
@@ -383,6 +388,10 @@ AliTPCcalibAlign::AliTPCcalibAlign(const AliTPCcalibAlign &align)
   fClusterDelta[4]=0;   // cluster residuals - ITS constrained
   fClusterDelta[5]=0;   // cluster residuals
 
+  fTrackletDelta[0]=0;   // tracklet residuals
+  fTrackletDelta[1]=0;   // tracklet residuals
+  fTrackletDelta[2]=0;   // tracklet residuals 
+  fTrackletDelta[3]=0;   // tracklet residuals
 }
 
 
@@ -432,7 +441,6 @@ AliTPCcalibAlign::~AliTPCcalibAlign() {
   fMatrixArray9.Delete();     // array of transnformtation matrix
   fMatrixArray6.Delete();     // array of transnformtation matrix 
 
-  if (fCompTracklet) delete fCompTracklet;
 
   fArraySectorIntParam.SetOwner(kTRUE); // array of sector alignment parameters
   fArraySectorIntCovar.SetOwner(kTRUE); // array of sector alignment covariances 
@@ -441,6 +449,12 @@ AliTPCcalibAlign::~AliTPCcalibAlign() {
   for (Int_t i=0; i<6; i++){
     delete fClusterDelta[i];   // cluster residuals
   }
+
+  for (Int_t i=0; i<4; i++){
+    delete fTrackletDelta[i];   // tracklet residuals
+  }
+
+
 }
 
 void AliTPCcalibAlign::Process(AliESDEvent *event) {
@@ -448,6 +462,7 @@ void AliTPCcalibAlign::Process(AliESDEvent *event) {
   // Process pairs of cosmic tracks
   //
   if (!fClusterDelta[0])  MakeResidualHistos();
+  if (!fTrackletDelta[0])  MakeResidualHistosTracklet();
   //
   fCurrentEvent=event;
   ExportTrackPoints(event);  // export track points for external calibration 
@@ -906,7 +921,12 @@ void AliTPCcalibAlign::ProcessTracklets(const AliExternalTrackParam &tp1,
   //
   Int_t accept       =   AcceptTracklet(tp1,tp2);  
   Int_t acceptLinear =   AcceptTracklet(parLine1,parLine2);
+  if (accept==0){
+    FillHisto(&tp1,&tp2, s1,s2);
+    FillHisto(&tp2,&tp1, s2,s1);
+  }
+
+
   if (fStreamLevel>1 && seed){
     TTreeSRedirector *cstream = GetDebugStreamer();
     if (cstream){
@@ -1693,6 +1713,67 @@ void AliTPCcalibAlign::MakeResidualHistos(){
 
 }
 
+
+void AliTPCcalibAlign::MakeResidualHistosTracklet(){
+  //
+  // Make tracklet residual histograms
+  //
+  Double_t xminTrack[9], xmaxTrack[9];
+  Int_t    binsTrack[9];
+  TString  axisName[9],axisTitle[9];
+  //
+  // 0 - delta   of interest
+  // 1 - global  phi in sector number  as float
+  // 2 - local   x
+  // 3 - local   ky
+  // 4 - local   kz
+  // 5 - sector  1
+  // 5 - sector  0
+
+  axisName[0]="delta";   axisTitle[0]="#Delta (cm)"; 
+  binsTrack[0]=60;       xminTrack[0]=-0.6;        xmaxTrack[0]=0.6; 
+  //
+  axisName[1]="phi";   axisTitle[1]="#phi"; 
+  binsTrack[1]=180;       xminTrack[1]=-TMath::Pi();        xmaxTrack[1]=TMath::Pi(); 
+  //
+  axisName[2]="localX";   axisTitle[2]="x (cm)"; 
+  binsTrack[2]=10;       xminTrack[2]=120.;        xmaxTrack[2]=200.; 
+  //
+  axisName[3]="kY";      axisTitle[3]="dy/dx"; 
+  binsTrack[3]=10;       xminTrack[3]=-0.5;        xmaxTrack[3]=0.5; 
+  //
+  axisName[4]="kZ";      axisTitle[4]="dz/dx"; 
+  binsTrack[4]=22;       xminTrack[4]=-1.1;        xmaxTrack[4]=1.1; 
+  //
+  axisName[5]="is1";      axisTitle[5]="is1"; 
+  binsTrack[5]=72;       xminTrack[5]=0;        xmaxTrack[5]=72;
+  //
+  axisName[6]="is0";      axisTitle[6]="is0"; 
+  binsTrack[6]=72;       xminTrack[6]=0;        xmaxTrack[6]=72;
+  //
+  xminTrack[0]=-0.3;        xmaxTrack[0]=0.3; 
+  fTrackletDelta[0] = new THnSparseF("#Delta_{Y} (cm)","#Delta_{Y} (cm)", 7, binsTrack,xminTrack, xmaxTrack);
+  xminTrack[0]=-0.5;        xmaxTrack[0]=0.5; 
+  fTrackletDelta[1] = new THnSparseF("#Delta_{Z} (cm)","#Delta_{Z} (cm)", 7, binsTrack,xminTrack, xmaxTrack);
+  xminTrack[0]=-0.005;        xmaxTrack[0]=0.005; 
+  fTrackletDelta[2] = new THnSparseF("#Delta_{kY}","#Delta_{kY}", 7, binsTrack,xminTrack, xmaxTrack);
+  xminTrack[0]=-0.005;        xmaxTrack[0]=0.005; 
+  fTrackletDelta[3] = new THnSparseF("#Delta_{kZ}","#Delta_{kZ}", 7, binsTrack,xminTrack, xmaxTrack);
+  //
+  //
+  //
+  for (Int_t ivar=0;ivar<4;ivar++){
+    for (Int_t ivar2=0;ivar2<7;ivar2++){
+      fTrackletDelta[ivar]->GetAxis(ivar2)->SetName(axisName[ivar2].Data());
+      fTrackletDelta[ivar]->GetAxis(ivar2)->SetTitle(axisName[ivar2].Data());
+    }
+  }
+
+}
+
+
+
 void AliTPCcalibAlign::FillHisto(const Double_t *t1,
                                 const Double_t *t2,
                                 Int_t s1,Int_t s2) {
@@ -1725,6 +1806,42 @@ void AliTPCcalibAlign::FillHisto(const Double_t *t1,
 }
 
 
+void AliTPCcalibAlign::FillHisto(const AliExternalTrackParam *tp1,
+                                const AliExternalTrackParam *tp2,
+                                Int_t s1,Int_t s2) {
+  //
+  // Fill residual histograms
+  // Track2-Track1
+  Double_t x[8]={0,0,0,0,0,0,0,0};
+  AliExternalTrackParam p1(*tp1);
+  AliExternalTrackParam p2(*tp2);
+  if (s1%18==s2%18) {
+    // inner outer - match at the IROC-OROC boundary
+    p1.PropagateTo(fXIO, AliTrackerBase::GetBz());
+  }
+  p2.Rotate(p1.GetAlpha());
+  p2.PropagateTo(p1.GetX(),AliTrackerBase::GetBz());
+  Double_t xyz[3];
+  p1.GetXYZ(xyz);
+  x[1]=TMath::ATan2(xyz[1],xyz[0]);
+  x[2]=p1.GetX();
+  x[3]=0.5*(p1.GetSnp()+p2.GetSnp());  // mean snp
+  x[4]=0.5*(p1.GetTgl()+p2.GetTgl());  // mean tgl
+  x[5]=s2;
+  x[6]=s1;
+  
+  x[0]=p2.GetY()-p1.GetY();
+  fTrackletDelta[0]->Fill(x);
+  x[0]=p2.GetZ()-p1.GetZ();
+  fTrackletDelta[1]->Fill(x);
+  x[0]=p2.GetSnp()-p1.GetSnp();
+  fTrackletDelta[2]->Fill(x);
+  x[0]=p2.GetTgl()-p1.GetTgl();
+  fTrackletDelta[3]->Fill(x);
+
+}
+
+
 
 TH1 * AliTPCcalibAlign::GetHisto(HistoType type, Int_t s1, Int_t s2, Bool_t force)
 {
@@ -2112,6 +2229,15 @@ void AliTPCcalibAlign::Add(AliTPCcalibAlign * align){
     if (i==0) continue;  // skip non constrained histo y
     if (align->fClusterDelta[i]) fClusterDelta[i]->Add(align->fClusterDelta[i]);
   }
+
+  for (Int_t i=0; i<4; i++){
+    if (!fTrackletDelta[i] && align->fTrackletDelta[i]) {
+      fTrackletDelta[i]= (THnSparse*)(align->fTrackletDelta[i]->Clone());
+      continue;
+    }
+    if (align->fTrackletDelta[i]) fTrackletDelta[i]->Add(align->fTrackletDelta[i]);
+  }
+
 }
 
 Double_t AliTPCcalibAlign::Correct(Int_t type, Int_t value, Int_t s1, Int_t s2, Double_t x1, Double_t y1, Double_t z1, Double_t dydx1,Double_t dzdx1){
index 0f130061c7ba980b2ed7e2d511b200712f36eec2..56545de619756db3ccaedbf2428f124652b08cc5 100644 (file)
@@ -132,15 +132,21 @@ public:
   //
   //
   void MakeResidualHistos();
+  void MakeResidualHistosTracklet();
   THnSparse * GetClusterDelta(Int_t index) const  { return fClusterDelta[index];}
+  THnSparse * GetTrackletDelta(Int_t index) const  { return fTrackletDelta[index];}
 public:
   
   void FillHisto(const Double_t *t1,
                 const Double_t *t2,
                 Int_t s1,Int_t s2);
+  void FillHisto(const AliExternalTrackParam *tp1,
+                const AliExternalTrackParam *tp2,
+                Int_t s1,Int_t s2);
 
 protected:
   THnSparse *fClusterDelta[6];  //clusters residuals
+  THnSparse *fTrackletDelta[4]; //track residuals
 
   TObjArray fDphiHistArray;    // array of residual histograms  phi      -kPhi
   TObjArray fDthetaHistArray;  // array of residual histograms  theta    -kTheta
@@ -169,7 +175,6 @@ protected:
   //
   TObjArray fCombinedMatrixArray6;      // array  combeined transformation matrix
   //
-  AliExternalComparison  *fCompTracklet;  //tracklet comparison
   //
   Int_t fPoints[72*72];        // number of points in the fitter 
   Bool_t fNoField;             // flag - no field data
@@ -198,7 +203,7 @@ protected:
 private:
   AliTPCcalibAlign&  operator=(const AliTPCcalibAlign&);// not implemented
 
-  ClassDef(AliTPCcalibAlign,3)
+  ClassDef(AliTPCcalibAlign,4)
 };
 
 
index c1d95fcba7953ae138df734f7515a3ad4317454f..aabccafc569ad811bedf1f072215d084081793d0 100644 (file)
@@ -1311,9 +1311,9 @@ Float_t AliTPCcalibDB::GetDCSSensorMeanValue(AliDCSSensorArray *arr, const char
     }
   }
   if (sigDigits>=0){
-    val/=10;
+    // val/=10;
     val=(Float_t)TMath::Floor(val * TMath::Power(10., sigDigits) + .5) / TMath::Power(10., sigDigits);
-    val*=10;
+    //    val*=10;
   }
   return val;
 }
@@ -1697,7 +1697,7 @@ Bool_t AliTPCcalibDB::CreateGUITree(const char* filename){
   
   //
   TString file(filename);
-  if (file.IsNull()) file=Form("guiTreeRun_%d.root",fRun);
+  if (file.IsNull()) file=Form("guiTreeRun_%lld.root",fRun);
   prep.DumpToFile(file.Data());
   return kTRUE;
 }
index 33a4298d2d60aad9507d9d9365343ee0112a4ebc..e453180a77a93a01de716bbae0fdf5db44cdc926 100644 (file)
@@ -420,7 +420,7 @@ AliTPCcalibTracksGain::~AliTPCcalibTracksGain() {
    // Destructor.
    //
 
-   Info("Destructor","");
+   Info("Destructor",":");
    if (fSimpleFitter) delete fSimpleFitter;
    if (fSqrtFitter) delete fSqrtFitter;
    if (fLogFitter) delete fLogFitter;
index ba12df8e2d66727f36edd0f62773a8cacf28e5dd..ca871d8dd2f1d7dbd87f27fd7aa238352875aa90 100644 (file)
@@ -866,7 +866,7 @@ void AliTPCkalmanAlign::FitCE(){
     strFitLX = TStatToolkit::FitPlane(chain,"deltaT-CEG.fElements-CELX.fElements", fstringL.Data(),cutSector+cutAll+"abs(deltaT-CEG.fElements-CELX.fElements)<0.4", chi2,npoints,vecL[isec],covar,-1,0, 10000000, kFALSE);
     printf("sec=%d\tchi2=%f\n",isec,TMath::Sqrt(chi2/npoints));
     //
-    TString fitL=Form("((sector%36)==%d)++((sector%36)==%d)*(sector<36)++((sector%36)==%d)*(lx-133)/100.++((sector%36)==%d)*(sector<36)*(lx-133)/100.++((sector%36)==%d)*(ly)/100.++((sector%36)==%d)*(sector<36)*(ly)/100.",isec,isec,isec,isec);
+    TString fitL=Form("((sector%36)==%d)++((sector%36)==%d)*(sector<36)++((sector%36)==%d)*(lx-133)/100.++((sector%36)==%d)*(sector<36)*(lx-133)/100.++((sector%36)==%d)*(ly)/100.++((sector%36)==%d)*(sector<36)*(ly)/100.",isec,isec,isec,isec,isec);
     if (isec<18) padFitTmpCE=AliTPCCalPad::CreateCalPadFit(fitL.Data(),vecL[isec],dummy);
     if (isec>=18) padFitTmpCE=AliTPCCalPad::CreateCalPadFit(fitL.Data(),dummy,vecL[isec]);
     padFitLCE->Add(padFitTmpCE);