Jpp  16.0.0-rc.1
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
JOperationsRunMonitor.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 script=${0##*/}
3 
4 if [ -z $JPP_DIR ]; then
5  echo "Variable JPP_DIR undefined."
6  exit
7 fi
8 
9 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
10 
11 set_variable: DEBUG QAQC_DEBUG 2
12 set_variable: WORKDIR QAQC_WORKDIR `pwd`
13 set_variable: FORMAT GRAPHICS_FORMAT pdf
14 set_variable: BATCH GRAPHICS_BATCH -B
15 
16 if do_usage $*; then
17  usage "$script <qaqc file> <detector identifier> <first run> <last run> [working directory]"
18 fi
19 
20 case $# in
24  set_array RUNS $3 $4;;
25  *) fatal "Wrong number of arguments."
26 esac
27 
28 set_variable FILEPREFIX KM3NeT_${(l:8::0::0:)DETECTOR}_${(l:8::0::0:)RUNS[1]}-${(l:8::0::0:)RUNS[2]}
29 set_variable QUALITY_ROOT ${QUALITY_TXT/.txt/.root}
30 
31 echo "Output will appear in directory ${WORKDIR}."
32 
33 mkdir -p $WORKDIR
34 
35 # Check the quality of the runs
36 JDataQuality \
37  -f $QUALITY_TXT \
38  -Q "livetime_s; 1200 60000" \
39  -Q "(UTCMax_s - UTCMin_s) - livetime_s; -100 +100" \
40  -Q "JDAQEvent/livetime_s; 0.05 10.0" \
41  -Q "HRV; 0.00 0.2" \
42  -Q "DAQ; 0.95 1.05" \
43  -Q "WR; 0.95 1.05" \
44  -Q "FIFO; 0.00 0.01" \
45  -Q "MEAN_Rate_Hz; 4500 12000" \
46  -Q "RMS_Rate_Hz; 200 3000" \
47  -V "out_sync; 0 0" \
48  -o $QUALITY_ROOT \
49  -d $DEBUG --!
50 
51 # Create the plots
52 JPlot1D \
53  -f ${QUALITY_ROOT}:h0 \
54  -\> "quality" \
55  -\^ "number of runs" \
56  -T "" \
57  -o $WORKDIR/${FILEPREFIX}_quality.${FORMAT} $BATCH
58 
59 JPlot1D \
60  -f ${QUALITY_ROOT}:h1 \
61  -\> "selection" \
62  -\^ "number of runs" \
63  -T "" \
64  -o $WORKDIR/${FILEPREFIX}_selection.${FORMAT} $BATCH
65 
66 JPlot1D \
67  -w 1200x600 \
68  -f ${QUALITY_ROOT}:\^livetime_s \
69  -\> "run number" \
70  -O P \
71  -T "?" \
72  -o $WORKDIR/${FILEPREFIX}_livetime.${FORMAT} $BATCH
73 
74 JPlot1D \
75  -w 1200x600 \
76  -f ${QUALITY_ROOT}:UTC \
77  -\> "run number" \
78  -O P \
79  -T "?" \
80  -o $WORKDIR/${FILEPREFIX}_UTC-livetime.${FORMAT} $BATCH
81 
82 JPlot1D \
83  -w 1200x600 \
84  -f ${QUALITY_ROOT}:JDAQEvent \
85  -\> "run number" \
86  -O P \
87  -T "?" \
88  -o $WORKDIR/${FILEPREFIX}_event-rate.${FORMAT} $BATCH
89 
90 JPlot1D \
91  -w 1200x600 \
92  -f ${QUALITY_ROOT}:HRV \
93  -\> "run number" \
94  -O P \
95  -T "?" \
96  -o $WORKDIR/${FILEPREFIX}_HRV.${FORMAT} $BATCH
97 
98 JPlot1D \
99  -w 1200x600 \
100  -f ${QUALITY_ROOT}:DAQ$ \
101  -\> "run number" \
102  -O P \
103  -T "?" \
104  -o $WORKDIR/${FILEPREFIX}_DAQ.${FORMAT} $BATCH
105 
106 JPlot1D \
107  -w 1200x600 \
108  -f ${QUALITY_ROOT}:WR \
109  -\> "run number" \
110  -O P \
111  -T "?" \
112  -o $WORKDIR/${FILEPREFIX}_WR.${FORMAT} $BATCH
113 
114 JPlot1D \
115  -w 1200x600 \
116  -f ${QUALITY_ROOT}:FIFO \
117  -\> "run number" \
118  -O P \
119  -T "?" \
120  -o $WORKDIR/${FILEPREFIX}_FIFO.${FORMAT} $BATCH
121 
122 JPlot1D \
123  -w 1200x600 \
124  -f ${QUALITY_ROOT}:MEAN_Rate_Hz \
125  -\> "run number" \
126  -O P \
127  -T "?" \
128  -o $WORKDIR/${FILEPREFIX}_PMT-rate-mean.${FORMAT} $BATCH
129 
130 JPlot1D \
131  -w 1200x600 \
132  -f ${QUALITY_ROOT}:RMS_Rate_Hz \
133  -\> "run number" \
134  -O P \
135  -T "?" \
136  -o $WORKDIR/${FILEPREFIX}_PMT-rate-rms.${FORMAT} $BATCH
137 
138 JPlot1D \
139  -w 1200x600 \
140  -f ${QUALITY_ROOT}:\^out_sync\$ \
141  -y "-1 10" \
142  -\> "run number" \
143  -O P \
144  -T "?" \
145  -o $WORKDIR/${FILEPREFIX}_out_sync.${FORMAT} $BATCH
146 
147 JPlot1D \
148  -w 1200x600 \
149  -f ${QUALITY_ROOT}:VETO \
150  -y "0 1.1" \
151  -\> "run number" \
152  -O P \
153  -L BL \
154  -T "veto" \
155  -o $WORKDIR/${FILEPREFIX}_veto.${FORMAT} $BATCH
156 
157 # Check whether ghostscript is installed, and if, combine all plots
158 if (( $+commands[gs] )); then
159  convert ${FILEPREFIX}_*.${FORMAT} ${FILEPREFIX}_QAQC.${FORMAT}
160  gs -dNOPAUSE -SDEVICE=pdfwrite -sOUTPUTFILE=${FILEPREFIX}_QAQC.pdf -dBATCH ${FILEPREFIX}_*.${FORMAT}
161  /bin/ls ${FILEPREFIX}_*.${FORMAT} | grep -v ${FILEPREFIX}_QAQC.${FORMAT} | xargs -0 -d '\n' rm
162 fi
data_type w[N+1][M+1]
Definition: JPolint.hh:757
Q(UTCMax_s-UTCMin_s)-livetime_s
set_array RUNS
V out_sync
Definition: JDataQuality.sh:61
Q MEAN_Rate_Hz
Definition: JDataQuality.sh:56
then set_variable singlesRate set_variable doublesRate set_variable numberOfSlices echo Generating random background echo Singles rate
o $QUALITY_ROOT d $DEBUG!JPlot1D f
Definition: JDataQuality.sh:66
exit
Definition: JPizza.sh:36
then for HISTOGRAM in h0 h1
Definition: JMatrixNZ.sh:71
&set_variable QUALITY_TXT
V(JDAQEvent-JTriggerReprocessor)*1.0/(JDAQEvent+1.0e-10)
esac set_variable FILEPREFIX
Definition: JDataQuality.sh:30
then JCookie sh JDataQuality D $DETECTOR_ID R $RUNS[*] o $QUALITY_TXT d $DEBUG!fi fi JDataQuality f $QUALITY_TXT Q livetime_s
Definition: JDataQuality.sh:49
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
Q DAQ
Definition: JDataQuality.sh:53
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
Q RMS_Rate_Hz
Definition: JDataQuality.sh:57
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:47
Q FIFO
Definition: JDataQuality.sh:55
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
set_variable DETECTOR
do set_variable INPUT_FILE $WORKDIR KM3NeT_
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 source JAcoustics sh $DETECTOR_ID CHECK_EXIT_CODE typeset A TRIPODS get_tripods $WORKDIR tripod txt TRIPODS for EMITTER in
Definition: JCanberra.sh:42
script
Definition: JAcoustics.sh:2
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null
Q HRV
Definition: JDataQuality.sh:52
then $DIR JPlotNPE PDG P
Definition: JPlotNPE-PDG.sh:62
Q WR
Definition: JDataQuality.sh:54