From v4-11-Release: fixes in rec.C for the cosmic data + new dialog based shell scrip...
[u/mrichter/AliRoot.git] / test / cosmic / rec.C
1 void rec(const char *filename="raw.root")\r
2 {\r
3   /////////////////////////////////////////////////////////////////////////////////////////\r
4   //\r
5   // First version of the reconstruction\r
6   // script for the FDR'08\r
7 \r
8   // Set the CDB storage location\r
9   // AliLog::SetModuleDebugLevel("STEER",2);\r
10   AliCDBManager * man = AliCDBManager::Instance();\r
11   //  man->SetDefaultStorage("local://LocalCDB");\r
12   man->SetDefaultStorage("alien://folder=/alice/data/2008/LHC08a/OCDB/");\r
13   \r
14   // Files that we can not read from alien...solved\r
15   //  man->SetSpecificStorage("ITS/Calib/MapsAnodeSDD","local://$ALICE_ROOT");\r
16   //  man->SetSpecificStorage("ITS/Calib/MapsTimeSDD","local://$ALICE_ROOT");\r
17   //  man->SetSpecificStorage("TPC/Calib/ExB","local://$ALICE_ROOT");\r
18 \r
19   // Objects not found if using LHC07w database...solved\r
20   //  man->SetSpecificStorage("ITS/Calib/MapsAnodeSDD","local:///afs/cern.ch/user/c/cheshkov/public/OCDB");\r
21   // man->SetSpecificStorage("GRP/GRP/Data","local://$ALICE_ROOT");\r
22   // man->SetSpecificStorage("ITS/Calib/DDLMapSDD","local://$ALICE_ROOT");\r
23   // man->SetSpecificStorage("MUON/Calib/Mapping","local://$ALICE_ROOT");\r
24   // man->SetSpecificStorage("MUON/Calib/DDLStore","local://$ALICE_ROOT");\r
25 \r
26   // ITS settings\r
27   AliITSRecoParam * itsRecoParam = AliITSRecoParam::GetCosmicTestParam();\r
28   itsRecoParam->SetClusterErrorsParam(2);\r
29   itsRecoParam->SetFindV0s(kFALSE);\r
30   itsRecoParam->SetAddVirtualClustersInDeadZone(kFALSE);\r
31   itsRecoParam->SetUseAmplitudeInfo(kFALSE);\r
32   // In case we want to switch off a layer\r
33   //  itsRecoParam->SetLayerToSkip(<N>);\r
34   itsRecoParam->SetLayerToSkip(4);\r
35   itsRecoParam->SetLayerToSkip(5);\r
36   itsRecoParam->SetLayerToSkip(2);\r
37   itsRecoParam->SetLayerToSkip(3);\r
38   AliITSReconstructor::SetRecoParam(itsRecoParam);\r
39 \r
40   // TPC settings\r
41   AliLog::SetClassDebugLevel("AliTPCclustererMI",2);\r
42   AliTPCRecoParam * tpcRecoParam = AliTPCRecoParam::GetCosmicTestParam(kTRUE);\r
43   tpcRecoParam->SetTimeInterval(60,940);\r
44   tpcRecoParam->Dump();\r
45   AliTPCReconstructor::SetRecoParam(tpcRecoParam);\r
46   AliTPCReconstructor::SetStreamLevel(1);\r
47 \r
48   // TRD setting\r
49   AliTRDrawStreamBase::SetRawStreamVersion("TB");\r
50 \r
51   // PHOS settings\r
52   AliPHOSRecoParam* recEmc = new AliPHOSRecoParamEmc();\r
53   recEmc->SetSubtractPedestals(kTRUE);\r
54   recEmc->SetMinE(0.05);\r
55   recEmc->SetClusteringThreshold(0.10);\r
56   AliPHOSReconstructor::SetRecoParamEmc(recEmc);\r
57 \r
58   // T0 settings\r
59   AliLog::SetModuleDebugLevel("T0", 10);\r
60 \r
61   // MUON settings\r
62   AliLog::SetClassDebugLevel("AliMUONRawStreamTracker",3);\r
63   AliMUONRecoParam *muonRecoParam = AliMUONRecoParam::GetLowFluxParam();\r
64   muonRecoParam->CombineClusterTrackReco(kTRUE);\r
65   muonRecoParam->SetCalibrationMode("NOGAIN");\r
66   //muonRecoParam->SetClusteringMode("PEAKFIT");\r
67   //muonRecoParam->SetClusteringMode("PEAKCOG");\r
68   muonRecoParam->Print("FULL");\r
69   AliRecoParam::Instance()->RegisterRecoParam(muonRecoParam);\r
70  \r
71   // Tracking settings\r
72   //  AliMagFMaps* field = new AliMagFMaps("Maps","Maps", 2, 1., 10., 1);\r
73   AliMagFMaps* field = new AliMagFMaps("Maps","Maps", 2, 0., 10., 2);\r
74   AliTracker::SetFieldMap(field,1);\r
75   Double_t mostProbPt=0.35;\r
76   AliExternalTrackParam::SetMostProbablePt(mostProbPt);\r
77 \r
78   // AliReconstruction settings\r
79   AliReconstruction rec;\r
80   rec.SetUniformFieldTracking(kFALSE);\r
81   rec.SetWriteESDfriend(kTRUE);\r
82   rec.SetWriteAlignmentData();\r
83   rec.SetInput(filename);\r
84   rec.SetRunReconstruction("ALL");\r
85   rec.SetUseTrackingErrorsForAlignment("ITS");\r
86 \r
87   // In case some detectors have to be switched off...\r
88   //  rec.SetRunLocalReconstruction("ALL");\r
89   //  rec.SetRunTracking("ALL");\r
90   //  rec.SetFillESD("ALL");\r
91   // Enable vertex finder - it is needed for cosmic track reco\r
92   rec.SetRunVertexFinder(kTRUE);\r
93 \r
94   // To be enabled if some equipment IDs are not set correctly by DAQ\r
95   //  rec.SetEquipmentIdMap("EquipmentIdMap.data");\r
96 \r
97   // Detector options if any\r
98   rec.SetOption("ITS","cosmics,onlyITS");\r
99   rec.SetOption("MUON","SAVEDIGITS");\r
100   rec.SetOption("TPC","OldRCUFormat");\r
101   rec.SetOption("PHOS","OldRCUFormat");\r
102   rec.SetOption("T0","cosmic");\r
103 \r
104   // To be enabled when CTP readout starts\r
105   rec.SetFillTriggerESD(kFALSE);\r
106 \r
107   // all events in one single file\r
108   rec.SetNumberOfEventsPerFile(-1);\r
109 \r
110   // switch off cleanESD\r
111   rec.SetCleanESD(kFALSE);\r
112 \r
113   // rec.SetEventRange(0,15);\r
114   // AliLog::SetGlobalDebugLevel(2);\r
115 \r
116   rec.SetRunQA(kFALSE);\r
117   AliLog::Flush();\r
118   rec.Run();\r
119 \r
120   //cout << "-----------------------------------------------------------------" << endl;\r
121   //cout << "-----------------------------------------------------------------" << endl;\r
122   //cout << "--------- Reconstruction Completed. Start merging QAs -----------" << endl;\r
123   //cout << "-----------------------------------------------------------------" << endl;\r
124   //cout << "-----------------------------------------------------------------" << endl;\r
125   //AliQADataMakerSteer qas;\r
126   //qas.Merge();\r
127 }\r