]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/MakeITSRecoParam_pp2009.C
load AddTaskEmcalJet.C
[u/mrichter/AliRoot.git] / ITS / MakeITSRecoParam_pp2009.C
index 699034ae32034ceb27787f7ae046a83d64d20d00..9f6160afe5f2181152f8732d00c6a3afe4acd6d9 100644 (file)
@@ -1,4 +1,4 @@
-void MakeITSRecoParam_pp2009(AliRecoParam::EventSpecie_t default=AliRecoParam::kLowMult) {
+void MakeITSRecoParam_pp2009(AliRecoParam::EventSpecie_t default=AliRecoParam::kLowMult, const char* cdbURI) {
 //========================================================================
 //
 // Steering macro for ITS reconstruction parameters
@@ -13,7 +13,7 @@ void MakeITSRecoParam_pp2009(AliRecoParam::EventSpecie_t default=AliRecoParam::k
 
   // Activate CDB storage and load geometry from CDB
   AliCDBManager* cdb = AliCDBManager::Instance();
-  if(!cdb->IsDefaultStorageSet()) cdb->SetDefaultStorage("raw://");
+  cdb->SetDefaultStorage(cdbURI);
   
   TObjArray *recoParamArray = new TObjArray();
 
@@ -33,36 +33,73 @@ void MakeITSRecoParam_pp2009(AliRecoParam::EventSpecie_t default=AliRecoParam::k
     //itsRecoParam->SetSAOnePointTracks();
     itsRecoParam->SetClusterMisalError(0.1); // [cm]
     itsRecoParam->SetSAUseAllClusters();
+    itsRecoParam->SetMinNPointsSA(2);
     itsRecoParam->SetEventSpecie(AliRecoParam::kCosmic);
     recoParamArray->AddLast(itsRecoParam);
   }
   {
     AliITSRecoParam * itsRecoParam = AliITSRecoParam::GetLowFluxParam();
     itsRecoParam->SetClusterErrorsParam(2);
-    //****** FIRST PHYSICS 2009 (same as COSMICS 2009) *********************
+    //****** FIRST PHYSICS 2009 *********************
 
+    /* //  First Collisions 23.11.2009 (same as COSMICS 2009) 
     // find independently ITS SA tracks 
-    param->SetSAUseAllClusters();
-    param->SetOuterStartLayerSA(AliITSgeomTGeo::GetNLayers()-2);
+    itsRecoParam->SetSAUseAllClusters();
+    itsRecoParam->SetOuterStartLayerSA(AliITSgeomTGeo::GetNLayers()-2);
 
     // to maximize efficiency
-    param->SetAllowProlongationWithEmptyRoad();
+    itsRecoParam->SetAllowProlongationWithEmptyRoad();
+    
+    // larger seach windows for SA (in case of large misalignments)
+    itsRecoParam->SetNLoopsSA(33);
+    itsRecoParam->SetFactorSAWindowSizes(20);
+    
+    // additional error due to misal (B off)
+    itsRecoParam->SetClusterMisalErrorY(1.0,1.0,1.0,1.0,1.0,1.0); // [cm]
+    itsRecoParam->SetClusterMisalErrorZ(1.0,1.0,1.0,1.0,1.0,1.0); // [cm]
+    // additional error due to misal (B on)
+    itsRecoParam->SetClusterMisalErrorYBOn(0.0,0.0,0.1,0.1,0.1,0.1); // [cm]
+    itsRecoParam->SetClusterMisalErrorZBOn(0.1,0.1,0.1,0.1,0.1,0.1); // [cm]
+    */
+
+    //----  Collisions since 03.12.2009 
+    // find independently ITS SA tracks 
+    itsRecoParam->SetSAUseAllClusters();
+    itsRecoParam->SetOuterStartLayerSA(2);
+
+    // to maximize efficiency (change to kTRUE on 15.12.2009)
+    //itsRecoParam->SetAllowProlongationWithEmptyRoad(kFALSE);
+    itsRecoParam->SetAllowProlongationWithEmptyRoad(kTRUE);
     
     // larger seach windows for SA (in case of large misalignments)
-    param->SetNLoopsSA(33);
-    param->SetFactorSAWindowSizes(20);
+    itsRecoParam->SetFactorSAWindowSizes(2);
     
     // additional error due to misal (B off)
-    param->SetClusterMisalErrorY(1.0,1.0,1.0,1.0,1.0,1.0); // [cm]
-    param->SetClusterMisalErrorZ(1.0,1.0,1.0,1.0,1.0,1.0); // [cm]
+    itsRecoParam->SetClusterMisalErrorY(0.01,0.01,0.1,0.1,0.1,0.1); // [cm]
+    itsRecoParam->SetClusterMisalErrorZ(0.01,0.01,0.1,0.1,0.1,0.1); // [cm]
     // additional error due to misal (B on)
-    param->SetClusterMisalErrorYBOn(0.0,0.0,0.1,0.1,0.1,0.1); // [cm]
-    param->SetClusterMisalErrorZBOn(0.1,0.1,0.1,0.1,0.1,0.1); // [cm]
+    itsRecoParam->SetClusterMisalErrorYBOn(0.01,0.01,0.1,0.1,0.1,0.1); // [cm]
+    itsRecoParam->SetClusterMisalErrorZBOn(0.01,0.01,0.1,0.1,0.1,0.1); // [cm]
+    //----
 
     // SDD configuration 
-    param->fUseSDDCorrectionMaps = kFALSE;
-    param->fUseSDDClusterSizeSelection=kTRUE;
-    param->fMinClusterChargeSDD=30.;
+    itsRecoParam->SetUseSDDCorrectionMaps(kFALSE);
+    itsRecoParam->SetUseSDDClusterSizeSelection(kTRUE);
+    itsRecoParam->SetMinClusterChargeSDD(30.);
+
+    // Plane Efficiency evaluation with tracklets Method
+    itsRecoParam->SetIPlanePlaneEff(-1);
+    itsRecoParam->SetComputePlaneEff(kTRUE,kFALSE);
+    itsRecoParam->SetUseTrackletsPlaneEff(kTRUE);
+    itsRecoParam->SetTrackleterPhiWindowL2(0.07);
+    itsRecoParam->SetTrackleterZetaWindowL2(0.4);
+    itsRecoParam->SetTrackleterPhiWindowL1(0.10);
+    itsRecoParam->SetTrackleterZetaWindowL1(0.6);
+    itsRecoParam->SetUpdateOncePerEventPlaneEff(kTRUE);
+    itsRecoParam->SetMinContVtxPlaneEff(3);
+    // itsRecoParam->SetOptTrackletsPlaneEff(kTRUE); // activate it for MC (very important) !
+    // Removal of tracklets reconstructed in the SPD overlaps 
+    itsRecoParam->SetTrackleterRemoveClustersFromOverlaps(kTRUE);
   
     //******************************************************************