]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
AliTPCcalibCalib.cxx - use also alignmnet - not implemented yet
authormarian <marian@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 14 Dec 2009 17:12:45 +0000 (17:12 +0000)
committermarian <marian@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 14 Dec 2009 17:12:45 +0000 (17:12 +0000)
AliTPCcalibDB.cxx    - ignore dummy run 0
AliTPCcalibTime.cxx  - require refit of tracks

Marian

TPC/AliTPCcalibCalib.cxx
TPC/AliTPCcalibDB.cxx
TPC/AliTPCcalibTime.cxx

index 9c1aadd2c5a62d5a5f2e0fef62060a4c74eb95f3..00cc71b3c07a6ec7d7cccb205206d5d1a90ae5a1 100644 (file)
@@ -177,6 +177,7 @@ Bool_t  AliTPCcalibCalib::RefitTrack(AliESDtrack * track, AliTPCseed *seed, Floa
   // 0 - Setup transform object
   //
   AliTPCTransform *transform = AliTPCcalibDB::Instance()->GetTransform() ;
+  AliTPCParam     *param     = AliTPCcalibDB::Instance()->GetParameters();
   transform->SetCurrentRun(fRun);
   transform->SetCurrentTimeStamp((UInt_t)fTime);
   if(!fApplyExBCorrection) { // disable ExB correction in transform
@@ -248,6 +249,27 @@ Bool_t  AliTPCcalibCalib::RefitTrack(AliESDtrack * track, AliTPCseed *seed, Floa
     cluster->SetX(x[0]);
     cluster->SetY(x[1]);
     cluster->SetZ(x[2]);
+    
+    //
+    // Apply alignemnt
+    //
+    
+//     if (!param->IsGeoRead()) param->ReadGeoMatrices();
+//     TGeoHMatrix  *mat = param->GetClusterMatrix(cluster->GetDetector());
+//     //TGeoHMatrix  mat;
+//     Double_t pos[3]= {cluster->GetX(),cluster->GetY(),cluster->GetZ()};
+//     Double_t posC[3]={cluster->GetX(),cluster->GetY(),cluster->GetZ()};
+//     if (mat) mat->LocalToMaster(pos,posC);
+//     else{
+//       // chack Loading of Geo matrices from GeoManager - TEMPORARY FIX
+//     }
+//     cluster->SetX(posC[0]);
+//     cluster->SetY(posC[1]);
+//     cluster->SetZ(posC[2]);
+
+
+
+
     if (fStreamLevel>2){
       TTreeSRedirector *cstream = GetDebugStreamer();
       if (cstream){
index ec3e9bb3d1d1fb05702dc457eac5c3e0ec47a623..1c43278aa0f1fb548b6675c42205d55d23fe4d54 100644 (file)
@@ -851,7 +851,7 @@ void AliTPCcalibDB::UpdateRunInformations( Int_t run, Bool_t force){
   //
   // - > Don't use it for reconstruction - Only for Calibration studies
   //
-  if (run<0) return;
+  if (run<=0) return;
   AliCDBEntry * entry = 0;
   if (run>= fRunList.fN){
     fRunList.Set(run*2+1);
index 78b62678970bc0415ddf9e79553c6b69e05bde82..d5e3c8b5c5622ce77bc04f7a1984a3089bedd79b 100644 (file)
@@ -1171,12 +1171,13 @@ void  AliTPCcalibTime::ProcessAlignITS(AliESDtrack* track, AliESDfriendTrack *fr
   const Int_t    kMinTPC  = 80;    // minimal number of TPC cluster
   const Int_t    kMinITS  = 3;     // minimal number of ITS cluster
   const Double_t kMinZ    = 10;    // maximal dz distance
-  const Double_t kMaxDy   = 1.;    // maximal dy distance
-  const Double_t kMaxAngle= 0.01;  // maximal angular distance
+  const Double_t kMaxDy   = 2.;    // maximal dy distance
+  const Double_t kMaxAngle= 0.015;  // maximal angular distance
   const Double_t kSigmaCut= 5;     // maximal sigma distance to median
   const Double_t kVdErr   = 0.1;  // initial uncertainty of the vd correction 
   const Double_t kVdYErr  = 0.05;  // initial uncertainty of the vd correction 
   const Double_t kOutCut  = 1.0;   // outlyer cut in AliRelAlgnmentKalman
+  const Double_t kMinPt   = 0.3;   // minimal pt
   const  Int_t     kN=500;         // deepnes of history
   static Int_t     kglast=0;
   static Double_t* kgdP[4]={new Double_t[kN], new Double_t[kN], new Double_t[kN], new Double_t[kN]};
@@ -1190,12 +1191,15 @@ void  AliTPCcalibTime::ProcessAlignITS(AliESDtrack* track, AliESDfriendTrack *fr
   Int_t dummycl[1000];
   if (track->GetITSclusters(dummycl)<kMinITS) return;  // minimal amount of clusters
   if (track->GetTPCNcls()<kMinTPC) return;  // minimal amount of clusters cut
+  if (!track->IsOn(AliESDtrack::kTPCrefit)) return;
   if (!friendTrack->GetITSOut()) return;  
   if (!track->GetInnerParam())   return;
   if (!track->GetOuterParam())   return;
+  if (track->Pt()<kMinPt)  return;
   // exclude crossing track
   if (track->GetOuterParam()->GetZ()*track->GetInnerParam()->GetZ()<0)   return;
   if (TMath::Abs(track->GetInnerParam()->GetZ())<kMinZ)   return;
+  if (track->GetInnerParam()->GetX()>90)   return;
   //
   AliExternalTrackParam &pTPC=(AliExternalTrackParam &)(*(track->GetInnerParam()));
   AliExternalTrackParam pITS(*(friendTrack->GetITSOut()));
@@ -1331,8 +1335,8 @@ void  AliTPCcalibTime::ProcessAlignTRD(AliESDtrack* track, AliESDfriendTrack *fr
   const Int_t    kMinTPC  = 80;    // minimal number of TPC cluster
   const Int_t    kMinTRD  = 50;    // minimal number of TRD cluster
   const Double_t kMinZ    = 20;    // maximal dz distance
-  const Double_t kMaxDy   = 1.;    // maximal dy distance
-  const Double_t kMaxAngle= 0.01;  // maximal angular distance
+  const Double_t kMaxDy   = 2.;    // maximal dy distance
+  const Double_t kMaxAngle= 0.015;  // maximal angular distance
   const Double_t kSigmaCut= 5;     // maximal sigma distance to median
   const Double_t kVdErr   = 0.1;  // initial uncertainty of the vd correction 
   const Double_t kVdYErr  = 0.05;  // initial uncertainty of the vd correction 
@@ -1489,7 +1493,7 @@ void  AliTPCcalibTime::ProcessAlignTOF(AliESDtrack* track, AliESDfriendTrack *fr
   const Int_t      kMinTPC  = 80;    // minimal number of TPC cluster
   const Double_t   kMinZ    = 10;    // maximal dz distance
   const Double_t   kMaxDy   = 5.;    // maximal dy distance
-  const Double_t   kMaxAngle= 0.01;  // maximal angular distance
+  const Double_t   kMaxAngle= 0.015;  // maximal angular distance
   const Double_t   kSigmaCut= 5;     // maximal sigma distance to median
   const Double_t   kVdErr   = 0.1;  // initial uncertainty of the vd correction 
   const Double_t   kVdYErr  = 0.05;  // initial uncertainty of the vd correction