4 if [ -z $JPP_DIR ]; then
5 echo "Variable JPP_DIR undefined."
9 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
11 set_variable: WORKDIR ACOUSTICS_WORKDIR ./
12 set_variable: FORMAT GRAPHICS_FORMAT gif
15 usage "$script <detector file> minrun maxrun"
18 if (( $# == 3 )); then
19 set_variable DETECTOR $argv[1]
20 set_variable MINRUN $argv[2]
21 set_variable MAXRUN $argv[3]
23 fatal "Wrong number of arguments."
28 eval `JPrintDetector -a $DETECTOR -O IDENTIFIER`
29 eval `JPrintDetector -a $DETECTOR -O SUMMARY`
31 JAcoustics.sh $DETECTOR_ID
33 source JAcousticsToolkit.sh
37 set_variable MONITOR_FILE_WEEK $WORKDIR/KM3NeT_${(l:8::0::0:)DETECTOR_ID}_${MINRUN}_${MAXRUN}_monitor.root
38 set_variable TEST_FILE_WEEK $WORKDIR/KM3NeT_${(l:8::0::0:)DETECTOR_ID}_${MINRUN}_${MAXRUN}_test.root
39 set_variable PLOT_ACOUS_RATE $WORKDIR/KM3NeT_${(l:8::0::0:)DETECTOR_ID}_${MINRUN}_${MAXRUN}_acous_rate
40 set_variable PLOT_ACOUS_RATE_TEST $WORKDIR/KM3NeT_${(l:8::0::0:)DETECTOR_ID}_${MINRUN}_${MAXRUN}_acous_rate-test
41 set_variable NUM_RUNS $(($MAXRUN - $MINRUN + 1))
42 set_array MONITOR_FILES
45 for ((RUN=$MINRUN; RUN<=$MAXRUN; RUN++)); do
47 set_variable MONITOR_FILE $WORKDIR/KM3NeT_${(l:8::0::0:)DETECTOR_ID}_${(l:8::0::0:)RUN}_monitor.root
48 set_variable TEST_FILE $WORKDIR/KM3NeT_${(l:8::0::0:)DETECTOR_ID}_${(l:8::0::0:)RUN}_test.root
50 MONITOR_FILES+=($MONITOR_FILE)
51 TEST_FILES+=($TEST_FILE)
53 if [[ ! -f $MONITOR_FILE || ! -f $TEST_FILE ]]; then
54 $JPP_DIR/examples/JAcoustics/JAcousticsMonitor_short.sh $DETECTOR $RUN $RUN 0
59 hadd -f $MONITOR_FILE_WEEK $MONITOR_FILES
60 hadd -f $TEST_FILE_WEEK $TEST_FILES
64 get_tripods+ $WORKDIR/tripod.txt EMITTERS
65 get_transmitters+ $WORKDIR/transmitter.txt EMITTERS
67 for EMITTER in ${(@k)EMITTERS}; do
70 -f "${MONITOR_FILE_WEEK}:H\[${EMITTER}\].event" \
72 -o "scale.root" >& /dev/null
75 -f "scale.root:H\[${EMITTER}\].event" \
81 -T "Emitter ${EMITTER}" \
82 -o ${PLOT_ACOUS_RATE}_\[${EMITTER}\].$FORMAT -B
85 -f "${TEST_FILE_WEEK}:H\[${EMITTER}\].rate-test" \
87 -o "scale_test.root" >& /dev/null
90 -f "scale_test.root:H\[${EMITTER}\].rate-test" \
93 -\^ "fraction of runs outside the rate range" \
96 -T "Emitter ${EMITTER}" \
97 -o ${PLOT_ACOUS_RATE_TEST}_\[${EMITTER}\].$FORMAT -B
99 #remove temporary files
101 rm -f "scale_test.root"
104 if [[ -f ${PLOT_ACOUS_RATE}.$FORMAT ]]; then
105 rm -f ${PLOT_ACOUS_RATE}.$FORMAT
108 if [[ -f ${PLOT_ACOUS_RATE_TEST}.$FORMAT ]]; then
109 rm -f ${PLOT_ACOUS_RATE_TEST}.$FORMAT
112 set_array start_time $(JRuns -D "$DETECTOR_ID" -@ "run = ${MINRUN}" -F UNIXJOBSTART -F UNIXJOBEND --)
113 set_array end_time $(JRuns -D "$DETECTOR_ID" -@ "run = ${MAXRUN}" -F UNIXJOBSTART -F UNIXJOBEND --)
115 set_variable start_time_h $(date '+%d-%m-%Y %H:%M' -d @$(($start_time[1]/1000)))
116 set_variable end_time_h $(date '+%d-%m-%Y %H:%M' -d @$(($end_time[2]/1000)))
121 -title "Average acoustic rate \n Runs: ${MINRUN}-${MAXRUN}, Time: ${start_time_h} - ${end_time_h}" \
122 ${PLOT_ACOUS_RATE}_*.$FORMAT \
123 ${PLOT_ACOUS_RATE}.$FORMAT >& /dev/null
128 -title "Fraction of runs outside accepted rate range: 10% < rate < 102% of the expected rate \n Runs: ${MINRUN}-${MAXRUN}, Time: ${start_time_h} - ${end_time_h}" \
129 ${PLOT_ACOUS_RATE_TEST}_*.$FORMAT \
130 ${PLOT_ACOUS_RATE_TEST}.$FORMAT >& /dev/null
133 rm -f ${PLOT_ACOUS_RATE}_*.$FORMAT
134 rm -f ${PLOT_ACOUS_RATE_TEST}_*.$FORMAT