]> git.uio.no Git - u/mrichter/AliRoot.git/blob - OADB/PWGLF/FORWARD/CORRECTIONS/data/README.md
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / OADB / PWGLF / FORWARD / CORRECTIONS / data / README.md
1 Corrections for PWGLF/FORWARD Analysis
2 ======================================
3
4 This directory contain 2 files:
5
6 * fmd_corrections.root: Database of corrections used by the FMD part
7   of PWGLF/FORWARD
8 * spd_corrections.root: Database of corrections used by the SPD part
9   of PWGLF/FORWARD
10
11 General Remarks
12 ---------------
13
14 The code to store and retrieve lives in AliCorrectionManagerBase with
15 specific sub-classes AliFMDCorrectionManager and
16 AliSPDCorrectionManager. The base class - and it's contained classes -
17 has all the functionality for retrieving and storing the corrections
18 in a TTree (one tree for each correction) while the sub-classes merely
19 registers which corrections exists and provide convenience functions.
20
21 The data is stored in TTrees - one for each correction. Each entry in
22 the trees correspond to a single instance of a correction. The
23 correction object itself is wrapped in a AliOADBForward::Entry
24 object, which provide meta data such as
25
26 * run number
27 * collision system (1: pp, 2: PbPb, 3: pPb)
28 * collision energy in GeV
29 * L3 magnetic field in kG
30 * whether the correction can be used for satellite analysis
31 * whether the correction is for simulated or real data
32 * date of submission
33 * author of the submission.
34
35 The code to handle these trees and the entries lives in
36 AliOADBForward.
37
38 Entries in the trees are indexed by one or more of the above mentioned
39 meta fields.  Which fields are used for a given correction is defined
40 by the sub-classes of AliCorrectionManagerBase.
41
42 In general, a query will only succeed if all fields of the query
43 matches an entry.  If this returns more than one result, the most
44 recent one is used.  However, there are some exceptions to this.
45
46 Run Number Selection
47 --------------------
48 In general, one cannot expect to get an entry with the exact run
49 number queried.  AliOADBForward therefor defines a set of policies for
50 how to match a given run number
51
52 * EXACT - run number must match exactly
53 * NEAR - the run number of the selected entries must not be too far
54   from the run number given in the query.
55 * OLDER - entries with a run number less than or equal to the queried
56   run number are selected
57 * NEWER - entries with a run number greater than or equal to the
58   queried run number are selected
59
60 Which mode to use for a given correction is defined on creation of the
61 database, but can be overridden later on.
62
63 If no entry is found with the specified run number and mode, then the
64 correction may allow for a fall-back option.  These are entries with
65 run number equal to 0.  In this case, all other active meta fields
66 must match.
67
68 Fall-back Mode
69 --------------
70
71 If a general fall-back mode is enabled, then if no entry was selected
72 using the full set of fields, then we can ignore the collision
73 energy.  If this still does not return anything, we can ignore all
74 fields, which means we will select the most recent entry -
75 irrespective of other meta fields.
76
77
78
79 <!--  Local Variables: -->
80 <!--   mode: markdown -->
81 <!--  End --> 
82 <!--  LocalWords:  AliCorrectionManagerBase AliFMDCorrectionManager -->
83 <!--  LocalWords:  AliSPDCorrectionManager TTree TTrees PbPb pPb GeV
84 <!--  LocalWords:  AliOADBForward kG
85  -->