Jpp - the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
JDataQuality.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 ${DATABASE_DEBUG:-2}
12 set_variable WORKDIR ${DATABASE_WORKDIR:-/tmp/}
13 set_variable GRAPHICS ${DATABASE_GRAPHICS:-pdf}
14 set_variable BACKGROUND ${DATABASE_BACKGROUND:+-B}
15 
16 if ( do_usage $* ); then
17  usage "$script <detector identifier> <first run> <last run> [working directory]"
18 fi
19 
20 case $# in
23  set_array RUNS $2 $3;;
24  *) fatal "Wrong number of arguments."
25 esac
26 
27 JCookie.sh
28 
29 if [[ "$DETECTOR" =~ "^[0-9]+$" ]]; then
30  typeset -Z 8 DETECTOR
31 fi
32 
33 typeset -Z 8 RUNS_START
34 typeset -Z 8 RUNS_END
36 set_variable RUNS_END ${RUNS[2]}
37 set_variable FILEPREFIX KM3NeT_${DETECTOR}_${RUNS_START}-${RUNS_END}
38 
39 set_variable QUALITY_FILE $WORKDIR/${FILEPREFIX}_quality.root
40 
41 echo "Output will appear in ${WORKDIR}."
42 
43 mkdir -p $WORKDIR
44 
45 JDataQuality \
46  -D "$DETECTOR" \
47  -R "$RUNS[*]" \
48  -Q "livetime_s; 1200 60000" \
49  -Q "(UTCMax_s - UTCMin_s) - livetime_s; -100 +100" \
50  -Q "JDAQEvent/livetime_s; 0.05 10.0" \
51  -Q "HRV; 0.00 0.2" \
52  -Q "DAQ; 0.95 1.05" \
53  -Q "WR; 0.95 1.05" \
54  -Q "FIFO; 0.00 0.01" \
55  -Q "MEAN_Rate_Hz; 4500 12000" \
56  -Q "RMS_Rate_Hz; 200 3000" \
57  -Q "out_sync; 0 1" \
58  -V "out_sync; 0 0" \
59  -o $QUALITY_FILE \
60  -d $DEBUG --!
61 
62 CHECK_EXIT_CODE
63 
64 if (( 1 )); then
65 
66  JPlot1D \
67  -f ${QUALITY_FILE}:h0 \
68  -\> "quality" \
69  -\^ "number of runs" \
70  -T "" \
71  -o $WORKDIR/${FILEPREFIX}_quality.${GRAPHICS} $BACKGROUND
72 
73  JPlot1D \
74  -f ${QUALITY_FILE}:h1 \
75  -\> "selection" \
76  -\^ "number of runs" \
77  -T "" \
78  -o $WORKDIR/${FILEPREFIX}_selection.${GRAPHICS} $BACKGROUND
79 
80  JPlot1D \
81  -w 1200x600 \
82  -f ${QUALITY_FILE}:\^livetime_s\$ \
83  -\> "run number" \
84  -O P \
85  -T "?" \
86  -o $WORKDIR/${FILEPREFIX}_livetime.${GRAPHICS} $BACKGROUND
87 
88  JPlot1D \
89  -w 1200x600 \
90  -f ${QUALITY_FILE}:UTC \
91  -\> "run number" \
92  -O P \
93  -T "?" \
94  -o $WORKDIR/${FILEPREFIX}_UTC-livetime.${GRAPHICS} $BACKGROUND
95 
96  JPlot1D \
97  -w 1200x600 \
98  -f ${QUALITY_FILE}:JDAQEvent \
99  -\> "run number" \
100  -O P \
101  -T "?" \
102  -o $WORKDIR/${FILEPREFIX}_event-rate.${GRAPHICS} $BACKGROUND
103 
104  JPlot1D \
105  -w 1200x600 \
106  -f ${QUALITY_FILE}:HRV \
107  -\> "run number" \
108  -O P \
109  -T "?" \
110  -o $WORKDIR/${FILEPREFIX}_HRV.${GRAPHICS} $BACKGROUND
111 
112  JPlot1D \
113  -w 1200x600 \
114  -f ${QUALITY_FILE}:DAQ$ \
115  -\> "run number" \
116  -O P \
117  -T "?" \
118  -o $WORKDIR/${FILEPREFIX}_DAQ.${GRAPHICS} $BACKGROUND
119 
120  JPlot1D \
121  -w 1200x600 \
122  -f ${QUALITY_FILE}:WR \
123  -\> "run number" \
124  -O P \
125  -T "?" \
126  -o $WORKDIR/${FILEPREFIX}_WR.${GRAPHICS} $BACKGROUND
127 
128  JPlot1D \
129  -w 1200x600 \
130  -f ${QUALITY_FILE}:FIFO \
131  -\> "run number" \
132  -O P \
133  -T "?" \
134  -o $WORKDIR/${FILEPREFIX}_FIFO.${GRAPHICS} $BACKGROUND
135 
136  JPlot1D \
137  -w 1200x600 \
138  -f ${QUALITY_FILE}:MEAN_Rate_Hz \
139  -\> "run number" \
140  -O P \
141  -T "?" \
142  -o $WORKDIR/${FILEPREFIX}_PMT-rate-mean.${GRAPHICS} $BACKGROUND
143 
144  JPlot1D \
145  -w 1200x600 \
146  -f ${QUALITY_FILE}:RMS_Rate_Hz \
147  -\> "run number" \
148  -O P \
149  -T "?" \
150  -o $WORKDIR/${FILEPREFIX}_PMT-rate-rms.${GRAPHICS} $BACKGROUND
151 
152  JPlot1D \
153  -w 1200x600 \
154  -f ${QUALITY_FILE}:\^out_sync\$ \
155  -y "-1 10" \
156  -\> "run number" \
157  -O P \
158  -T "?" \
159  -o $WORKDIR/${FILEPREFIX}_out_sync.${GRAPHICS} $BACKGROUND
160 
161  JPlot1D \
162  -w 1200x600 \
163  -f ${QUALITY_FILE}:VETO \
164  -y "0 1.1" \
165  -\> "run number" \
166  -O P \
167  -L BL \
168  -T "veto" \
169  -o $WORKDIR/${FILEPREFIX}_veto.${GRAPHICS} $BACKGROUND
170 
171 fi
data_type w[N+1][M+1]
Definition: JPolint.hh:741
do echo Generating $dir eval D
Definition: JDrawLED.sh:50
void set_variable(const std::string &name, const std::string &value)
Set environment variable.
then set_variable singlesRate set_variable doublesRate set_variable numberOfSlices echo Generating random background echo Singles rate
exit
Definition: JPizza.sh:36
then for HISTOGRAM in h0 h1
Definition: JMatrixNZ.sh:69
then JPizza f
Definition: JPizza.sh:46
then echo
do set_variable OUTPUT_DIRECTORY $WORKDIR T
do $DIR JTransitTime o
Definition: JTransitTime.sh:44
* usage
then usage $script[distance] fi case set_variable R
Definition: JDrawLED.sh:40
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:45
then display $WORKDIR
Definition: plot-Domino.sh:127
set_array RUNS
Definition: JDataQuality.sh:23
set_variable DETECTOR
do set_variable INPUT_FILE $WORKDIR KM3NeT_
then typeset Z DETECTOR fi typeset Z RUNS_START typeset Z RUNS_END set_variable RUNS_START
Definition: JDataQuality.sh:35
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:38
script
Definition: JAcoustics.sh:2
then usage $script< detector file >< inputfile > fi case set_variable WORKDIR
Definition: JLegolas.sh:28
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null
then $DIR JPlotNPE PDG P
Definition: JPlotNPE-PDG.sh:60
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62