c7e2a0cb2a28c7ecddbded5d90f8effd901db73c
[u/mrichter/AliRoot.git] / TPC / scripts / OCDBscan / README
1 cdABOUT:
2 Authors: Jens Wiechula 
3          Marian Ivanov (marian.ivanov@cern.ch)
4  
5 Scripts for viusalization and analysis of the TPC OCDB entries and visualization of trends.
6 For visualization and analisys purposes root trees and queries on top of trees are used.
7
8 Algorithm:
9 1. Creation of the run lists.   (Expert operation) 
10 2. Making a calibration trees.  (Expert operation)
11 3. OCDB visualization analysis. (Non /software/ expert mode) 
12
13 Requiroments:
14 1. AliRoot installed.
15 2. Alien   installed + valid alien certificate
16 3. In some cases (only to speed up tree creation process) the batch farm can be used.  
17 4. Alien configuration/jobs to be included soon (Work in progress)
18
19 ----------
20 Quickstart
21 -----------
22
23 Without thinking, you can do the following to create a tree with calibration entries.
24 The default settings should work, however you might want to change them for 'better' 
25 performance. 
26
27 Do the following:
28 1. Setup environment
29    1.a) gui dependend variables
30         export SCRIPTDIR=$ALICE_ROOT/TPC/scripts/OCDBscan
31             or your local scriptdir if you want to modify it
32         e.g:
33         export SCRIPTDIR=/lustre/alice/miranov/calibPass0/OCDBscan/scripts
34         
35         export PATH=$SCRIPTDIR:$PATH
36         source $SCRIPTDIR/guiEnv.sh
37         
38    1.b) Modify your guiEnv.sh script in $SCRIPTDIR
39    1.c) Run: source guiEnv.sh debug    
40    1.d) Check the output of script. All checks has to be OK.
41      
42 2. Run tree creation (Jens Wiechula scripts) Options:
43    2.a)  Run on a list of run numbers with name 'list.txt', one run number per line
44          makeCalibTree -l list.txt
45    2.b) Run on a range of run numbers:
46         makeCalibTree -r 75000-80000
47    2.c) Run automatic tree creation for all runs in the
48         data taking period which was set up (see below)
49         !!!WARNING!!! this will take quite some time
50         makeCalibTree -a
51
52 3. Run tree creation for extended statistic. This part can be run only if batchcommand specified.  (Marian Ivanov part of scripts)
53    WARNING  this is just example usage of expert mode:
54    bgroup=/bgui
55    ifirst=100000        
56    ilast=103000
57    step=250
58    runList=`pwd`/run.list
59    bgadd $bgroup
60    for ((  startRun=$ifirst; startRun<$ilast; startRun=startRun+$step )) ; do 
61       let endRun=$startRun+$step 
62       echo $startRun $endRun   
63        echo $BATCHCOMMAND -g $bgroup -oo $GUI_OUTDIR/logs/out$startRun.log -eo $GUI_OUTDIR/logs/err$startRun.log makeCalibTree.sh $runList $startRun $endRun;
64     $BATCHCOMMAND -g $bgroup -oo $GUI_OUTDIR/logs/out$startRun.log -eo $GUI_OUTDIR/logs/err$startRun.log  makeCalibTree.sh $runList $startRun $endRun;    
65    done;
66
67 4. Start the GUI browser. This should work always (even on your laptop). 
68 guiTime
69
70
71
72 -------------------
73 General information
74 -------------------
75 The macros and shell scripts used are stored in $ALICE_ROOT/TPC/CalibMacros/guiTime
76 If you would like to modify some setting (see below), but do not have write access to this
77 directory, you can copy the complete directory somewhere else and setup the environment
78 variables accordingly:
79
80 export SCRIPTDIR=path_to_my_directory
81 export PATH=$SCRIPTDIR:$PATH
82
83 - setup scripts
84 All user relevant setup is done the shell script 'guiEnv' and the root macro 'ConfigOCDB.C'
85 All other files don't need to be modified by the user.
86
87 - scripts for the tree creation:
88 makeCalibTree:        Steering script to launch the tree creation
89 makeCalibTreeList:    script running the actual root process to create the tree
90
91 - scripts to start the gui:
92 gui 'filename':       Start the CalibViewerGUI using the tree in file 'filename'. Invokes the script
93                       startGUI.C
94 guiTime ['filename']: Start the CalibViewerGUItime. Optionally a filename containing the calibration
95                       calibration tree can be specified. Otherwise the trees from the directory setup
96                       in guiEnv will be used (see below). Invokes the script startGUItime.C
97
98 -oter scripts:
99 loadlibsREC.C:        Root macro to load only libraries needed to start the gui and tree creation.
100
101
102 ----------------
103 Customised setup
104 ----------------
105
106 - Defining the OCDB directories (ConfigOCDB.C):
107 Before starting the tree creation or gui the macro 'ConfigOCDB.C' is exectued. This macro should contain
108 all the setup needed to point to the proper OCDB directories. If alien is used, alien needs also to be
109 setup in the macro. Open the macro for examples.
110
111 - General output information (guiEnv):
112 In the 'guiEnv' script environment variables defining default output directories etc. See comments in the
113 file for explanations.
114
115
116 Troubleshouting:
117
118 1. Check your environment.
119    source guiEnv.sh debug
120    1.a) If not execuitng check your $PATH
121    1.b) Check the output of script. All checks should be indicated OK.
122 2. Modify environment if neccessary
123 3. Missing ConfigOCDB.C macro. This macro is not provided by default.
124    It is setup specific. You should contact experts to get it.   
125 4. Wrong ConfigOCDB.C macro, tests:
126    4.a) ls $SCRIPTDIR/ConfigOCDB.C  - file should exist
127    4.b) run ConfigOCDB.C macro in aliroot session. Check the output.
128
129 In case of further problems, please inform authors.