]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/UPGRADE/readmeKMC
A skeleton of a comparison macro for pileup studies
[u/mrichter/AliRoot.git] / ITS / UPGRADE / readmeKMC
1 Here are some instructions for running:
2 Once the KMCDetector object is initialized (similar to FER, see "Detector, tracking initialization"
3 part of the testDetKMC.C macro) one should define for each kinematic bin to test a TObjArray with
4 KMCTrackSummary objects (done in the testDetKMC.C by the CreateTrackConditions routine):
5 this object is basically a set of standard histos (with DCA, pt_rec - pt_gen distibutions etc + stat. of generated
6 and found tracks) which are filled provided the reco track satisfies to user defined conditions, like the number of
7 hits (one can specify correct or fake hits, specific layers pattern etc). For instance:
8
9 sm = new KMCTrackSummary("corr4hdGoodPatt","corr4hdGoodPatt",nlr); // create a summary object with this name
10
11 sm->SetMinMaxClITS(4);             // require at least 4 cluster in the track (the upper limit here is default 999 - no limit)
12
13 sm->SetMinMaxClITSFake(0,0); // set min number of fake clusters required (used for fakes studies) and their max number tolerated
14
15 sm->SetNamePrefix(nm);          // this histo names will be prefixed by nm
16
17 sm->AddPatternITSCorr( sm->Bits(1,1));    // require that the innermost 2 double layers must contribute at least 1 correct cluster
18
19 sm->AddPatternITSCorr( sm->Bits(0,0,1));  // require the 3d layer cluster to be correct
20
21 sm->AddPatternITSCorr( sm->Bits(0,0,0,1,1)); // measurement in the middle: ask at leas 1 correct cluster in 2 middle layers
22
23 sm->AddPatternITSCorr( sm->Bits(0,0,0, 0,0, 1,1)); // same for outer 2 layers
24
25 One can define and put in the TObjArray many such objects with different conditions, they will be filled independently.
26 The simulation for single kinem. bin is done via call:
27
28 its.SolveSingleTrack(mass, pt, eta, trSum, nevR);
29 This will generate nevR tracks of given mass, pt, eta, propagate them, reconstruct under imposed bg, sensor err. conditions
30 and fill the KMCTrackSummary objects provided via trSum TObjArray (i.e. histos of each object are filled if given reco track
31 satisfies the criteria defined for this object).
32
33 In the testDetKMC trSum arrays for each pt bin are added to another TObjArray (e.g. summary) which is then stored in
34 the sumOut file.
35
36 I also attach the PrepSummaryKMC.C macro to fill/return from this output file the TObjArray of TGraphErrors corresponding
37 to given id of KMCTrackSummary. The call
38 PrepSummaryKMC(const char* sumf, int cls, const char* pref=0, const char* outF=0);
39 will open sumf output of the testDetKMC, and  for all pt bins (indexing the entries of the final "summary" TObjArray
40 of testDetKMC) it will extract the array of KMCTrackSummary objects defined in the CreateTrackConditions
41 for this bin, then extract from it the cls-th KMCTrackSummary object and put the performance values for this pt bin
42 (resolutions, eff ) as an entry in the graph.
43
44 prepPlotsKMC1.C is just an example of preparing the graphs from the testDetKMC.C output objects.