]>
Commit | Line | Data |
---|---|---|
5c0d7005 | 1 | void MakeITSRecoParam(AliRecoParam::EventSpecie_t default=AliRecoParam::kLowMult) { |
ed446fa3 | 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.C"; | |
13 | ||
14 | // Activate CDB storage and load geometry from CDB | |
15 | AliCDBManager* cdb = AliCDBManager::Instance(); | |
16 | if(!cdb->IsDefaultStorageSet()) cdb->SetDefaultStorage("local://OCDB"); | |
17 | ||
5c0d7005 | 18 | TObjArray *recoParamArray = new TObjArray(); |
19 | ||
20 | { | |
21 | AliITSRecoParam * itsRecoParam = AliITSRecoParam::GetCosmicTestParam(); | |
22 | itsRecoParam->SetFactorSAWindowSizes(20); | |
23 | itsRecoParam->SetClusterErrorsParam(2); | |
24 | itsRecoParam->SetFindV0s(kFALSE); | |
25 | itsRecoParam->SetAddVirtualClustersInDeadZone(kFALSE); | |
26 | itsRecoParam->SetUseAmplitudeInfo(kFALSE); | |
27 | // In case we want to switch off a layer | |
28 | // itsRecoParam->SetLayerToSkip(<N>); | |
29 | // itsRecoParam->SetLayerToSkip(4); | |
30 | // itsRecoParam->SetLayerToSkip(5); | |
da9fe817 | 31 | // itsRecoParam->SetLayerToSkip(2); |
32 | // itsRecoParam->SetLayerToSkip(3); | |
5c0d7005 | 33 | //itsRecoParam->SetSAOnePointTracks(); |
34 | itsRecoParam->SetClusterMisalError(0.1); // [cm] | |
35 | itsRecoParam->SetSAUseAllClusters(); | |
36 | itsRecoParam->SetEventSpecie(AliRecoParam::kCosmic); | |
37 | recoParamArray->AddLast(itsRecoParam); | |
38 | } | |
39 | { | |
40 | AliITSRecoParam * itsRecoParam = AliITSRecoParam::GetLowFluxParam(); | |
41 | itsRecoParam->SetClusterErrorsParam(2); | |
42 | itsRecoParam->SetEventSpecie(AliRecoParam::kLowMult); | |
aee4a387 | 43 | // Plane Efficiency evaluation with tracklets Method |
44 | itsRecoParam->SetIPlanePlaneEff(-1); | |
45 | itsRecoParam->SetComputePlaneEff(kTRUE,kFALSE); | |
46 | itsRecoParam->SetUseTrackletsPlaneEff(kTRUE); | |
47 | itsRecoParam->SetTrackleterPhiWindowL2(0.07); | |
48 | itsRecoParam->SetTrackleterZetaWindowL2(0.4); | |
49 | itsRecoParam->SetTrackleterPhiWindowL1(0.10); | |
50 | itsRecoParam->SetTrackleterZetaWindowL1(0.6); | |
51 | itsRecoParam->SetUpdateOncePerEventPlaneEff(kTRUE); | |
52 | itsRecoParam->SetMinContVtxPlaneEff(3); | |
53 | itsRecoParam->SetOptTrackletsPlaneEff(kTRUE); | |
5c0d7005 | 54 | recoParamArray->AddLast(itsRecoParam); |
55 | } | |
56 | { | |
57 | AliITSRecoParam * itsRecoParam = AliITSRecoParam::GetHighFluxParam(); | |
58 | itsRecoParam->SetClusterErrorsParam(2); | |
59 | itsRecoParam->SetEventSpecie(AliRecoParam::kHighMult); | |
60 | recoParamArray->AddLast(itsRecoParam); | |
61 | } | |
62 | ||
63 | // Set the default | |
64 | Bool_t defaultIsSet = kFALSE; | |
65 | for(Int_t i =0; i < recoParamArray->GetEntriesFast(); i++) { | |
66 | AliDetectorRecoParam *param = (AliDetectorRecoParam *)recoParamArray->UncheckedAt(i); | |
67 | if (!param) continue; | |
68 | if (default & param->GetEventSpecie()) { | |
69 | param->SetAsDefault(); | |
70 | defaultIsSet = kTRUE; | |
71 | } | |
72 | } | |
73 | ||
74 | if (!defaultIsSet) { | |
75 | Error(macroname,"The default reconstruction parameters are not set! Exiting..."); | |
ed446fa3 | 76 | return; |
ed446fa3 | 77 | } |
ed446fa3 | 78 | |
79 | // save in CDB storage | |
80 | AliCDBMetaData *md= new AliCDBMetaData(); | |
81 | md->SetResponsible("Andrea Dainese"); | |
82 | md->SetComment("Reconstruction parameters ITS"); | |
83 | md->SetAliRootVersion(gSystem->Getenv("ARVERSION")); | |
84 | md->SetBeamPeriod(0); | |
85 | AliCDBId id("ITS/Calib/RecoParam",0,AliCDBRunRange::Infinity()); | |
5c0d7005 | 86 | cdb->GetDefaultStorage()->Put(recoParamArray,id, md); |
ed446fa3 | 87 | |
88 | return; | |
89 | } | |
5c0d7005 | 90 |