handle the case of simulated raw data by checking for the GRP in the working director...
[u/mrichter/AliRoot.git] / ITS / MakeITSRecoParam_2010.C
CommitLineData
b373143f 1void MakeITSRecoParam_2010(AliRecoParam::EventSpecie_t default=AliRecoParam::kLowMult, const char* cdbURI="local://") {
50f91c8b 2//========================================================================
3//
4// Steering macro for ITS reconstruction parameters
5//
6// Author: A.Dainese
7// Contact: andrea.dainese@lnl.infn.it
8//
9//========================================================================
10
11
12 const char* macroname = "MakeITSRecoParam_2010.C";
13
14 // Activate CDB storage and load geometry from CDB
15 AliCDBManager* cdb = AliCDBManager::Instance();
16 cdb->SetDefaultStorage(cdbURI);
17
18 TObjArray *recoParamArray = new TObjArray();
19
20 {
21 AliITSRecoParam * itsRecoParam = AliITSRecoParam::GetCosmicTestParam();
22 // find independently ITS SA tracks
23 itsRecoParam->SetSAUseAllClusters();
24 itsRecoParam->SetMinNPointsSA(2);
25 itsRecoParam->SetOuterStartLayerSA(AliITSgeomTGeo::GetNLayers()-2);
26
27 // to maximize efficiency
28 itsRecoParam->SetAllowProlongationWithEmptyRoad();
29
30 // larger seach windows for SA (in case of large misalignments)
31 itsRecoParam->SetNLoopsSA(33);
32 itsRecoParam->SetFactorSAWindowSizes(20);
33
34 // additional error due to misal (B off)
35 itsRecoParam->SetClusterMisalErrorY(1.0,1.0,1.0,1.0,1.0,1.0); // [cm]
36 itsRecoParam->SetClusterMisalErrorZ(1.0,1.0,1.0,1.0,1.0,1.0); // [cm]
37 // additional error due to misal (B on)
38 itsRecoParam->SetClusterMisalErrorYBOn(0.0,0.0,0.1,0.1,0.1,0.1); // [cm]
39 itsRecoParam->SetClusterMisalErrorZBOn(0.1,0.1,0.1,0.1,0.1,0.1); // [cm]
40
41 itsRecoParam->SetClusterErrorsParam(2);
42 itsRecoParam->SetFindV0s(kFALSE);
43 itsRecoParam->SetAddVirtualClustersInDeadZone(kFALSE);
44 itsRecoParam->SetUseAmplitudeInfo(kFALSE);
45 itsRecoParam->SetEventSpecie(AliRecoParam::kCosmic);
46 recoParamArray->AddLast(itsRecoParam);
47 }
48 {
49 AliITSRecoParam * itsRecoParam = AliITSRecoParam::GetLowFluxParam();
50 itsRecoParam->SetClusterErrorsParam(2);
51
52 // find independently ITS SA tracks
53 itsRecoParam->SetSAUseAllClusters();
54 itsRecoParam->SetOuterStartLayerSA(2);
55
56 itsRecoParam->SetAllowProlongationWithEmptyRoad(kTRUE);
57
58 // larger seach windows for SA (in case of large misalignments)
59 itsRecoParam->SetFactorSAWindowSizes(2);
60
61 // Misalignment syst errors decided at ITS meeting 25.03.2010
62 // additional error due to misal (B off)
63 itsRecoParam->SetClusterMisalErrorY(0.0010,0.0010,0.0300,0.0300,0.0020,0.0020); // [cm]
64 itsRecoParam->SetClusterMisalErrorZ(0.0100,0.0100,0.0100,0.0100,0.0500,0.0500); // [cm]
65 // additional error due to misal (B on)
b373143f 66 itsRecoParam->SetClusterMisalErrorYBOn(0.0010,0.0030,0.0500,0.0500,0.0020,0.0020); // [cm]
50f91c8b 67 itsRecoParam->SetClusterMisalErrorZBOn(0.0100,0.0100,0.0100,0.0100,0.0500,0.0500); // [cm]
68 //----
69
70 // SDD configuration
b373143f 71 itsRecoParam->SetUseSDDCorrectionMaps(kTRUE); // changed 30.04.2010
50f91c8b 72 itsRecoParam->SetUseSDDClusterSizeSelection(kTRUE);
73 itsRecoParam->SetMinClusterChargeSDD(30.);
c4619c66 74 itsRecoParam->SetUseUnfoldingInClusterFinderSDD(kFALSE);
50f91c8b 75
76 // Plane Efficiency evaluation with tracklets Method
77 itsRecoParam->SetIPlanePlaneEff(-1);
78 itsRecoParam->SetComputePlaneEff(kTRUE,kFALSE);
79 itsRecoParam->SetUseTrackletsPlaneEff(kTRUE);
80 itsRecoParam->SetTrackleterPhiWindowL2(0.07);
81 itsRecoParam->SetTrackleterZetaWindowL2(0.4);
82 itsRecoParam->SetTrackleterPhiWindowL1(0.10);
83 itsRecoParam->SetTrackleterZetaWindowL1(0.6);
84 itsRecoParam->SetUpdateOncePerEventPlaneEff(kTRUE);
85 itsRecoParam->SetMinContVtxPlaneEff(3);
86 // itsRecoParam->SetOptTrackletsPlaneEff(kTRUE); // activate it for MC (very important) !
87 // Removal of tracklets reconstructed in the SPD overlaps
88 itsRecoParam->SetTrackleterRemoveClustersFromOverlaps(kTRUE);
89
5b7f4963 90 // V0 finder (A. Marin)
91 itsRecoParam->GetESDV0Params()->SetMaxPidProbPionForb(0.9);
92
50f91c8b 93 //******************************************************************
94
95 itsRecoParam->SetEventSpecie(AliRecoParam::kLowMult);
96 recoParamArray->AddLast(itsRecoParam);
97 }
98 {
99 AliITSRecoParam * itsRecoParam = AliITSRecoParam::GetHighFluxParam();
100 itsRecoParam->SetClusterErrorsParam(2);
101 itsRecoParam->SetEventSpecie(AliRecoParam::kHighMult);
102 recoParamArray->AddLast(itsRecoParam);
103 }
104
105 // Set the default
106 Bool_t defaultIsSet = kFALSE;
107 for(Int_t i =0; i < recoParamArray->GetEntriesFast(); i++) {
108 AliDetectorRecoParam *param = (AliDetectorRecoParam *)recoParamArray->UncheckedAt(i);
109 if (!param) continue;
110 if (default & param->GetEventSpecie()) {
111 param->SetAsDefault();
112 defaultIsSet = kTRUE;
113 }
114 }
115
116 if (!defaultIsSet) {
117 Error(macroname,"The default reconstruction parameters are not set! Exiting...");
118 return;
119 }
120
121 // save in CDB storage
122 AliCDBMetaData *md= new AliCDBMetaData();
123 md->SetResponsible("Andrea Dainese");
124 md->SetComment("Reconstruction parameters ITS.");
125 md->SetAliRootVersion(gSystem->Getenv("ARVERSION"));
126 md->SetBeamPeriod(0);
127 AliCDBId id("ITS/Calib/RecoParam",0,AliCDBRunRange::Infinity());
128 cdb->GetDefaultStorage()->Put(recoParamArray,id, md);
129
130 return;
131}
132
133