source: trunk/Mars/resources/sequences.rc@ 10038

Last change on this file since 10038 was 9539, checked in by snruegam, 15 years ago
*** empty log message ***
File size: 9.1 KB
Line 
1#/////////////////////////////////////////////////////////////////////////
2#
3# This file is compiled from two sections. One defines which transitions
4# are allowed to build a sequence (for example changing L1 Trigger
5# Tables between Calibration and Pedestal runs). The other section
6# defines a regular expression to define the allowed ordering
7# of the P-, C- and D-runs.
8#
9# The sections a introduced by [Transition] and [Regexp]. For further
10# details see below.
11#
12# If a section should be valid only for one telescope use:
13# [Transition] # Valid for all telescope numbers
14# [Transition 5] # Valid for telescope 5
15# [Transition: 5] # Valid for telescope 5
16# [Transition: 5 6] # Valid for telescopes 5 and 6
17#
18#
19# File-Id:
20# A file is uniquely identified by run-number and file-number.
21# If you give just a number it is identical to run-number with
22# file-number 0. To give a dedicated file-number you can use:
23# run.file
24#
25#/////////////////////////////////////////////////////////////////////////
26
27##########################################################################
28#
29# Explanation [Transition]
30#
31# Rules to build blocks which will later be broken into sequences
32#
33# Syntax:
34#
35# [Transition]
36# rule1
37# rule2
38# rule3
39#
40#
41# Colums of rule:
42# 0 [1 2 3 4 [5 [6]]]
43#
44# 0: Table/Column to which the transition is applied
45# 1: Run type of previous run
46# 2: Run type of run to be accepted
47# 3: Key for previous run
48# 4: key for run to be accepted
49# 5: first file-id to apply this rule <default=0>
50# 6: last file-id to apply this rule <default=max>
51#
52# Run Types:
53# D 2
54# P 3
55# C 4
56#
57# The columns 1-4 can be expressed as regular expressions (ala TRegexp)
58# a ^ is prepended and a $ is appended automatically.
59#
60# A single "*" is an abbreviation for the regexp ".*" .
61#
62# As soon as any transition (column 0) is specified this transisiton
63# is checked not to change within a sequence.
64#
65# A "-" is an abbreviation for transitions "to be ignored". For example:
66# [Transition]
67# Test - 4 * 1200 1300
68# would mean:
69# ignore all keys (*) of column test for all current files
70# with run-type 4 if its file-id is between 1200.0 and 1300.0
71# The (former) third column in this case is obsolete.
72#
73# Each Transition which appears at least once is checked.
74#
75
76[Transition: 1]
77
78# Ignore project name for calibration files between 20100 and 45100
79Project - 4 * 20100 45100
80HvSettings - 2 * 86094 86094
81TriggerDelayTable
82ObservationMode
83
84# Transition setup for L1/2-TriggerTable of very old data
85L1TriggerTable 3 2 1 [235] 26206 35478
86L1TriggerTable 2 3 [235] 1 26206 35478
87
88L1TriggerTable - [^2] * 0 26830
89L2TriggerTable - [^2] * 0 26830
90
91L1TriggerTable 2 4 3 1 26816 39429
92
93L2TriggerTable 3 2 7 2 36049 38012
94L2TriggerTable 2 3 2 7 36053 38011
95
96L2TriggerTable 4 3 9 7 20170 37382
97L2TriggerTable 3 4 7 9 22712 37935
98
99L2TriggerTable 3 2 7 5 26207 35455
100L2TriggerTable 2 3 5 7 26207 35477
101
102L2TriggerTable 4 2 9 2 36157 37938
103L2TriggerTable 4 3 5 7 26207 35477
104L2TriggerTable 3 2 7 5 35460 36478
105L2TriggerTable 2 4 5 9 27170 31869
106
107
108# The Discriminator Thresholds do not influence the pedestal- and
109# calibration-trigger and need therefore not to be checked for these runs.
110# This allows all kind of transitions from P/C to P/C and from C to D.
111DiscriminatorThresholdTable [34] [34] * *
112DiscriminatorThresholdTable 4 2 * *
113
114# This defines which changes in the calibration script are allowed
115# P 177: CPedestals_500Hz
116# P 199: Pedestals_500Hz
117# C 180: 23Led_Blue
118# C 181: 10_Led_UV
119# C 182: 1Led_Green
120# C 183: 10Led_Blue
121# C 195: 1Led_Blue
122# C 207: 10Led_UV_PinDiode
123# C 256: 10Led_UV_PEDANDCAL_1kHz
124# D 179: 10Led_UV_50Hz
125# D 209: 10Led_UV_50Hz_PinDiode
126# D 238: 10Led_UV_50Hz_PinDiode. <--- has an additional dot
127# D 188: 10Led_UV_train50Hz
128# D 200: 10Led_UV_train50Hz_PinDiode
129# D 210: 10Led_Blue_50Hz
130# D 245: 10Led_UV_50Hz_Ped
131
132# Current DEFAULT setup. This what is used to build the
133# sequences from the newest data
134CalibrationScript 2 3 209 199 79266 200000
135CalibrationScript 3 4 199 207 50640
136CalibrationScript 4 2 207 209 91301
137CalibrationScript 4 3 207 199 53875 200000
138CalibrationScript 4 2 207 245 200000
139CalibrationScript 3 4 199 256 1007866
140CalibrationScript 4 2 256 245 1007866
141CalibrationScript 3 4 199 181 1007844
142CalibrationScript 4 2 181 245 1007844
143
144# Previous defaults. This are cases which are widely used
145# through our data and can thus be considered old defaults
146CalibrationScript 4 2 181 179 46305 50600
147CalibrationScript 4 2 207 209 50641 84570
148CalibrationScript 4 2 207 179 50879 91252
149CalibrationScript 2 3 179 199 46313 91423
150CalibrationScript 2 3 209 199 50784 79256
151CalibrationScript 3 2 199 179 46313 90220
152
153CalibrationScript 3 2 199 209 50785 57781
154CalibrationScript 3 4 199 181 45730 50805
155
156# This was used only in some rare cases (still to be checked!)
157# This are cases used through a big part of our data
158# but take place only in some single cases.
159CalibrationScript 4 3 181 199 46405 50137
160CalibrationScript 3 4 199 181 67116 68714
161CalibrationScript 2 4 179 207 87824 87842
162
163# Single calibration runs inbetween data. Should be
164# excluded differently, because these blocks will not
165# give valid sequences anyhow
166CalibrationScript 2 4 179 207 68731 68731
167CalibrationScript 2 4 179 207 61374 61459
168CalibrationScript 2 4 179 207 53901 53901
169CalibrationScript 2 4 179 207 51153 51170
170CalibrationScript 2 4 188 181 50084 50084
171CalibrationScript 2 4 209 207 96951 96951
172
173# For some reasons here are two consecutive calibration
174# runs with two different colors (still to be checked!)
175CalibrationScript 4 4 181 183 51173 51173
176
177# Special setup for more than one C-Run. Old data had several
178# calibration runs with different taken sequentually
179CalibrationScript 4 4 (181|195) (182|183|193|195) 44834 45579
180
181# This was a typo 238 is basically the same as 209
182CalibrationScript 4 2 207 238 78696 78696
183
184# This is for runs with special calibration scripts (177,188,200,210)
185CalibrationScript 2 3 (179|188|200) (177|199) 44831 46223
186CalibrationScript 3 2 (177|199) (179|188|200) 44831 46223
187CalibrationScript 4 2 (181|182|195) (188|200) 44831 46223
188CalibrationScript 3 4 177 (181|195) 44831 45718
189CalibrationScript 4 3 181 177 44831 45717
190CalibrationScript 4 2 181 188 50083 50273
191CalibrationScript 3 2 199 188 50083 50273
192CalibrationScript 2 3 188 199 50083 50273
193CalibrationScript 4 2 207 210 50687 50746
194CalibrationScript 2 3 210 199 50687 50746
195CalibrationScript 3 2 199 210 50687 50746
196
197# Special rules for calibration script 183
198CalibrationScript 2 4 209 183 50642 50642
199CalibrationScript 4 3 183 199 51193 51193
200CalibrationScript 2 4 179 183 51192 51192
201CalibrationScript 4 2 183 179 51174 51174
202
203#########################################################################
204#
205# Explanation [Regexp]
206#
207# To build sequences a string with the run-types is evaluated.
208# A capital case D or P means: The nearest C-Run is the last C-Run
209# A lower case d or p means: The nearest C-Run is the next C-Run
210#
211# The first expression is evaluated first. The last one last.
212# If one regexp matches the others are not evaluated anymore and
213# the sequence is build from the match.
214#
215# For details on regular expressions check
216# http://perldoc.perl.org/perlre.html
217#
218# The syntax is
219# [Regexp]
220# regexp [firstrun [lastrun]]
221#
222[Regexp: 1]
223
224# Allow almost everything but require at least one run of each run-type
225[dp]*C+[PD]*(PD|DP)[DP]* 0 32734
226[dp]*dp*C+[PD]*P[DP]* 0 32734
227[dp]*p[dp]*C+P*D[PD]* 0 32734
228[dp]*(dp|pd)[dp]*C+[PD]* 0 32734
229
230# This is the "allow as much as possible" solution
231[dp]*(pC+|C+P)[PD]*D 32735 45624
232d[dp]*(pC+|C+P)[PD]* 32735 45624
233
234# Allow intermediate calibration and pedestal runs:
235# Since now we have interleaved calibration events.
236[dD]*[pP]C+((([pP]|C)+[dD])|[dD])+ 45625 46477
237
238# Allow intermediate pedestal runs
239#[dD]*[pP]C+(([pP]+[dD])|[dD])+ 46478 53943
240[dD]*[pP]C+[pPdD]*[dD] 46478 53943
241[dD]*[pP]C+[pPdD]*[dD] 56567 57786
242[dD]*[pP]C+[pPdD]*[dD] 60145 60396
243
244# Use the minimum solution for newest date
245# Do not allow intermediate non-data runs
246[dD]*[pP]C+[dD]+ 53944
Note: See TracBrowser for help on using the repository browser.