Jpp  15.0.3
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
plot-Domino.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 #
3 # \author mdejong
4 #
5 version=1.0
6 script=${0##*/}
7 
8 # ------------------------------------------------------------------------------------------
9 #
10 # Utility script to plot JDomino results.
11 #
12 # ------------------------------------------------------------------------------------------
13 
14 if [ -z $JPP_DIR ]; then
15  echo "Variable JPP_DIR undefined."
16  exit
17 fi
18 
19 source $JPP_DIR/setenv.sh $JPP_DIR
20 
21 zmodload zsh/mathfunc
22 
23 set_variable: DEBUG SIRENE_DEBUG 2
24 set_variable: WORKDIR SIRENE_WORKDIR ./
25 set_variable: FORMAT GRAPHICS_FORMAT gif
26 set_variable+ BATCH GRAPHICS_BATCH -B
27 
28 if do_usage $*; then
29  usage "$script (input file)+"
30 fi
31 
32 if (( $# == 0 )); then
33  fatal "No input files."
34 fi
35 
36 INPUT_FILES=($argv[*])
37 
38 if (( 1 )); then
39 
40  JPlot1D \
41  -f "${INPUT_FILES//\.root/.root:job}" \
42  -\> "PDG code" \
43  -\^ "npe" \
44  -y "1e-2 1e5" -Y \
45  -S 0.8 -O P \
46  -T "Average number of photo-electrons per event by a track_in" \
47  -L TR \
48  -o $WORKDIR/hits_PDG.$FORMAT $BATCH
49 fi
50 
51 if (( 1 )); then
52 
53  JPlot1D \
54  -f "${INPUT_FILES//\.root/.root:trks$}" \
55  -\> "PDG code" \
56  -\^ "number of tracks" \
57  -y "1e-3 1e1" -Y \
58  -S 0.8 -O P \
59  -T "Average occurrence of a track_in per event" \
60  -L TR \
61  -o $WORKDIR/trks_PDG.$FORMAT $BATCH
62 fi
63 
64 if (( 1 )); then
65 
66  JPlot1D \
67  -f "${INPUT_FILES//\.root/.root:hits_per_E_in}" \
68  -y "0.5 1e8" -Y \
69  -XX \
70  -\> "E_{#nu} [GeV]" \
71  -\^ "npe" \
72  -S 0.8 \
73  -L TL \
74  -T "Average number of photo-elecrons per event inside the instrumented volume" \
75  -o $WORKDIR/hits_E.$FORMAT $BATCH
76 fi
77 
78 if (( 1 )); then
79 
80  JPlot1D \
81  -f "${INPUT_FILES//\.root/.root:pmt}" \
82  -x "0.5 1e5" -X \
83  -y "1e-6 1e2" -Y \
84  -\> "npe" \
85  -\^ "number of hits [a.u.]" \
86  -L TR \
87  -T "number of photo-electrons per PMT" \
88  -o $WORKDIR/npe.$FORMAT $BATCH
89 fi
90 
91 if (( 1 )); then
92 
93  set_variable TH2 nuExD
94  set_variable XMIN 2.0
95  set_variable XMAX 8.0
96  set_variable DX 0.5
97  set_variable ZMIN 1.0e-10
98  set_variable ZMAX 1.0e0
99 
100  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
101 
102  (( XR = $XL + $DX ))
103 
104  LABEL=`printf '10^{%3.1f} GeV < E_{#nu} < 10^{%3.1f} GeV' $XL $XR`
105 
106  JPlot1D \
107  -f "${INPUT_FILES//\.root/.root:${TH2}}" \
108  -P Y \
109  -x "$XL $XR" \
110  -y "0 750" \
111  -z "$ZMIN $ZMAX" -Z \
112  -\> "D [m]" \
113  -\^ "npe [a.u.]" \
114  -T "$LABEL" \
115  -L TR \
116  -o $WORKDIR/${TH2}_${XL}.$FORMAT $BATCH
117  done
118 
119  montage \
120  -tile 4x3 \
121  -geometry +0+0 \
122  $WORKDIR/${TH2}_*.$FORMAT \ $WORKDIR/${TH2}.$FORMAT >& /dev/null
123 
124  rm -f $WORKDIR/${TH2}_*.$FORMAT
125 
126  if [[ "$BATCH" != "-B" ]]; then
127  display $WORKDIR/${TH2}.$FORMAT
128  fi
129 fi
130 
131 if (( 1 )); then
132 
133  set_variable TH2 nuExc
134  set_variable XMIN 2.0
135  set_variable XMAX 8.0
136  set_variable DX 0.5
137  set_variable ZMIN 1.0e-7
138  set_variable ZMAX 1.0e-4
139 
140  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
141 
142  (( XR = $XL + $DX ))
143 
144  LABEL=`printf '10^{%3.1f} GeV < E_{#nu} < 10^{%3.1f} GeV' $XL $XR`
145 
146  JPlot1D \
147  -f "${INPUT_FILES//\.root/.root:${TH2}}" \
148  -P Y \
149  -x "$XL $XR" \
150  -z "$ZMIN $ZMAX" -Z \
151  -\> "cos(#theta_{0})" \
152  -\^ "npe [a.u.]" \
153  -T "$LABEL" \
154  -L TL \
155  -o $WORKDIR/${TH2}_${XL}.$FORMAT $BATCH
156  done
157 
158  montage \
159  -tile 4x3 \
160  -geometry +0+0 \
161  $WORKDIR/${TH2}_*.$FORMAT \ $WORKDIR/${TH2}.$FORMAT >& /dev/null
162 
163  rm -f $WORKDIR/${TH2}_*.$FORMAT
164 
165  if [[ "$BATCH" != "-B" ]]; then
166  display $WORKDIR/${TH2}.$FORMAT
167  fi
168 fi
169 
170 if (( 1 )); then
171 
172  set_variable TH2 nuDxc
173  set_variable XMIN 0.0
174  set_variable XMAX 240.0
175  set_variable DX 20
176  set_variable ZMIN 1.0e-1
177  set_variable ZMAX 1.0e+2
178 
179  typeset -Z3 CD
180 
181  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
182 
183  (( XR = $XL + $DX ))
184 
185  LABEL=`printf '%3.0f m < D < %3.0f m' $XL $XR`
186 
187  CD=`printf '%.0f' ${XL}`
188 
189  JPlot1D \
190  -f "${INPUT_FILES//\.root/.root:${TH2}}" \
191  -P Y \
192  -x "$XL $XR" \
193  -z "$ZMIN $ZMAX" -Z \
194  -\> "cos(#theta_{0})" \
195  -\^ "npe [a.u.]" \
196  -T "$LABEL" \
197  -L TL \
198  -o $WORKDIR/${TH2}_${CD}.$FORMAT $BATCH
199  done
200 
201  montage \
202  -tile 4x3 \
203  -geometry +0+0 \
204  $WORKDIR/${TH2}_*.$FORMAT \ $WORKDIR/${TH2}.$FORMAT >& /dev/null
205 
206  rm -f $WORKDIR/${TH2}_*.$FORMAT
207 
208  if [[ "$BATCH" != "-B" ]]; then
209  display $WORKDIR/${TH2}.$FORMAT
210  fi
211 fi
212 
213 if (( 1 )); then
214 
215  set_variable TH2 nuDxU
216  set_variable XMIN 0.0
217  set_variable XMAX 240.0
218  set_variable DX 20
219  set_variable ZMIN 1.0e-1
220  set_variable ZMAX 2.0e+1
221 
222  typeset -Z3 CD
223 
224  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
225 
226  (( XR = $XL + $DX ))
227 
228  LABEL=`printf '%3.0f m < D < %3.0f m' $XL $XR`
229 
230  CD=`printf '%.0f' ${XL}`
231 
232  JPlot1D \
233  -f "${INPUT_FILES//\.root/.root:${TH2}}" \
234  -P Y \
235  -x "$XL $XR" \
236  -z "$ZMIN $ZMAX" -Z \
237  -\> "cos(#theta_{1})" \
238  -\^ "npe [a.u.]" \
239  -T "$LABEL" \
240  -L TR \
241  -o $WORKDIR/${TH2}_${CD}.$FORMAT $BATCH
242  done
243 
244  montage \
245  -tile 4x3 \
246  -geometry +0+0 \
247  $WORKDIR/${TH2}_*.$FORMAT \ $WORKDIR/${TH2}.$FORMAT >& /dev/null
248 
249  rm -f $WORKDIR/${TH2}_*.$FORMAT
250 
251  if [[ "$BATCH" != "-B" ]]; then
252  display $WORKDIR/${TH2}.$FORMAT
253  fi
254 fi
255 
256 if (( 1 )); then
257 
258  set_variable TH2 nuDxT
259  set_variable XMIN 0.0
260  set_variable XMAX 240.0
261  set_variable DX 20
262  set_variable ZMIN 1.0e-3
263  set_variable ZMAX 2.0e+1
264 
265  typeset -Z3 CD
266 
267  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
268 
269  (( XR = $XL + $DX ))
270 
271  LABEL=`printf '%3.0f m < D < %3.0f m' $XL $XR`
272 
273  CD=`printf '%.0f' ${XL}`
274 
275  JPlot1D \
276  -f "${INPUT_FILES//\.root/.root:${TH2}}" \
277  -P Y \
278  -x "$XL $XR" \
279  -y "-50 +500" \
280  -z "$ZMIN $ZMAX" -Z \
281  -\> "#Deltat [ns]" \
282  -\^ "npe [a.u.]" \
283  -T "$LABEL" \
284  -L TR \
285  -o $WORKDIR/${TH2}_${CD}.$FORMAT $BATCH
286  done
287 
288  montage \
289  -tile 4x3 \
290  -geometry +0+0 \
291  $WORKDIR/${TH2}_*.$FORMAT \ $WORKDIR/${TH2}.$FORMAT >& /dev/null
292 
293  rm -f $WORKDIR/${TH2}_*.$FORMAT
294 
295  if [[ "$BATCH" != "-B" ]]; then
296  display $WORKDIR/${TH2}.$FORMAT
297  fi
298 
299 fi
300 
301 if (( 1 )); then
302 
303  set_variable TH2 muExR
304  set_variable XMIN 2.0
305  set_variable XMAX 8.0
306  set_variable DX 0.5
307  set_variable ZMIN 1.0e-5
308  set_variable ZMAX 5.0e0
309 
310  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
311 
312  (( XR = $XL + $DX ))
313 
314  LABEL=`printf '10^{%3.1f} GeV < E_{#mu} < 10^{%3.1f} GeV' $XL $XR`
315 
316  JPlot1D \
317  -f "${INPUT_FILES//\.root/.root:${TH2}}" \
318  -P Y \
319  -x "$XL $XR" \
320  -y "0 250" \
321  -z "$ZMIN $ZMAX" -Z \
322  -\> "R [m]" \
323  -\^ "npe [a.u.]" \
324  -T "$LABEL" \
325  -L TR \
326  -o $WORKDIR/${TH2}_${XL}.$FORMAT $BATCH
327  done
328 
329  montage \
330  -tile 4x3 \
331  -geometry +0+0 \
332  $WORKDIR/${TH2}_*.$FORMAT \ $WORKDIR/${TH2}.$FORMAT >& /dev/null
333 
334  rm -f $WORKDIR/${TH2}_*.$FORMAT
335 
336  if [[ "$BATCH" != "-B" ]]; then
337  display $WORKDIR/${TH2}.$FORMAT
338  fi
339 fi
340 
341 if (( 1 )); then
342 
343  set_variable TH2 muRxU
344  set_variable XMIN 0.0
345  set_variable XMAX 240.0
346  set_variable DX 20
347  set_variable ZMIN 1.0e-1
348  set_variable ZMAX 2.0e+1
349 
350  typeset -Z3 CD
351 
352  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
353 
354  (( XR = $XL + $DX ))
355 
356  LABEL=`printf '%3.0f m < R < %3.0f m' $XL $XR`
357 
358  CD=`printf '%.0f' ${XL}`
359 
360  JPlot1D \
361  -f "${INPUT_FILES//\.root/.root:${TH2}}" \
362  -P Y \
363  -x "$XL $XR" \
364  -z "$ZMIN $ZMAX" -Z \
365  -\> "cos(#theta_{1})" \
366  -\^ "npe [a.u.]" \
367  -T "$LABEL" \
368  -L TR \
369  -o $WORKDIR/${TH2}_${CD}.$FORMAT $BATCH
370  done
371 
372  montage \
373  -tile 4x3 \
374  -geometry +0+0 \
375  $WORKDIR/${TH2}_*.$FORMAT \ $WORKDIR/${TH2}.$FORMAT >& /dev/null
376 
377  rm -f $WORKDIR/${TH2}_*.$FORMAT
378 
379  if [[ "$BATCH" != "-B" ]]; then
380  display $WORKDIR/${TH2}.$FORMAT
381  fi
382 fi
383 
384 if (( 1 )); then
385 
386  set_variable TH2 muRxT
387  set_variable XMIN 0.0
388  set_variable XMAX 240.0
389  set_variable DX 20
390  set_variable ZMIN 1.0e-3
391  set_variable ZMAX 2.0e+1
392 
393  typeset -Z3 CD
394 
395  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
396 
397  (( XR = $XL + $DX ))
398 
399  LABEL=`printf '%3.0f m < R < %3.0f m' $XL $XR`
400 
401  CD=`printf '%.0f' ${XL}`
402 
403  JPlot1D \
404  -f "${INPUT_FILES//\.root/.root:${TH2}}" \
405  -P Y \
406  -x "$XL $XR" \
407  -y "-50 +500" \
408  -z "$ZMIN $ZMAX" -Z \
409  -\> "#Deltat [ns]" \
410  -\^ "npe [a.u.]" \
411  -T "$LABEL" \
412  -L TR \
413  -o $WORKDIR/${TH2}_${CD}.$FORMAT $BATCH
414  done
415 
416  montage \
417  -tile 4x3 \
418  -geometry +0+0 \
419  $WORKDIR/${TH2}_*.$FORMAT \ $WORKDIR/${TH2}.$FORMAT >& /dev/null
420 
421  rm -f $WORKDIR/${TH2}_*.$FORMAT
422 
423  if [[ "$BATCH" != "-B" ]]; then
424  display $WORKDIR/${TH2}.$FORMAT
425  fi
426 
427 fi
428 
429 
then usage $script< detector file >< detectorfile > nIf the range of floors is the first detector file is aligned to the second before the comparison nIn only modules within the given range of floors are used fi case set_variable RANGE $argv[3]
o $QUALITY_ROOT d $DEBUG!JPlot1D f
Definition: JDataQuality.sh:66
exit
Definition: JPizza.sh:36
then fatal Wrong number of arguments fi set_variable STRING $argv[1] set_variable DETECTORXY_TXT $WORKDIR $DETECTORXY_TXT tail read X Y CHI2 RMS printf optimum n $X $Y $CHI2 $RMS awk v Y
then echo
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
Definition: JAcoustics.sh:20
do set_variable OUTPUT_DIRECTORY $WORKDIR T
then break fi done getCenter read X Y Z let X
set_variable NUMBER_OF_ITERATIONS set_variable EPSILON cat acoustics_fit_parameters txt<< EOF $CONFIGURATION[*]Nmin=3;sigma_s=100.0e-6;stdev=10.0;mestimator=0;fixStrings=0;EOF for STRING in $STRINGS[*];do#fit stretching and(z) position of given string set_variable DETECTOR_TMP ${TMPDIR:-/tmp}/detector_A.datx JEditDetector-a $DETECTOR-o $DETECTOR_TMP-r $STRING JEditDetector-a $DETECTOR-o $DETECTOR-k $STRING for MUL in 0.005 0.001;do DX_M=0.2 for((N=0;$N< $NUMBER_OF_ITERATIONS;++N));do CHI2[3]=$CHI2[1] fitPositionOfString $STRING Z $DX_M fitStretchingOfString $STRING $MUL if(($CHI2[3]-$CHI2[1]< $EPSILON));then break fi done if(($N >=$NUMBER_OF_ITERATIONS));then printf"warning: reached maximum number of iterations %d - converenge %7.3f\n"$N $(($CHI2[3]-$CHI2[1])) fi done JMergeDetector-a $DETECTOR-a $DETECTOR_TMP-o $DETECTOR rm-f $DETECTOR_TMP JConvertDetectorFormat-a $DETECTOR-o $DETECTOR-r-d 0 > &dev null done
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DEBUG set_variable WORKDIR
Definition: JLegolas.sh:20
* usage
then JConvertDetectorFormat a $DETECTOR[1] o
do sput $STRING $FLOOR sget MODULE INPUT_FILES
Definition: JCanberra.sh:73
do set_variable SIGMA_NS set_variable OUTLIERS set_variable OUTPUT_FILE matrix[${ALPHA_DEG}\deg\] root $JPP JMatrixNZ a $DETECTOR f $INPUT_FILE o $OUTPUT_FILE S
Definition: JMatrixNZ.sh:58
then usage $script< input_file >< detector_file > fi set_variable OUTPUT_DIR set_variable SELECTOR JDAQTimesliceL1 set_variable DEBUG case set_variable DEBUG
then display $WORKDIR
Definition: plot-Domino.sh:128
do set_variable MODULE getModule a $WORKDIR detector_a datx L $STRING JEditDetector a $WORKDIR detector_a datx M $MODULE setz o $WORKDIR detector_a datx JEditDetector a $WORKDIR detector_b datx M $MODULE setz o $WORKDIR detector_b datx done echo Output stored at $WORKDIR detector_a datx and $WORKDIR tripod_a txt JDrawDetector2D a $WORKDIR detector_a datx a $WORKDIR detector_b datx L BL o detector $FORMAT $BATCH JDrawDetector2D T $WORKDIR tripod_a txt T $WORKDIR tripod_b txt L BL o tripod $FORMAT $BATCH JCompareDetector a $WORKDIR detector_a datx b $WORKDIR detector_b datx o $WORKDIR abc root &dev null for KEY in X Y Z
then let XMIN
version
Definition: JCalibratePMT.sh:7
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null
then $DIR JPlotNPE PDG P
Definition: JPlotNPE-PDG.sh:62