]> git.uio.no Git - u/mrichter/AliRoot.git/blame - OADB/PWGLF/FORWARD/CORRECTIONS/data/README.md
Added README for corrections
[u/mrichter/AliRoot.git] / OADB / PWGLF / FORWARD / CORRECTIONS / data / README.md
CommitLineData
97dd8a43 1Corrections for PWGLF/FORWARD Analysis
2======================================
3
4This 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
11General Remarks
12---------------
13
14The code to store and retrieve lives in AliCorrectionManagerBase with
15specific sub-classes AliFMDCorrectionManager and
16AliSPDCorrectionManager. The base class - and it's contained classes -
17has all the functionality for retrieving and storing the corrections
18in a TTree (one tree for each correction) while the sub-classes merely
19registers which corrections exists and provide convenience functions.
20
21The data is stored in TTrees - one for each correction. Each entry in
22the trees correspond to a single instance of a correction. The
23correction object itself is wrapped in a AliOADBForward::Entry
24object, 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
35The code to handle these trees and the entries lives in
36AliOADBForward.
37
38Entries in the trees are indexed by one or more of the above mentioned
39meta fields. Which fields are used for a given correction is defined
40by the sub-classes of AliCorrectionManagerBase.
41
42In general, a query will only succeed if all fields of the query
43matches an entry. If this returns more than one result, the most
44recent one is used. However, there are some exceptions to this.
45
46Run Number Selection
47--------------------
48In general, one cannot expect to get an entry with the exact run
49number queried. AliOADBForward therefor defines a set of policies for
50how 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
60Which mode to use for a given correction is defined on creation of the
61database, but can be overridden later on.
62
63If no entry is found with the specified run number and mode, then the
64correction may allow for a fall-back option. These are entries with
65run number equal to 0. In this case, all other active meta fields
66must match.
67
68Fall-back Mode
69--------------
70
71If a general fall-back mode is enabled, then if no entry was selected
72using the full set of fields, then we can ignore the collision
73energy. If this still does not return anything, we can ignore all
74fields, which means we will select the most recent entry -
75irrespective 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 -->