Jpp  17.1.0
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
JORCAShowerReconstruction.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 #
3 # \author adomi
4 #
5 script=${0##*/}
6 
7 
8 # ------------------------------------------------------------------------------------------
9 #
10 # Script to run the JPP Shower Reconstruction Chain for ORCA.
11 #
12 # ------------------------------------------------------------------------------------------
13 
14 
15 if [ -z $JPP_DIR ]; then
16  echo "Variable JPP_DIR undefined."
17  exit
18 fi
19 
20 source $JPP_DIR/setenv.sh $JPP_DIR
21 source $JPP_DIR/externals/km3net-dataformat/definitions/reconstruction.sh
22 
23 set_variable: DEBUG RECONSTRUCTION_DEBUG 1
24 set_variable: PDF RECONSTRUCTION_PDF $JPP_DATA/J%p.dat
25 set_variable: SUFFIX RECONSTRUCTION_SUFFIX jshower
26 set_variable: ENERGY_CORRECTION RECONSTRUCTION_ENERGY_CORRECTION energy_correction_showerfit_fullorca.txt
27 set_variable: NUMBER_OF_EVENTS RECONSTRUCTION_NUMBER_OF_EVENTS $((2**31))
28 set_variable: TMAX_S RECONSTRUCTION_TMAX_S 100
29 
30 if do_usage $*; then
31  usage "$script <detector file> <input file> <output file> <PMT parameters file> [(calibration file)+]"
32 fi
33 
38 set_array CALIBRATION $argv[5,-1]
39 
40 if [[ ! "$OUTPUT_FILE" == *"%"* ]]; then
41  fatal "The output file must have the wildcard % in the name, e.g. %.root"
42 fi
43 
44 typeset -A PARAMETERS
45 typeset -a APPLICATIONS
46 
47 APPLICATIONS=()
48 
49 
50 # ------------------------------------------------------------------------------------------
51 # JShowerPrefit
52 # ------------------------------------------------------------------------------------------
53 
54 PARAMETERS=(
55  factoryLimit 40
56  NMaxHits 20
57  sigma_ns 4
58  numberOfOutliers 4
59  TMaxLocal_ns 120
60  ctMin -0.7
61  roadWidth_m 50
62  numberOfPrefits 50)
63 
65 
66 eval JShowerPrefit \
67  -a $DETECTOR \
68  -+${^CALIBRATION} \
69  -T $TMAX_S \
70  -f $INPUT_FILE \
71  -o ${OUTPUT_FILE/\%/jshprefit} \
72  -n ${NUMBER_OF_EVENTS} \
73  -@ `make_equation PARAMETERS` \
74  -d ${DEBUG} --!
75 
76 CHECK_EXIT_CODE
77 
78 APPLICATIONS+=$JSHOWERPREFIT
79 
80 timer_stop
81 timer_print
82 
83 
84 # ------------------------------------------------------------------------------------------
85 # JShowerPointSimplex
86 # ------------------------------------------------------------------------------------------
87 
88 PARAMETERS=(
89  numberOfPrefits 0
90  numberOfOutfits 100
91  minPrefitsSize 9
92  sigma_ns 1
93  TMaxLocal_ns 15
94  TMax_ns 60
95  TMin_ns -60
96  roadWidth_m 60
97  ctMin 0.2
98  TWindow_ns "-130 120"
99  pos_grid_m " -20 20"
100  pos_step_m 20
101  time_grid_ns " -90 90"
102  time_step_ns 30
103  simplex_step_m 2
104  simplex_step_ns 10
105  tukey_std_dev 20.0)
106 
108 
109 eval JShowerPointSimplex \
110  -a $DETECTOR \
111  -+${^CALIBRATION} \
112  -T $TMAX_S \
113  -f ${OUTPUT_FILE/\%/jshprefit} \
114  -o ${OUTPUT_FILE/\%/jshpointsimplex} \
115  -@ `make_equation PARAMETERS` \
116  -d ${DEBUG} --!
117 
118 CHECK_EXIT_CODE
119 
120 APPLICATIONS+=$JSHOWERPOINTSIMPLEX
121 
122 timer_stop
123 timer_print
124 
125 rm -vf ${OUTPUT_FILE/\%/jshprefit}
126 
127 
128 # ------------------------------------------------------------------------------------------
129 # JShowerPositionFit
130 # ------------------------------------------------------------------------------------------
131 
132 PARAMETERS=(
133  numberOfPrefits 0
134  numberOfOutfits 5
135  TMax_ns 120
136  TMin_ns -120
137  roadWidth_m 80
138  E_GeV 10
139  R_Hz 10000
140  TTS_ns 2)
141 
143 
144 eval JShowerPositionFit \
145  -a $DETECTOR \
146  -+${^CALIBRATION} \
147  -T $TMAX_S \
148  -f ${OUTPUT_FILE/\%/jshpointsimplex} \
149  -F $PDF \
150  -o ${OUTPUT_FILE/\%/jshpositionfit} \
151  -@ `make_equation PARAMETERS` \
152  -d ${DEBUG} --!
153 
154 CHECK_EXIT_CODE
155 
156 APPLICATIONS+=$JSHOWERPOSITIONFIT
157 
158 timer_stop
159 timer_print
160 
161 rm -vf ${OUTPUT_FILE/\%/jshpointsimplex}
162 
163 
164 # ------------------------------------------------------------------------------------------
165 # JShowerEnergyPrefit
166 # ------------------------------------------------------------------------------------------
167 
168 PARAMETERS=(
169  numberOfPrefits 0
170  numberOfOutfits 1
171  Emin_GeV 1
172  Emax_GeV 100
173  resolution 0.01
174  TMax_ns 500
175  TMin_ns -500
176  R_Hz 10000
177  mestimator 3
178  roadWidth_m 80)
179 
181 
182 eval JShowerEnergyPrefit \
183  -a $DETECTOR \
184  -+${^CALIBRATION} \
185  -T $TMAX_S \
186  -f ${OUTPUT_FILE/\%/jshpositionfit} \
187  -F $PDF \
188  -o ${OUTPUT_FILE/\%/jshenergyprefit} \
189  -@ `make_equation PARAMETERS` \
190  -d $DEBUG --!
191 
192 CHECK_EXIT_CODE
193 
194 APPLICATIONS+=$JSHOWERENERGYPREFIT
195 
196 timer_stop
197 timer_print
198 
199 rm -vf ${OUTPUT_FILE/\%/jshpositionfit}
200 
201 
202 # ------------------------------------------------------------------------------------------
203 # JShowerDirectionPrefit
204 # ------------------------------------------------------------------------------------------
205 
206 PARAMETERS=(
207  numberOfPrefits 0
208  numberOfOutfits 4
209  TMax_ns 30
210  TMin_ns -30
211  roadWidth_m 80
212  DMin_m 80
213  E_GeV 13
214  R_Hz 10000
215  mestimator 3
216  MaxAngle_deg_lowE 40
217  scanAngle_deg_lowE 10
218  MaxAngle_deg_highE 20
219  scanAngle_deg_highE 5)
220 
222 
223 eval JShowerDirectionPrefit \
224  -a $DETECTOR \
225  -+${^CALIBRATION} \
226  -T $TMAX_S \
227  -f ${OUTPUT_FILE/\%/jshenergyprefit} \
228  -F $PDF \
229  -o ${OUTPUT_FILE/\%/jshdirectionprefit} \
230  -@ `make_equation PARAMETERS` \
231  -d $DEBUG --!
232 
233 CHECK_EXIT_CODE
234 
235 APPLICATIONS+=$JSHOWERDIRECTIONPREFIT
236 
237 timer_stop
238 timer_print
239 
240 rm -vf ${OUTPUT_FILE/\%/jshenergyprefit}
241 
242 
243 # ------------------------------------------------------------------------------------------
244 # JShowerFit
245 # ------------------------------------------------------------------------------------------
246 
247 PARAMETERS=(
248  numberOfPrefits 4
249  TMax_ns 30
250  TMin_ns -30
251  roadWidth_m 80
252  R_Hz 10000
253  mestimator 3
254  fit_step 0.05)
255 
257 
258 eval JShowerFit \
259  -a $DETECTOR \
260  -+${^CALIBRATION} \
261  -T $TMAX_S \
262  -f ${OUTPUT_FILE/\%/jshdirectionprefit} \
263  -F $PDF \
264  -o ${OUTPUT_FILE/\%/jshfit} \
265  -@ `make_equation PARAMETERS` \
266  -E $ENERGY_CORRECTION \
267  -d $DEBUG --!
268 
269 CHECK_EXIT_CODE
270 
271 APPLICATIONS+=$JSHOWERCOMPLETEFIT
272 
273 timer_stop
274 timer_print
275 
276 rm -vf ${OUTPUT_FILE/\%/jshdirectionprefit}
277 
278 
279 # ------------------------------------------------------------------------------------------
280 # JHistory
281 # ------------------------------------------------------------------------------------------
282 
284 
285 JHistory \
286  -f ${OUTPUT_FILE/\%/jshfit} \
287  -o ${OUTPUT_FILE/\%/jhistory} \
288  -A "$APPLICATIONS[*]" \
289  -d $DEBUG --!
290 
291 CHECK_EXIT_CODE
292 
293 timer_stop
294 timer_print
295 
296 rm -vf ${OUTPUT_FILE/\%/jshfit}
297 
298 
299 # ------------------------------------------------------------------------------------------
300 # rename outputfile
301 # ------------------------------------------------------------------------------------------
302 
304 
305 mv -v \
306  ${OUTPUT_FILE/\%/jhistory} \
307  ${OUTPUT_FILE/\%/${SUFFIX}}
308 
309 timer_stop
310 timer_print
311 
312 
313 # ------------------------------------------------------------------------------------------
314 # JConvertEvt
315 # ------------------------------------------------------------------------------------------
316 
318 
319 JConvertEvt \
320  -f ${OUTPUT_FILE/\%/${SUFFIX}} \
321  -o ${OUTPUT_FILE/\%/${SUFFIX}.aanet} \
322  -a $DETECTOR \
323  -+${^CALIBRATION} \
324  -T $TMAX_S \
325  -P $PMT \
326  -d $DEBUG --!
327 
328 timer_stop
329 timer_print
then usage $script< detector identifier >< startdate\"YYYY-MM-DDHH:MM:SS\"><finaldate\"YYYY-MM-DDHH:MM:SS\"><QA/QCfile> fi case set_variable QAQC_TXT $argv[4]
Definition: JDataMonitor.sh:24
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR set_variable DEBUG set_variable PDF $JPP_DATA J p dat set_variable HISTOGRAM if do_usage *then usage $script< detector file >< inputfile >< outputfile > fi case set_variable PDF
then usage $script< input_file >< detector_file >< output_file(.root)> fi set_variable NUMBER_OF_TIMESLICES set_variable NUMBER_OF_SUMMARYSLICES set_variable NUMBER_OF_EVENTS set_variable ALL_PLOTS case set_variable NUMBER_OF_EVENTS
Definition: JRunAnalyzer.sh:18
then usage E
Definition: JMuonPostfit.sh:35
static const JPBS_t PMT(3, 4, 2, 3)
PBS of photo-multiplier tube (PMT)
rm f XXX txt echo nlist all archive files that do have specific variants getArchive sh $ARCHIVE test km3net(mjg_2|mjg_1)" getFile.sh $ARCHIVE/test 100 101 km3net "(mjg_2|mjg_1)" XXX
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR APPLICATIONS
Definition: JMuonPostfit.sh:25
then echo Enter input within $TIMEOUT_S seconds echo n User name
Definition: JCookie.sh:42
o $QUALITY_ROOT d $DEBUG!JPlot1D f
Definition: JDataQuality.sh:66
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
Definition: diff-Tuna.sh:38
exit
Definition: JPizza.sh:36
then fatal Wrong number of arguments fi JConvertDetectorFormat a o
then echo
const int n
Definition: JPolint.hh:676
then timer_start(JRandomTimesliceWriter-a ${DETECTOR}-o ${PIPE}-n ${NUMBER_OF_SLICES}-P ${PMT_FILE}-d ${DEBUG}-S ${SEED}-B"$BACKGROUND_HZ"-N"$RECYCLING"--!&&for((i=0;$i!=10;++i));do;echo 'EOF' > $PIPE;usleep 100000;done &&rm-f $PIPE)&JTimesliceReprocessor-a $
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
Definition: JAcoustics.sh:21
do set_variable OUTPUT_DIRECTORY $WORKDIR T
then awk F
* usage
then JFileTuna f $INPUT_FILE
Definition: file-Tuna.sh:66
&set_variable OUTPUT_FILE
set_variable INPUT_FILE
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable TRIPOD $argv[2] set_variable TX $argv[3] set_variable TY $argv[4] if[[!-f $DETECTOR]]
Definition: JFootprint.sh:28
do JPlot2D f $WORKDIR detector root
JFIT::JHistory JHistory
Definition: JHistory.hh:354
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:47
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR set_variable DEBUG set_variable WORKDIR if do_usage *then usage $script(input file)+" fi if (( $ fatal "Invalid number of arguments." fi JCookie.sh set_array INPUT_FILES $argv[1
then JCalibrateToT a
Definition: JTuneHV.sh:116
then set_variable MODULE getModule a $DETECTOR L $STRING $FLOOR JEditDetector a $DETECTOR M $MODULE add $X o $DETECTOR else echo No update of detector $DETECTOR
set_variable DETECTOR
do set_variable DETECTOR_TXT $WORKDIR detector
data_type v[N+1][M+1]
Definition: JPolint.hh:756
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
Definition: JCanberra.sh:46
source $JPP_DIR setenv csh $JPP_DIR &dev null eval JShellParser o a A
script
Definition: JAcoustics.sh:2
then $DIR JPlotNPE PDG P
Definition: JPlotNPE-PDG.sh:62
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62