Using TMath::Abs instead of fabs
[u/mrichter/AliRoot.git] / HLT / exa / runtracker.C
1 // $Id$
2
3 /**
4    Run this macro for cluster finder and track follower (see steering class
5    AliLevel3. 
6 */
7
8 void runtracker(int minslice,int maxslice,char* path=0,char *rootfile=0,int nevent=1)
9 {
10   AliL3Logger l;
11   l.Set(AliL3Logger::kAll);
12   l.UseStdout();
13   //l.UseStream();
14
15   char path_to_use[1024];
16   if(!path) 
17     //strcpy(path_to_use,"/usr/local/anders/data/hg_42105_s1-3/");
18     strcpy(path_to_use,"/tmp/data/new/hijing/bfact1/1000/rawdata/");
19   else strcpy(path_to_use,path);
20   
21   AliL3Transform::Init(path_to_use);  
22
23   Int_t phi_segments,eta_segments,trackletlength,tracklength;
24   Int_t rowscopetracklet,rowscopetrack;
25   Double_t min_pt_fit,maxangle,goodDist,hitChi2Cut;
26   Double_t goodHitChi2,trackChi2Cut,maxphi,maxeta;
27
28   for(Int_t ev=0; ev<nevent; ev++)
29     {
30       if(!rootfile)
31         a = new AliLevel3();
32       else
33         a = new AliLevel3(rootfile);
34
35       a->Init(path_to_use);
36
37       phi_segments = 50;   //devide the space into phi_segments and eta_segments
38       eta_segments = 100;  //to access the search of points to that area!
39       trackletlength = 3;  //number of hits a tracklet has to have
40       tracklength = 5;     //number of hits a track has to have 
41       rowscopetracklet = 2;//search range of rows for a tracklet
42       rowscopetrack = 2;   //search range of rows for a track
43       min_pt_fit = 0;      
44       maxangle = 1.31;     //maximum angle for the three point look ahead
45       goodDist = 5;        //threshold distance between two hits when building tracklets
46       maxphi=100;          //maximum phi difference for neighboring hits
47       maxeta=100;          //maximum eta difference for neighboring hits
48       hitChi2Cut = 100;    //maximum chi2 of added hit to track
49       goodHitChi2 = 20;    //stop looking for next hit to add if chi2 is less than goodHitChi2
50       trackChi2Cut = 50;   //maximum chi2 for track after final fit
51        
52       //main vertex tracking parameters:
53       a->SetTrackerParam(phi_segments,eta_segments,trackletlength,tracklength,
54                          rowscopetracklet,rowscopetrack,
55                          min_pt_fit,maxangle,goodDist,hitChi2Cut,
56                          goodHitChi2,trackChi2Cut,50,maxphi,maxeta,kTRUE);
57
58       //a->DoRoi();    /*do region of interest*/
59       //a->DoMc();     /*do monte carlo identification*/
60       a->WriteFiles(); /*enable output*/
61
62       a->ProcessEvent(minslice,maxslice);
63       //a->DoBench("benchmark_0");
64
65       delete a;
66     }
67 }
68
69