Jpp
 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 ${DEBUG:-2} #
25 set_variable BACKGROUND ${BACKGROUND:-} # -B
26 
27 if ( do_usage $* ); then
28  usage "$script (input file)+"
29 fi
30 
31 if (( $# == 0 )); then
32  fatal "No input files."
33 fi
34 
35 INPUT_FILES=($argv[*])
36 
37 if (( 1 )); then
38 
39  HISTOGRAMS=(`echo ${INPUT_FILES} | eval sed 's/\.root/\.root:job/g'`)
40 
41  JPlot1D \
42  -f "${HISTOGRAMS[*]}" \
43  -\> "PDG code" \
44  -\^ "npe" \
45  -y "1e-2 1e5" -Y \
46  -S 0.8 -O P \
47  -T "Average number of photo-electrons per event by a track_in" \
48  -L TR \
49  -o $WORKDIR/hits_PDG.gif \ $BACKGROUND
50 fi
51 
52 if (( 1 )); then
53 
54  HISTOGRAMS=(`echo ${INPUT_FILES} | eval sed 's/\.root/\.root:trks\\$/g'`)
55 
56  JPlot1D \
57  -f "${HISTOGRAMS[*]}" \
58  -\> "PDG code" \
59  -\^ "number of tracks" \
60  -y "1e-3 1e1" -Y \
61  -S 0.8 -O P \
62  -T "Average occurrence of a track_in per event" \
63  -L TR \
64  -o $WORKDIR/trks_PDG.gif \ $BACKGROUND
65 fi
66 
67 if (( 1 )); then
68 
69  HISTOGRAMS=(`echo ${INPUT_FILES} | eval sed 's/\.root/\.root:hits_per_E_in/g'`)
70 
71  JPlot1D \
72  -f "${HISTOGRAMS[*]}" \
73  -y "0.5 1e8" -Y \
74  -XX \
75  -\> "E_{#nu} [GeV]" \
76  -\^ "npe" \
77  -S 0.8 \
78  -L TL \
79  -T "Average number of photo-elecrons per event inside the instrumented volume" \
80  -o $WORKDIR/hits_E.gif \ $BACKGROUND
81 fi
82 
83 if (( 1 )); then
84 
85  HISTOGRAMS=(`echo ${INPUT_FILES} | eval sed 's/\.root/\.root:pmt/g'`)
86 
87  JPlot1D \
88  -f "${HISTOGRAMS[*]}" \
89  -x "0.5 1e5" -X \
90  -y "1e-6 1e2" -Y \
91  -\> "npe" \
92  -\^ "number of hits [a.u.]" \
93  -L TR \
94  -T "number of photo-electrons per PMT" \
95  -o $WORKDIR/npe.gif \ $BACKGROUND
96 fi
97 
98 if (( 1 )); then
99 
100  set_variable TH2 nuExD
101  set_variable XMIN 2.0
102  set_variable XMAX 8.0
103  set_variable DX 0.5
104  set_variable ZMIN 1.0e-10
105  set_variable ZMAX 1.0e0
106 
107  HISTOGRAMS=(`echo ${INPUT_FILES} | eval sed 's/\.root/\.root:${TH2}/g'`)
108 
109  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
110 
111  (( XR = $XL + $DX ))
112 
113  LABEL=`printf '10^{%3.1f} GeV < E_{#nu} < 10^{%3.1f} GeV' $XL $XR`
114 
115  JPlot1D \
116  -f "${HISTOGRAMS[*]}" \
117  -P Y \
118  -x "$XL $XR" \
119  -y "0 750" \
120  -z "$ZMIN $ZMAX" -Z \
121  -\> "D [m]" \
122  -\^ "npe [a.u.]" \
123  -T "$LABEL" \
124  -L TR \
125  -o $WORKDIR/${TH2}_${XL}.gif \
126  -B
127  done
128 
129  montage \
130  -tile 4x3 \
131  -geometry +0+0 \
132  $WORKDIR/${TH2}_*.gif \ $WORKDIR/${TH2}.gif
133 
134  rm -f $WORKDIR/${TH2}_*.gif
135 
136  if [[ "$BACKGROUND" != "-B" ]]; then
137  display $WORKDIR/${TH2}.gif
138  fi
139 fi
140 
141 if (( 1 )); then
143  set_variable TH2 nuExc
144  set_variable XMIN 2.0
145  set_variable XMAX 8.0
146  set_variable DX 0.5
147  set_variable ZMIN 1.0e-7
148  set_variable ZMAX 1.0e-4
149 
150  HISTOGRAMS=(`echo ${INPUT_FILES} | eval sed 's/\.root/\.root:${TH2}/g'`)
151 
152  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
153 
154  (( XR = $XL + $DX ))
155 
156  LABEL=`printf '10^{%3.1f} GeV < E_{#nu} < 10^{%3.1f} GeV' $XL $XR`
157 
158  JPlot1D \
159  -f "${HISTOGRAMS[*]}" \
160  -P Y \
161  -x "$XL $XR" \
162  -z "$ZMIN $ZMAX" -Z \
163  -\> "cos(#theta_{0})" \
164  -\^ "npe [a.u.]" \
165  -T "$LABEL" \
166  -L TL \
167  -o $WORKDIR/${TH2}_${XL}.gif \
168  -B
169  done
170 
171  montage \
172  -tile 4x3 \
173  -geometry +0+0 \
174  $WORKDIR/${TH2}_*.gif \ $WORKDIR/${TH2}.gif
175 
176  rm -f $WORKDIR/${TH2}_*.gif
177 
178  if [[ "$BACKGROUND" != "-B" ]]; then
179  display $WORKDIR/${TH2}.gif
180  fi
181 fi
182 
183 if (( 1 )); then
184 
185  set_variable TH2 nuDxc
186  set_variable XMIN 0.0
187  set_variable XMAX 240.0
188  set_variable DX 20
189  set_variable ZMIN 1.0e-1
190  set_variable ZMAX 1.0e+2
191 
192  HISTOGRAMS=(`echo ${INPUT_FILES} | eval sed 's/\.root/\.root:${TH2}/g'`)
193 
194  typeset -Z3 CD
195 
196  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
197 
198  (( XR = $XL + $DX ))
199 
200  LABEL=`printf '%3.0f m < D < %3.0f m' $XL $XR`
201 
202  CD=`printf '%.0f' ${XL}`
203 
204  JPlot1D \
205  -f "${HISTOGRAMS[*]}" \
206  -P Y \
207  -x "$XL $XR" \
208  -z "$ZMIN $ZMAX" -Z \
209  -\> "cos(#theta_{0})" \
210  -\^ "npe [a.u.]" \
211  -T "$LABEL" \
212  -L TL \
213  -o $WORKDIR/${TH2}_${CD}.gif \
214  -B
215  done
216 
217  montage \
218  -tile 4x3 \
219  -geometry +0+0 \
220  $WORKDIR/${TH2}_*.gif \ $WORKDIR/${TH2}.gif
221 
222  rm -f $WORKDIR/${TH2}_*.gif
223 
224  if [[ "$BACKGROUND" != "-B" ]]; then
225  display $WORKDIR/${TH2}.gif
226  fi
227 fi
228 
229 if (( 1 )); then
230 
231  set_variable TH2 nuDxU
232  set_variable XMIN 0.0
233  set_variable XMAX 240.0
234  set_variable DX 20
235  set_variable ZMIN 1.0e-1
236  set_variable ZMAX 2.0e+1
237 
238  HISTOGRAMS=(`echo ${INPUT_FILES} | eval sed 's/\.root/\.root:${TH2}/g'`)
239 
240  typeset -Z3 CD
241 
242  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
243 
244  (( XR = $XL + $DX ))
245 
246  LABEL=`printf '%3.0f m < D < %3.0f m' $XL $XR`
247 
248  CD=`printf '%.0f' ${XL}`
249 
250  JPlot1D \
251  -f "${HISTOGRAMS[*]}" \
252  -P Y \
253  -x "$XL $XR" \
254  -z "$ZMIN $ZMAX" -Z \
255  -\> "cos(#theta_{1})" \
256  -\^ "npe [a.u.]" \
257  -T "$LABEL" \
258  -L TR \
259  -o $WORKDIR/${TH2}_${CD}.gif \
260  -B
261  done
262 
263  montage \
264  -tile 4x3 \
265  -geometry +0+0 \
266  $WORKDIR/${TH2}_*.gif \ $WORKDIR/${TH2}.gif
267 
268  rm -f $WORKDIR/${TH2}_*.gif
269 
270  if [[ "$BACKGROUND" != "-B" ]]; then
271  display $WORKDIR/${TH2}.gif
272  fi
273 fi
274 
275 if (( 1 )); then
276 
277  set_variable TH2 nuDxT
278  set_variable XMIN 0.0
279  set_variable XMAX 240.0
280  set_variable DX 20
281  set_variable ZMIN 1.0e-3
282  set_variable ZMAX 2.0e+1
283 
284  HISTOGRAMS=(`echo ${INPUT_FILES} | eval sed 's/\.root/\.root:${TH2}/g'`)
285 
286  typeset -Z3 CD
287 
288  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
289 
290  (( XR = $XL + $DX ))
291 
292  LABEL=`printf '%3.0f m < D < %3.0f m' $XL $XR`
293 
294  CD=`printf '%.0f' ${XL}`
295 
296  JPlot1D \
297  -f "${HISTOGRAMS[*]}" \
298  -P Y \
299  -x "$XL $XR" \
300  -y "-50 +500" \
301  -z "$ZMIN $ZMAX" -Z \
302  -\> "#Deltat [ns]" \
303  -\^ "npe [a.u.]" \
304  -T "$LABEL" \
305  -L TR \
306  -o $WORKDIR/${TH2}_${CD}.gif \
307  -B
308  done
309 
310  montage \
311  -tile 4x3 \
312  -geometry +0+0 \
313  $WORKDIR/${TH2}_*.gif \ $WORKDIR/${TH2}.gif
314 
315  rm -f $WORKDIR/${TH2}_*.gif
316 
317  if [[ "$BACKGROUND" != "-B" ]]; then
318  display $WORKDIR/${TH2}.gif
319  fi
320 
321 fi
322 
323 if (( 1 )); then
324 
325  set_variable TH2 muExR
326  set_variable XMIN 2.0
327  set_variable XMAX 8.0
328  set_variable DX 0.5
329  set_variable ZMIN 1.0e-5
330  set_variable ZMAX 5.0e0
331 
332  HISTOGRAMS=(`echo ${INPUT_FILES} | eval sed 's/\.root/\.root:${TH2}/g'`)
333 
334  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
335 
336  (( XR = $XL + $DX ))
337 
338  LABEL=`printf '10^{%3.1f} GeV < E_{#mu} < 10^{%3.1f} GeV' $XL $XR`
339 
340  JPlot1D \
341  -f "${HISTOGRAMS[*]}" \
342  -P Y \
343  -x "$XL $XR" \
344  -y "0 250" \
345  -z "$ZMIN $ZMAX" -Z \
346  -\> "R [m]" \
347  -\^ "npe [a.u.]" \
348  -T "$LABEL" \
349  -L TR \
350  -o $WORKDIR/${TH2}_${XL}.gif \
351  -B
352  done
353 
354  montage \
355  -tile 4x3 \
356  -geometry +0+0 \
357  $WORKDIR/${TH2}_*.gif \ $WORKDIR/${TH2}.gif
358 
359  rm -f $WORKDIR/${TH2}_*.gif
360 
361  if [[ "$BACKGROUND" != "-B" ]]; then
362  display $WORKDIR/${TH2}.gif
363  fi
364 fi
365 
366 if (( 1 )); then
367 
368  set_variable TH2 muRxU
369  set_variable XMIN 0.0
370  set_variable XMAX 240.0
371  set_variable DX 20
372  set_variable ZMIN 1.0e-1
373  set_variable ZMAX 2.0e+1
374 
375  HISTOGRAMS=(`echo ${INPUT_FILES} | eval sed 's/\.root/\.root:${TH2}/g'`)
376 
377  typeset -Z3 CD
378 
379  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
380 
381  (( XR = $XL + $DX ))
382 
383  LABEL=`printf '%3.0f m < R < %3.0f m' $XL $XR`
384 
385  CD=`printf '%.0f' ${XL}`
386 
387  JPlot1D \
388  -f "${HISTOGRAMS[*]}" \
389  -P Y \
390  -x "$XL $XR" \
391  -z "$ZMIN $ZMAX" -Z \
392  -\> "cos(#theta_{1})" \
393  -\^ "npe [a.u.]" \
394  -T "$LABEL" \
395  -L TR \
396  -o $WORKDIR/${TH2}_${CD}.gif \
397  -B
398  done
399 
400  montage \
401  -tile 4x3 \
402  -geometry +0+0 \
403  $WORKDIR/${TH2}_*.gif \ $WORKDIR/${TH2}.gif
404 
405  rm -f $WORKDIR/${TH2}_*.gif
406 
407  if [[ "$BACKGROUND" != "-B" ]]; then
408  display $WORKDIR/${TH2}.gif
409  fi
410 fi
411 
412 if (( 1 )); then
413 
414  set_variable TH2 muRxT
415  set_variable XMIN 0.0
416  set_variable XMAX 240.0
417  set_variable DX 20
418  set_variable ZMIN 1.0e-3
419  set_variable ZMAX 2.0e+1
420 
421  HISTOGRAMS=(`echo ${INPUT_FILES} | eval sed 's/\.root/\.root:${TH2}/g'`)
422 
423  typeset -Z3 CD
424 
425  for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); do
426 
427  (( XR = $XL + $DX ))
428 
429  LABEL=`printf '%3.0f m < R < %3.0f m' $XL $XR`
430 
431  CD=`printf '%.0f' ${XL}`
432 
433  JPlot1D \
434  -f "${HISTOGRAMS[*]}" \
435  -P Y \
436  -x "$XL $XR" \
437  -y "-50 +500" \
438  -z "$ZMIN $ZMAX" -Z \
439  -\> "#Deltat [ns]" \
440  -\^ "npe [a.u.]" \
441  -T "$LABEL" \
442  -L TR \
443  -o $WORKDIR/${TH2}_${CD}.gif \
444  -B
445  done
446 
447  montage \
448  -tile 4x3 \
449  -geometry +0+0 \
450  $WORKDIR/${TH2}_*.gif \ $WORKDIR/${TH2}.gif
451 
452  rm -f $WORKDIR/${TH2}_*.gif
453 
454  if [[ "$BACKGROUND" != "-B" ]]; then
455  display $WORKDIR/${TH2}.gif
456  fi
457 
458 fi
459 
460 
void set_variable(const std::string &name, const std::string &value)
Set environment variable.
exit
Definition: JPizza.sh:36
*fatal Wrong number of arguments esac if[!-d ${OUTPUT_DIR}]
then JPizza f
Definition: JPizza.sh:46
then echo
do set_variable OUTPUT_DIRECTORY $WORKDIR T
* usage
then fatal Not enough arguments fi set_variable DETECTOR $argv[1] INPUT_FILES
then HISTOGRAMS
Definition: plot-Domino.sh:39
*set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2,-2] set_variable OUTPUT_FILE $argv[-1]
Definition: JDomino.sh:39
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:56
then display $WORKDIR
Definition: plot-Domino.sh:142
version
Definition: JCalibratePMT.sh:7
then usage $script< detector file >< inputfile > fi case set_variable WORKDIR
Definition: JLegolas.sh:28
then $DIR JPlotNPE PDG P
Definition: JPlotNPE-PDG.sh:60
esac done
Definition: JAddHDE.sh:21
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62