Jpp test-rotations-new
the software that should make you happy
Loading...
Searching...
No Matches
toashort_monitor.sh
Go to the documentation of this file.
1#!/usr/bin/env zsh
2script=${0##*/}
3
4if [ -z $JPP_DIR ]; then
5 echo "Variable JPP_DIR undefined."
6 exit
7fi
8
9source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
10
11zmodload zsh/mathfunc
12
13set_variable: DEBUG ACOUSTICS_DEBUG 2
14set_variable: WORKDIR ACOUSTICS_WORKDIR ./
15set_variable: FORMAT GRAPHICS_FORMAT gif
16set_variable+ BATCH GRAPHICS_BATCH -B
17set_variable RANGE_S 0 60
18
19if do_usage $*; then
20 usage "$script <detector file> (input file)+"\
21 "\nInput files correspond to the output of JAcousticsEventBuilder[.sh]."
22fi
23
24if (( $# < 2 )); then
25 fatal "Wrong number of arguments."
26fi
27
28set_variable DETECTOR $argv[1]
29set_array INPUT_FILES $argv[2,-1]
30
31eval `JPrintDetector -a $DETECTOR -O SUMMARY`
32eval `JPrintDetector -a $DETECTOR -O IDENTIFIER`
33
34JAcoustics.sh $DETECTOR_ID
35
36source JAcousticsToolkit.sh
37
38CHECK_EXIT_CODE
39
40typeset -A EMITTERS
41
42get_tripods+ $WORKDIR/tripod.txt EMITTERS
43get_transmitters+ $WORKDIR/transmitter.txt EMITTERS
44
45set_variable HISTOGRAM "4000 -1.0e-1 +1.0e-1"
46set_variable FORMULA "[0] * exp(-0.5 * (x-[1])*(x-[1]) / ([2]*[2])) + [3]"
47
48typeset -A BUFFER
49
50for EMITTER in -1 ${(@k)EMITTERS}; do
51
52 echo Processing $EMITTER...
53
54 $JPP_DIR/examples/JAcoustics/JToAMonitor \
55 -a $DETECTOR \
56 -f "$INPUT_FILES[*]" \
57 -o $WORKDIR/toa.root \
58 -E $EMITTER \
59 -T "$RANGE_S" \
60 -x "$HISTOGRAM" \
61 -d 1
62
63 JFit \
64 -f "$WORKDIR/toa.root:\[%\]\.t1" \
65 -o ${TMPDIR:-/tmp}/fit.root \
66 -F "$FORMULA" \
67 -x "-4.0e-4 +4.0e-4" \
68 -@ "p0 = GetMaximum * 0.8" \
69 -= "p1 = 0.0" \
70 -@ "p2 = 30.0e-6" \
71 -@ "p3 = 10.0" \
72 -d $DEBUG
73
74 P0=($(JPrintFit -f ${TMPDIR:-/tmp}/fit.root:\.\* -@ p0))
75 P3=($(JPrintFit -f ${TMPDIR:-/tmp}/fit.root:\.\* -@ p3))
76
77 if (( $? == 0 )); then
78 BUFFER[$EMITTER]=$(($P0[1] / $P3[1]))
79 fi
80
81 JPlot1D \
82 -f ${TMPDIR:-/tmp}/fit.root:\.\* \
83 -x "-1.0e-3 +1.0e-3" \
84 -Y \
85 -> "#Deltat [s]" \
86 -\^ "number of events [a.u.]" \
87 -N "X 505" \
88 -s 1000000000 \
89 -T "[$EMITTER]" \
90 -o $WORKDIR/T_${EMITTER}.$FORMAT $BATCH
91done
92
93for KEY VALUE in ${(kv)BUFFER}; do
94 printf "Emitter %2d S/N %7.1f\n" $KEY $VALUE
95done