New macro to create RecoParam object for 2010 data (A. Dainese)
[u/mrichter/AliRoot.git] / ITS / MakeITSRecoParam_2010.C
CommitLineData
50f91c8b 1void MakeITSRecoParam_2010(AliRecoParam::EventSpecie_t default=AliRecoParam::kLowMult, const char* cdbURI) {
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)
66 itsRecoParam->SetClusterMisalErrorYBOn(0.0010,0.0010,0.0300,0.0300,0.0020,0.0020); // [cm]
67 itsRecoParam->SetClusterMisalErrorZBOn(0.0100,0.0100,0.0100,0.0100,0.0500,0.0500); // [cm]
68 //----
69
70 // SDD configuration
71 itsRecoParam->SetUseSDDCorrectionMaps(kFALSE);
72 itsRecoParam->SetUseSDDClusterSizeSelection(kTRUE);
73 itsRecoParam->SetMinClusterChargeSDD(30.);
74
75 // Plane Efficiency evaluation with tracklets Method
76 itsRecoParam->SetIPlanePlaneEff(-1);
77 itsRecoParam->SetComputePlaneEff(kTRUE,kFALSE);
78 itsRecoParam->SetUseTrackletsPlaneEff(kTRUE);
79 itsRecoParam->SetTrackleterPhiWindowL2(0.07);
80 itsRecoParam->SetTrackleterZetaWindowL2(0.4);
81 itsRecoParam->SetTrackleterPhiWindowL1(0.10);
82 itsRecoParam->SetTrackleterZetaWindowL1(0.6);
83 itsRecoParam->SetUpdateOncePerEventPlaneEff(kTRUE);
84 itsRecoParam->SetMinContVtxPlaneEff(3);
85 // itsRecoParam->SetOptTrackletsPlaneEff(kTRUE); // activate it for MC (very important) !
86 // Removal of tracklets reconstructed in the SPD overlaps
87 itsRecoParam->SetTrackleterRemoveClustersFromOverlaps(kTRUE);
88
89 //******************************************************************
90
91 itsRecoParam->SetEventSpecie(AliRecoParam::kLowMult);
92 recoParamArray->AddLast(itsRecoParam);
93 }
94 {
95 AliITSRecoParam * itsRecoParam = AliITSRecoParam::GetHighFluxParam();
96 itsRecoParam->SetClusterErrorsParam(2);
97 itsRecoParam->SetEventSpecie(AliRecoParam::kHighMult);
98 recoParamArray->AddLast(itsRecoParam);
99 }
100
101 // Set the default
102 Bool_t defaultIsSet = kFALSE;
103 for(Int_t i =0; i < recoParamArray->GetEntriesFast(); i++) {
104 AliDetectorRecoParam *param = (AliDetectorRecoParam *)recoParamArray->UncheckedAt(i);
105 if (!param) continue;
106 if (default & param->GetEventSpecie()) {
107 param->SetAsDefault();
108 defaultIsSet = kTRUE;
109 }
110 }
111
112 if (!defaultIsSet) {
113 Error(macroname,"The default reconstruction parameters are not set! Exiting...");
114 return;
115 }
116
117 // save in CDB storage
118 AliCDBMetaData *md= new AliCDBMetaData();
119 md->SetResponsible("Andrea Dainese");
120 md->SetComment("Reconstruction parameters ITS.");
121 md->SetAliRootVersion(gSystem->Getenv("ARVERSION"));
122 md->SetBeamPeriod(0);
123 AliCDBId id("ITS/Calib/RecoParam",0,AliCDBRunRange::Infinity());
124 cdb->GetDefaultStorage()->Put(recoParamArray,id, md);
125
126 return;
127}
128
129