1 |
pam-de |
1.1 |
|
2 |
|
|
1) The ToF software uses the Tracking software V2.00 |
3 |
|
|
It is assumed that you have created all the directories and the compiling |
4 |
|
|
of the three executables "level0.exe", "level1.exe" and "level2.exe" |
5 |
|
|
was succesful. |
6 |
|
|
|
7 |
|
|
2) Copy the file toftrack.tar to the "utilities/template" directory (where |
8 |
|
|
the program template.f is located), untar the file toftrack.tar. |
9 |
|
|
|
10 |
|
|
The following files will be extracted: |
11 |
|
|
Makefile (the old Makefile will be overwritten) |
12 |
|
|
run-test.sh |
13 |
|
|
tofcalib.rz |
14 |
|
|
toftrack.f |
15 |
|
|
common_tof.f |
16 |
|
|
tofroutine.f |
17 |
|
|
trk_level2.f (the old trk_level2.f was not correct) |
18 |
|
|
common_tofroutine.f |
19 |
|
|
|
20 |
|
|
3)Create the executable toftrack.exe doing |
21 |
|
|
# make toftrack |
22 |
|
|
|
23 |
|
|
4) The "level*.exe" programs in your working directory were run by doing |
24 |
|
|
|
25 |
|
|
#./run-test.sh some_filename.txt level0/1/2 & |
26 |
|
|
|
27 |
|
|
Copy the new "run-test.sh" from the template directory to the working |
28 |
|
|
directory. Copy toftrack.exe to the working directory |
29 |
|
|
After you have done step 5 (see below) you can run the toftrack software |
30 |
|
|
analogue to the command for the level0/1/2 software: |
31 |
|
|
|
32 |
|
|
#./run-test.sh some_filename.txt toftrack & |
33 |
|
|
|
34 |
|
|
In the file good_files.tar.gz there is a list of good files from the Roma |
35 |
|
|
tests. |
36 |
|
|
|
37 |
|
|
5) Untar the file tofcalib.tar in your rz-data directory (where the level2 |
38 |
|
|
and tof rz-files are located). This will create a standard "tofcalib.rz" |
39 |
|
|
file plus the calibration files for the Roma data |
40 |
|
|
"DW_******_***_tofcalib.rz" |
41 |
|
|
|
42 |
|
|
|
43 |
|
|
--------------------------------------------------------------------------- |
44 |
|
|
|
45 |
|
|
"tracktof" will read the appropriate level2, tof, and tofcalib file. If |
46 |
|
|
there is no tofcalib file for this data run, the standard calibration is |
47 |
|
|
used (There will be a message saying "Could not find.... Will use the |
48 |
|
|
standard calibration") |
49 |
|
|
|
50 |
|
|
|
51 |
|
|
"tracktof" will create a new rz file DW_******_**_toftrack.rz" combining |
52 |
|
|
the level2 data, the (raw) tof data, plus the variables calculated in the |
53 |
|
|
tofroutine. |
54 |
|
|
|
55 |
|
|
The structure looks like this: |
56 |
|
|
|
57 |
|
|
|
58 |
|
|
****************************************************************** |
59 |
|
|
* Ntuple ID = 2 Entries = 1185 TOF |
60 |
|
|
****************************************************************** |
61 |
|
|
* Var numb * Type * Packing * Range * Block * Name * |
62 |
|
|
****************************************************************** |
63 |
|
|
* 1 * L*4 * 1 * * EVENT * GOOD |
64 |
|
|
* 2 * I*4 * * * EVENT * NEV_TRK |
65 |
|
|
* 1 * I*4 * * * CPU * PKT_TYPE |
66 |
|
|
* 2 * I*4 * * * CPU * PKT_NUM |
67 |
|
|
* 3 * I*4 * * * CPU * OBT |
68 |
|
|
* 4 * I*4 * * * CPU * WHICH_CALIB |
69 |
|
|
* 1 * I*4 * * * TOF * TDCID(12) |
70 |
|
|
* 2 * I*4 * * * TOF * EVCOUNT(12) |
71 |
|
|
* 3 * I*4 * * * TOF * TDCMASK(12) |
72 |
|
|
* 4 * I*4 * * * TOF * ADC(4,12) |
73 |
|
|
* 5 * I*4 * * * TOF * TDC(4,12) |
74 |
|
|
* 6 * I*4 * * * TOF * TEMP1(12) |
75 |
|
|
* 7 * I*4 * * * TOF * TEMP2(12) |
76 |
|
|
* 8 * R*4 * * * TOF * BETA(5) |
77 |
|
|
* 9 * R*4 * * * TOF * XTOF(3) |
78 |
|
|
* 10 * R*4 * * * TOF * YTOF(3) |
79 |
|
|
* 11 * R*4 * * * TOF * ADC_C(4,12) |
80 |
|
|
* 12 * I*4 * * * TOF * IFLAG(6) |
81 |
|
|
* 13 * I*4 * * * TOF * JFLAG(6) |
82 |
|
|
* 14 * R*4 * * * TOF * XOUT(3) |
83 |
|
|
* 15 * R*4 * * * TOF * YOUT(3) |
84 |
|
|
* 1 * I*4 * * * TRIGGER * TRIG_EVCOUNT |
85 |
|
|
* 2 * I*4 * * * TRIGGER * PMTPL(3) |
86 |
|
|
* 3 * I*4 * * * TRIGGER * TRIGRATE(6) |
87 |
|
|
* 4 * I*4 * * * TRIGGER * DLTIME(2) |
88 |
|
|
* 5 * I*4 * * * TRIGGER * S4CALCOUNT(2) |
89 |
|
|
* 6 * I*4 * * * TRIGGER * PMTCOUNT1(24) |
90 |
|
|
* 7 * I*4 * * * TRIGGER * PMTCOUNT2(24) |
91 |
|
|
* 8 * I*4 * * * TRIGGER * PATTERNBUSY(3) |
92 |
|
|
* 9 * I*4 * * * TRIGGER * PATTERNTRIG(6) |
93 |
|
|
* 10 * I*4 * * * TRIGGER * TRIGCONF |
94 |
|
|
* 1 * I*4 * * [0,50] * TRACKS * NTRK |
95 |
|
|
* 2 * U*4 * 6 * [0,50] * TRACKS * IMAGE(NTRK) |
96 |
|
|
* 3 * R*4 * * * TRACKS * XM(6,NTRK) |
97 |
|
|
* 4 * R*4 * * * TRACKS * YM(6,NTRK) |
98 |
|
|
* 5 * R*4 * * * TRACKS * ZM(6,NTRK) |
99 |
|
|
* 6 * R*4 * * * TRACKS * RESX(6,NTRK) |
100 |
|
|
* 7 * R*4 * * * TRACKS * RESY(6,NTRK) |
101 |
|
|
* 8 * R*4 * * * TRACKS * AL(5,NTRK) |
102 |
|
|
* 9 * R*4 * * * TRACKS * COVAL(5,5,NTRK) |
103 |
|
|
* 10 * R*4 * * * TRACKS * CHI2(NTRK) |
104 |
|
|
* 11 * U*4 * 1 * [0,1] * TRACKS * XGOOD(6,NTRK) |
105 |
|
|
* 12 * U*4 * 1 * [0,1] * TRACKS * YGOOD(6,NTRK) |
106 |
|
|
* 13 * R*4 * * * TRACKS * XV(6,NTRK) |
107 |
|
|
* 14 * R*4 * * * TRACKS * YV(6,NTRK) |
108 |
|
|
* 15 * R*4 * * * TRACKS * ZV(6,NTRK) |
109 |
|
|
* 16 * R*4 * * * TRACKS * AXV(6,NTRK) |
110 |
|
|
* 17 * R*4 * * * TRACKS * AYV(6,NTRK) |
111 |
|
|
* 18 * R*4 * * * TRACKS * DEDXP(6,NTRK) |
112 |
|
|
* 1 * I*4 * * * SINGLETS * NCLSX(6) |
113 |
|
|
* 2 * I*4 * * * SINGLETS * NCLSY(6) |
114 |
|
|
****************************************************************** |
115 |
|
|
* Block * Entries * Unpacked * Packed * Packing Factor * |
116 |
|
|
****************************************************************** |
117 |
|
|
* EVENT * 1185 * 8 * 5 * 1.600 * |
118 |
|
|
* CPU * 1185 * 16 * 16 * 1.000 * |
119 |
|
|
* TOF * 1185 * 932 * 932 * 1.000 * |
120 |
|
|
* TRIGGER * 1185 * 288 * 288 * 1.000 * |
121 |
|
|
* TRACKS * 1185 * 22004 * Var. * Variable * |
122 |
|
|
* SINGLETS * 1185 * 48 * 48 * 1.000 * |
123 |
|
|
* Total * --- * 23296 * Var. * Variable * |
124 |
|
|
****************************************************************** |
125 |
|
|
* Blocks = 6 Variables = 51 Max. Columns = 5824 * |
126 |
|
|
****************************************************************** |
127 |
|
|
|
128 |
|
|
|
129 |
|
|
|
130 |
|
|
The variables calculated in "TOFROUTINE" are the last ones in the block |
131 |
|
|
"TOF": |
132 |
|
|
|
133 |
|
|
|
134 |
|
|
BETA(5): four values (1-4) for beta from S11-S31, S12-S32, S21-S31 |
135 |
|
|
and S22-S32. |
136 |
|
|
if there is no valid signal beta is set to "100". |
137 |
|
|
if there are four values for beta, the weighted mean is |
138 |
|
|
calculated and put into beta(5). So it is possible for |
139 |
|
|
the user to calculate his own mean value by using the |
140 |
|
|
single values. |
141 |
|
|
|
142 |
|
|
XTOF(3): The x-position in the 3 different layers using the ToF |
143 |
|
|
timing (So, for the x-coordinate we use S12, S21,S32). |
144 |
|
|
If we cannot find a valid timing the value is set to "1000" |
145 |
|
|
|
146 |
|
|
YTOF(3): The same for y-position using S11, S22,S31 |
147 |
|
|
|
148 |
|
|
ADC_C(4,12): normalized ADC values, the value in the middle of the |
149 |
|
|
paddle is set to "1", using the (sometimes poor) attenuation |
150 |
|
|
fit curves. The ADC_C matrix is analog to the ADC matrix |
151 |
|
|
for the raw data, so one can use the same channel map. |
152 |
|
|
|
153 |
|
|
IFLAG(6): 6 values for the six layers: |
154 |
|
|
"0" if no hit in this layer |
155 |
|
|
"-1" if more than one hit |
156 |
|
|
otherwise the number of the hitted paddle ("hit" = good |
157 |
|
|
TDC values on both sides) |
158 |
|
|
|
159 |
|
|
JFLAG(6): 6 values for the six layers: coded value to see which |
160 |
|
|
strips have valid hits: |
161 |
|
|
for i=1 to (number of strips) do |
162 |
|
|
if (paddle "i" = hit) then jflag = jflag + 2**(i-1) |
163 |
|
|
|
164 |
|
|
|
165 |
|
|
|
166 |
|
|
|