1 void rec(const char *filename="raw.root", const Int_t mfield=1)
\r
3 /////////////////////////////////////////////////////////////////////////////////////////
\r
5 // Second version of the reconstruction
\r
6 // script for the 2008 cosmic data (LHC08b)
\r
8 /////////////////////////////////////////////////////////////////////////////////////////
\r
9 //AliLog::SetGlobalLogLevel(AliLog::kWarning);
\r
10 AliLog::SetGlobalLogLevel(AliLog::kError);
\r
12 gSystem->Load("libRAliEn.so");
\r
13 gSystem->Load("libNet.so");
\r
14 gSystem->Load("libMonaLisa.so");
\r
15 new TMonaLisaWriter(0, "GridAliRoot-rec.C", 0, 0, "global");
\r
16 gSystem->Setenv("APMON_INTERVAL", "120");
\r
18 // Set the CDB storage location
\r
19 AliCDBManager * man = AliCDBManager::Instance();
\r
20 man->SetDefaultStorage("local://$ALICE_ROOT");
\r
21 //man->SetDefaultStorage("alien://folder=/alice/data/2008/LHC08a/OCDB/");
\r
22 man->SetSpecificStorage("ITS/Calib/*","local://$ALICE_ROOT");
\r
24 // Example in case a specific CDB storage is needed
\r
25 // man->SetSpecificStorage("ITS/Calib/MapsAnodeSDD","local://$ALICE_ROOT");
\r
27 // Reconstruction settings
\r
28 AliReconstruction rec;
\r
31 AliITSRecoParam * itsRecoParam = AliITSRecoParam::GetCosmicTestParam();
\r
32 itsRecoParam->SetFactorSAWindowSizes(20);
\r
33 itsRecoParam->SetClusterErrorsParam(2);
\r
34 itsRecoParam->SetFindV0s(kFALSE);
\r
35 itsRecoParam->SetAddVirtualClustersInDeadZone(kFALSE);
\r
36 itsRecoParam->SetUseAmplitudeInfo(kFALSE);
\r
37 // In case we want to switch off a layer
\r
38 // itsRecoParam->SetLayerToSkip(<N>);
\r
39 // itsRecoParam->SetLayerToSkip(4);
\r
40 // itsRecoParam->SetLayerToSkip(5);
\r
41 itsRecoParam->SetLayerToSkip(2);
\r
42 itsRecoParam->SetLayerToSkip(3);
\r
43 //itsRecoParam->SetSAOnePointTracks();
\r
44 itsRecoParam->SetClusterMisalError(0.1); // [cm]
\r
45 itsRecoParam->SetSAUseAllClusters();
\r
46 rec.SetRecoParam("ITS",itsRecoParam);
\r
49 //AliLog::SetClassDebugLevel("AliTPCclustererMI",2);
\r
50 AliTPCRecoParam * tpcRecoParam = AliTPCRecoParam::GetCosmicTestParam(kFALSE);
\r
51 tpcRecoParam->SetTimeInterval(60,940);
\r
52 Double_t sysError[5]={0.3,1, 0.3/150., 1./150.,0.3/(150*150.)};
\r
53 tpcRecoParam->SetSystematicError(sysError);
\r
54 tpcRecoParam->SetMinMaxCutAbs(4.);
\r
55 tpcRecoParam->SetMinLeftRightCutAbs(6.);
\r
56 tpcRecoParam->SetMinUpDownCutAbs(6.);
\r
57 // tpcRecoParam->Dump();
\r
58 rec.SetRecoParam("TPC",tpcRecoParam);
\r
59 AliTPCReconstructor::SetStreamLevel(1);
\r
62 // Settings for the TRD Raw Reader
\r
63 AliTRDrawStreamBase::SetRawStreamVersion("TB");
\r
64 AliTRDrawStreamTB::SetNoErrorWarning();
\r
65 AliTRDrawStreamTB::AllowCorruptedData();
\r
66 AliTRDrawStreamTB::DisableStackNumberChecker();
\r
67 AliTRDrawStreamTB::DisableStackLinkNumberChecker();
\r
68 AliTRDrawStreamTB::SetSubtractBaseline(10);
\r
70 // TRD reconstruction params
\r
71 AliTRDrecoParam *fTRDrecoParam = AliTRDrecoParam::GetCosmicTestParam();
\r
72 rec.SetRecoParam("TRD",fTRDrecoParam);
\r
73 AliTRDtrackerV1::SetNTimeBins(30);
\r
76 AliPHOSRecoParam* recPHOS = new AliPHOSRecoParam();
\r
77 recPHOS->SetEMCSubtractPedestals(kTRUE);
\r
78 recPHOS->SetEMCMinE(0.05);
\r
79 recPHOS->SetEMCClusteringThreshold(0.10);
\r
80 rec.SetRecoParam("PHOS",recPHOS);
\r
83 //AliLog::SetModuleDebugLevel("T0", 10);
\r
86 //AliLog::SetClassDebugLevel("AliMUONRawStreamTracker",3);
\r
87 AliMUONRecoParam *muonRecoParam = AliMUONRecoParam::GetLowFluxParam();
\r
88 muonRecoParam->CombineClusterTrackReco(kTRUE);
\r
89 muonRecoParam->SetCalibrationMode("NOGAIN");
\r
90 //muonRecoParam->SetClusteringMode("PEAKFIT");
\r
91 //muonRecoParam->SetClusteringMode("PEAKCOG");
\r
92 muonRecoParam->Print("FULL");
\r
93 rec.SetRecoParam("MUON",muonRecoParam);
\r
95 // Tracking settings
\r
96 AliMagWrapCheb* field;
\r
98 field = new AliMagWrapCheb("Maps","Maps", 2, 1., 10., AliMagWrapCheb::k5kG);
\r
100 field = new AliMagWrapCheb("Maps","Maps", 2, 0., 10., AliMagWrapCheb::k2kG);
\r
101 AliTracker::SetFieldMap(field,1);
\r
102 Double_t mostProbPt=0.35;
\r
103 AliExternalTrackParam::SetMostProbablePt(mostProbPt);
\r
105 // AliReconstruction settings
\r
106 rec.SetUniformFieldTracking(kFALSE);
\r
107 rec.SetWriteESDfriend(kTRUE);
\r
108 rec.SetWriteAlignmentData();
\r
109 rec.SetInput(filename);
\r
110 // rec.SetRunReconstruction("ALL");
\r
111 rec.SetUseTrackingErrorsForAlignment("ITS");
\r
113 // In case some detectors have to be switched off...
\r
114 rec.SetRunReconstruction("ITS TPC TRD TOF HMPID PHOS MUON FMD PMD T0 VZERO ZDC ACORDE");
\r
116 // Enable vertex finder - it is needed for cosmic track reco
\r
117 rec.SetRunVertexFinder(kTRUE);
\r
119 // To be enabled if some equipment IDs are not set correctly by DAQ
\r
120 // rec.SetEquipmentIdMap("EquipmentIdMap.data");
\r
122 // Detector options if any
\r
123 rec.SetOption("ITS","cosmics");
\r
124 rec.SetOption("MUON","SAVEDIGITS");
\r
125 rec.SetOption("T0","cosmic");
\r
127 // Enabled when CTP readout starts
\r
128 rec.SetFillTriggerESD(kTRUE);
\r
130 // all events in one single file
\r
131 rec.SetNumberOfEventsPerFile(-1);
\r
133 // switch off cleanESD
\r
134 rec.SetCleanESD(kFALSE);
\r
136 //rec.SetEventRange(0,15);
\r
138 rec.SetRunQA("ITS TPC:ESD RECPOINT");
\r
139 rec.SetRunGlobalQA(kTRUE);
\r
143 //cout << "-----------------------------------------------------------------" << endl;
\r
144 //cout << "-----------------------------------------------------------------" << endl;
\r
145 //cout << "--------- Reconstruction Completed. Start merging QAs -----------" << endl;
\r
146 //cout << "-----------------------------------------------------------------" << endl;
\r
147 //cout << "-----------------------------------------------------------------" << endl;
\r
148 //AliQADataMakerSteer qas;
\r