Jpp test-rotations-old
the software that should make you happy
Loading...
Searching...
No Matches
JMuonMCEvt.sh
Go to the documentation of this file.
1#!/usr/bin/env zsh
2#
3# \author mdejong
4#
5version=1.0
6script=${0##*/}
7
8# ------------------------------------------------------------------------------------------
9#
10# Utility script to test JGandalf - JEnergy - JStart on Monte Carlo true muons.
11#
12# ------------------------------------------------------------------------------------------
13
14if [ -z $JPP_DIR ]; then
15 echo "Variable JPP_DIR undefined."
16 exit
17fi
18
19source $JPP_DIR/setenv.sh $JPP_DIR
20
21set_variable DEBUG 2
22set_variable WORKDIR $JPP_DATA
23set_variable INPUT_FILE $WORKDIR/trigger_efficiency+background.root
24set_variable DETECTOR $WORKDIR/km3net_reference.detx
25set_variable PDF $JPP_DATA/J%p.dat
26set_variable ENERGY_CORRECTION energy_correction_arca.txt
27set_variable: FORMAT GRAPHICS_FORMAT gif
28set_variable+ BATCH GRAPHICS_BATCH -B
29
30if do_usage $*; then
31 usage "$script [detector file [input file [working directory]]]"
32fi
33
34case $# in
35 3) set_variable WORKDIR $3;&
36 2) set_variable INPUT_FILE $2;&
37 1) set_variable DETECTOR $1;;
38esac
39
40set_variable OUTPUT_FILE $WORKDIR/%-mc.root
41
42if (( 1 )); then
43
44 for APP in event gandalf start energy; do
45 rm -f ${OUTPUT_FILE/\%/${APP}}
46 done
47
48 $JPP_BIN/JMuonMCEvt \
49 -f $INPUT_FILE \
50 -o ${OUTPUT_FILE/\%/event} \
51 -d $DEBUG --!
52
53 PARAMETERS=(
54 TTS_ns 2
55 E_GeV 1.0e3
56 TMin_ns -50.0
57 TMax_ns +450.0
58 R_Hz 6.0e3
59 roadWidth_m 175.0
60 numberOfPrefits 0)
61
62 eval $JPP_BIN/JMuonGandalf \
63 -a $DETECTOR \
64 -f ${OUTPUT_FILE/\%/event} \
65 -o ${OUTPUT_FILE/\%/gandalf} \
66 -P $PDF \
67 -@ `make_equation PARAMETERS` \
68 -d $DEBUG --!
69
70 PARAMETERS=(
71 roadWidth_m 160.0
72 R_Hz 6.0e3
73 TMin_ns -25.0
74 TMax_ns +75.0
75 Pmin1 1.0e-3
76 Pmin2 1.0e-2
77 numberOfPrefits 1)
78
79 eval $JPP_BIN/JMuonStart \
80 -a $DETECTOR \
81 -f ${OUTPUT_FILE/\%/gandalf} \
82 -o ${OUTPUT_FILE/\%/start} \
83 -P $PDF \
84 -@ `make_equation PARAMETERS` \
85 -d $DEBUG --!
86
87 PARAMETERS=(
88 roadWidth_m 200.0
89 R_Hz 6.0e3
90 EMin_log 0.0
91 EMax_log 8.0
92 TMin_ns -50.0
93 TMax_ns +450.0
94 mestimator 1
95 numberOfPrefits 1)
96
97 eval $JPP_BIN/JMuonEnergy \
98 -a $DETECTOR \
99 -f ${OUTPUT_FILE/\%/start} \
100 -o ${OUTPUT_FILE/\%/energy} \
101 -P $PDF \
102 -E energy_correction_arca.txt \
103 -@ `make_equation PARAMETERS` \
104 -d $DEBUG --!
105fi
106
107if (( 1 )); then
108
109 JMuonPostfit \
110 -f ${OUTPUT_FILE/\%/energy} \
111 -O LOGE \
112 -A 4 \
113 -o $WORKDIR/postfit\[MC\].root
114fi
115
116if (( 1 )); then
117
118 JPlot1D \
119 -f $WORKDIR/postfit\[MC\].root:hx \
120 -> "angle [deg]" \
121 -\^ "number of events [a.u.]" \
122 -XX \
123 -L TR \
124 -o angle-truth.$FORMAT $BATCH
125fi
126
127if (( 1 )); then
128
129 JPlot1D \
130 -f $WORKDIR/postfit\[MC\].root:E_0 \
131 -f $WORKDIR/postfit\[MC\].root:E_1 \
132 -f $WORKDIR/postfit\[MC\].root:E_2 \
133 -\^ "number of events [a.u.]" \
134 -> "log10(E_{fit}/GeV)" \
135 -XX \
136 -o e0.$FORMAT $BATCH
137fi
138
139if (( 1 )); then
140
141 JPlot2D \
142 -f $WORKDIR/postfit\[MC\].root:ExE \
143 -O COLZ \
144 -XX -YY \
145 -> "E_{true} [GeV]" \
146 -< "E_{fit} [GeV]" \
147 -o ee.$FORMAT $BATCH
148fi
149
150if (( 1 )); then
151
152 JFit \
153 -f $WORKDIR/postfit\[MC\].root:E_E \
154 -F "[0]*exp(-0.5*(x-[1])*(x-[1])/([2]*[2]))" \
155 -@ "p0 = 0.8*GetMaximum" \
156 -@ "p1 = 0.0" \
157 -@ "p2 = 0.4" \
158 -x "-0.8 +0.8"
159
160 JPlot1D \
161 -f fit.root:E_E \
162 -> "log10(E_{fit}/E_{true})" \
163 -o er-truth.$FORMAT $BATCH
164fi
165
166if (( 1 )); then
167
168 JPlot2D \
169 -f $WORKDIR/postfit\[MC\].root:Va \
170 -OCOLZ \
171 -> "R^{2} [m^{2}]" \
172 -< "z [m]" \
173 -o ha.$FORMAT $BATCH
174fi
175
176if (( 1 )); then
177
178 JPlot1D \
179 -f $WORKDIR/postfit\[MC\].root:hz0 \
180 -f $WORKDIR/postfit\[MC\].root:hz1 \
181 -> "z [m]" \
182 -\^ "number of events [a.u.]" \
183 -L TR \
184 -o z.$FORMAT $BATCH
185fi
186
187if (( 0 )); then
188
189 JPlot1D \
190 -f $WORKDIR/postfit\[MC\].root:hx \
191 -f $WORKDIR/postfit\[MC\].root:hx \
192 -> "angle [deg]" \
193 -\^ "number of events [a.u.]" \
194 -XX \
195 -L TR \
196 -o angle-truth.$FORMAT $BATCH
197fi
198
199if (( 0 )); then
200
201 JSum1D -f $WORKDIR/postfit\[MC\].root:hx -o $WORKDIR/sum\[MC\].root -N
202 JSum1D -f $WORKDIR/postfit\[gandalf\].root:hx -o $WORKDIR/sum\[gandalf\].root -N
203
204 JPlot1D \
205 -f $WORKDIR/sum\[gandalf\].root:hx \
206 -f $WORKDIRsum\[MC\].root:hx \
207 -> "angle [deg]" \
208 -\^ "integral of events" \
209 -XX \
210 -L TR \
211 -o sum-truth.$FORMAT $BATCH
212
213fi