Jpp
 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 
28 if ( do_usage $* ); then
29  usage "$script [working directory]"
30 fi
31 
32 case $# in
33  1) WORKDIR=$1;;
34 esac
35 
36 
37 set_variable TMAX 3.0
38 set_variable DETECTOR $WORKDIR/detector.detx
39 set_variable BACKGROUND_HZ 5e3 500 50 5 0.5
40 set_variable numberOfSlices 10000
41 set_variable INPUT_FILE $WORKDIR/timeslice.root
42 set_variable OUTPUT_FILE $WORKDIR/slewing\[Monte\ Carlo\].root
43 
44 
45 if (( 1 )); then
46 
48  numberOfLines=1
49  numberOfFloors=1
50 
51  JDetector \
52  -D 1 \
53  -@detectorType=$detectorType \
54  -@numberOfLines=$numberOfLines \
55  -@numberOfFloors=$numberOfFloors \
56  -o $DETECTOR -V V2 \
57  -d $DEBUG
58 
59 fi
60 
61 if (( 1 )); then
62 
63  if [ -f "$WORKDIR/timeslice.root" ]; then
64  rm -i $WORKDIR/timeslice.root
65  fi
66 
67  if [ ! -f "$WORKDIR/timeslice.root" ]; then
68 
69  JRandomTimesliceWriter \
70  -a $DETECTOR \
71  -o $INPUT_FILE \
72  -B "$BACKGROUND_HZ" \
73  -n $numberOfSlices \
74  -P %.slewing=1 \
75  -d $DEBUG --!
76 
77  fi
78 fi
79 
80 
81 if (( 1 )); then
82 
83  echo "Monitoring data."
84  echo "Detector: $DETECTOR"
85 
86  JSlewingK40 \
87  -f $WORKDIR/timeslice.root \
88  -a $DETECTOR \
89  -o $OUTPUT_FILE \
90  -t "20 35" \
91  -d $DEBUG
92 
93 fi
94 
95 if (( 1 )); then
96 
97  JScale1D \
98  -f ${OUTPUT_FILE}:h0 \
99  -f ${OUTPUT_FILE}:h1 \
100  -F "1/GetEntries" \
101  -o $WORKDIR/scale.root --!
102 
103 fi
104 
105 if (( 1 )); then
106 
107  JFit \
108  -f ${WORKDIR}/scale.root:h0 \
109  -o ${WORKDIR}/fit.root \
110  -F "[0] * exp(-0.5 * (x-[1])*(x-[1]) / ([2]*[2])) + [3]" \
111  -@"p0 = GetMaximum" \
112  -@"p1 = 0.0" \
113  -@"p2 = 0.5*GetRMS" \
114  -@"p3 = GetMinimum" \
115  -d3
116 
117  JPlot1D \
118  -f ${WORKDIR}/fit.root:h0 \
119  -\> "#Deltat [ns]" \
120  -\^ "number of hits [au]" \
121  -o resolution.gif
122 
123 fi
124 
125 if (( 1 )); then
126 
127  JPlot1D \
128  -f $WORKDIR/scale.root:h1 \
129  -\> "time over threshold [ns]" \
130  -\^ "number of hits [au]" \
131  -o tot.gif
132 
133 fi
134 
135 if (( 1 )); then
136 
137  JFit \
138  -f ${OUTPUT_FILE}:h2 \
139  -o ${WORKDIR}/fit.root \
140  -F "[0]*exp([1]*sqrt(x) + [2]*x) + [3]" \
141  -@"p0 = GetMaximum" \
142  -@"p1 = -0.01" \
143  -@"p2 = -0.05" \
144  -@"p3 = GetMinimum" \
145  -d3
146 
147  JPlot1D \
148  -f ${WORKDIR}/fit.root:h2 \
149  -y "-10 +10" \
150  -\> "TOT [ns]" \
151  -\^ "#Deltat [ns]" \
152  -o slewing.gif
153 
154 fi
do echo Generating $dir eval D
Definition: JDrawLED.sh:50
void set_variable(const std::string &name, const std::string &value)
Set environment variable.
set_variable DETECTOR
Definition: JLegolas.sh:31
then check_input_file $DETECTOR $INPUT_FILE for OPTION in A B C D E F
Definition: JFilter.sh:47
esac print_variable DETECTOR INPUT_FILE OUTPUT_FILE CDF for TYPE in
Definition: JSirene.sh:45
exit
Definition: JPizza.sh:36
then for HISTOGRAM in h0 h1
Definition: JMatrixNZ.sh:69
&set_variable INPUT_FILE
Definition: JLegolas.sh:30
fi JEventTimesliceWriter a
then JPizza f
Definition: JPizza.sh:46
then echo
then print_variable DETECTOR INPUT_FILE INTERMEDIATE_FILE check_input_file $DETECTOR $INPUT_FILE check_output_file $INTERMEDIATE_FILE $OUTPUT_FILE JMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JPath.sh:52
then $JPP_DIR examples JDetector JSlewing P slewing
Definition: JSlewing.sh:41
* usage
then JFileTuna f $INPUT_FILE
Definition: file-Tuna.sh:66
then echo Launching message logger in new window xterm geometry e JGetMessage H $HOST T $TAG d3
JFIT::JFit JFit
Definition: JEvt.hh:386
alias put_queue eval echo n
Definition: qlib.csh:19
then display $WORKDIR
Definition: plot-Domino.sh:142
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR set_variable DEBUG set_variable WORKDIR set_variable PIPE $WORKDIR pipe dat set_variable OUTPUT_FILE $WORKDIR timeslice root set_variable DETECTOR $JPP_DATA km3net_reference detx set_variable TRIGGER $JPP_DATA trigger_parameters_arca txt set_variable PMT_FILE $JPP_DATA PMT_parameters txt set_variable BACKGROUND_HZ
version
Definition: JCalibratePMT.sh:7
then usage $script< detector file >< inputfile > fi case set_variable WORKDIR
Definition: JLegolas.sh:28
then $DIR JPlotNPE PDG P
Definition: JPlotNPE-PDG.sh:60
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62
void scale(vector< double > &v, double c)
scale vector content