Jpp  18.0.0-rc.2
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
JSlewingK40.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 #
3 #
4 # \author mdejong
5 #
6 version=1.0
7 script=${0##*/}
8 
9 # ------------------------------------------------------------------------------------------
10 #
11 # Utility script to test JSlewingK40.
12 #
13 # ------------------------------------------------------------------------------------------
14 
15 
16 if [ -z $JPP_DIR ]; then
17  echo "Variable JPP_DIR undefined."
18  exit
19 fi
20 
21 
22 source $JPP_DIR/setenv.sh $JPP_DIR
23 
24 
27 set_variable: FORMAT GRAPHICS_FORMAT gif
28 set_variable+ BATCH GRAPHICS_BATCH -B
29 
30 if do_usage $*; then
31  usage "$script [working directory]"
32 fi
33 
34 case $# in
36 esac
37 
38 
39 set_variable TMAX 3.0
40 set_variable DETECTOR $WORKDIR/detector.detx
41 set_variable BACKGROUND_HZ 5e3 500 50 5 0.5
42 set_variable numberOfSlices 10000
43 set_variable INPUT_FILE $WORKDIR/timeslice.root
44 set_variable OUTPUT_FILE $WORKDIR/slewing\[Monte\ Carlo\].root
45 
46 
47 if (( 1 )); then
48 
50  numberOfLines=1
51  numberOfFloors=1
52 
53  JDetector \
54  -D 1 \
55  -@detectorType=$detectorType \
56  -@numberOfLines=$numberOfLines \
57  -@numberOfFloors=$numberOfFloors \
58  -o $DETECTOR -V V2 \
59  -d $DEBUG
60 
61 fi
62 
63 if (( 1 )); then
64 
65  if [ -f "$WORKDIR/timeslice.root" ]; then
66  rm -i $WORKDIR/timeslice.root
67  fi
68 
69  if [ ! -f "$WORKDIR/timeslice.root" ]; then
70 
71  JRandomTimesliceWriter \
72  -a $DETECTOR \
73  -o $INPUT_FILE \
74  -B "$BACKGROUND_HZ" \
75  -n $numberOfSlices \
76  -P %.slewing=1 \
77  -d $DEBUG --!
78 
79  fi
80 fi
81 
82 
83 if (( 1 )); then
84 
85  echo "Monitoring data."
86  echo "Detector: $DETECTOR"
87 
88  JSlewingK40 \
89  -f $WORKDIR/timeslice.root \
90  -a $DETECTOR \
91  -o $OUTPUT_FILE \
92  -t "20 35" \
93  -d $DEBUG
94 
95 fi
96 
97 if (( 1 )); then
98 
99  JScale1D \
100  -f ${OUTPUT_FILE}:h0 \
101  -f ${OUTPUT_FILE}:h1 \
102  -F "1.0/GetEntries" \
103  -O "nosw2" \
104  -o $WORKDIR/scale.root --!
105 
106 fi
107 
108 if (( 1 )); then
109 
110  JFit \
111  -f ${WORKDIR}/scale.root:h0 \
112  -o ${WORKDIR}/fit.root \
113  -F "[0] * exp(-0.5 * (x-[1])*(x-[1]) / ([2]*[2])) + [3]" \
114  -@"p0 = GetMaximum" \
115  -@"p1 = 0.0" \
116  -@"p2 = 0.5*GetRMS" \
117  -@"p3 = GetMinimum" \
118  -d3
119 
120  JPlot1D \
121  -f ${WORKDIR}/fit.root:h0 \
122  -\> "#Deltat [ns]" \
123  -\^ "number of hits [au]" \
124  -o resolution.$FORMAT $BATCH
125 
126 fi
127 
128 if (( 1 )); then
129 
130  JPlot1D \
131  -f $WORKDIR/scale.root:h1 \
132  -\> "time over threshold [ns]" \
133  -\^ "number of hits [au]" \
134  -o tot.$FORMAT $BATCH
135 
136 fi
137 
138 if (( 1 )); then
139 
140  JFit \
141  -f ${OUTPUT_FILE}:h2 \
142  -o ${WORKDIR}/fit.root \
143  -F "[0]*exp([1]*sqrt(x) + [2]*x) + [3]" \
144  -@"p0 = GetMaximum" \
145  -@"p1 = -0.01" \
146  -@"p2 = -0.05" \
147  -@"p3 = GetMinimum" \
148  -d3
149 
150  JPlot1D \
151  -f ${WORKDIR}/fit.root:h2 \
152  -y "-10 +10" \
153  -\> "TOT [ns]" \
154  -\^ "#Deltat [ns]" \
155  -o slewing.$FORMAT $BATCH
156 
157 fi
remove to overwrite exit fi JDetector D $ID detectorType
version
Definition: JEditTuneHV.sh:5
o $QUALITY_ROOT d $DEBUG!CHECK_EXIT_CODE JPlot1D f
Definition: JDataQuality.sh:76
exit
Definition: JPizza.sh:36
V(JDAQEvent-JTriggerReprocessor)*1.0/(JDAQEvent+1.0e-10)
then fatal Wrong number of arguments fi JConvertDetectorFormat a o
then echo
const int n
Definition: JPolint.hh:697
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
Definition: JAcoustics.sh:21
then JCalibrateToT a
Definition: JTuneHV.sh:116
then $JPP_DIR examples JDetector JSlewing P slewing
Definition: JSlewing.sh:43
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
then awk F
* usage
then JFileTuna f $INPUT_FILE
Definition: file-Tuna.sh:66
&set_variable OUTPUT_FILE
set_variable INPUT_FILE
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:47
then set_variable MODULE getModule a $DETECTOR L $STRING $FLOOR JEditDetector a $DETECTOR M $MODULE add $X o $DETECTOR else echo No update of detector $DETECTOR
then echo Launching message logger in new window xterm geometry e JGetMessage H $HOST T $TAG d3
then display $WORKDIR
Definition: plot-Domino.sh:128
set_variable DETECTOR
do set_variable DETECTOR_TXT $WORKDIR detector
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 JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
Definition: JCanberra.sh:46
do echo Generating $dir eval D
Definition: JDrawLED.sh:53
then $DIR JPlotNPE PDG P
Definition: JPlotNPE-PDG.sh:62
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62
void scale(vector< double > &v, double c)
scale vector content