8# ------------------------------------------------------------------------------------------
10# Utility script to test JGandalf - JEnergy - JStart on Monte Carlo true muons.
12# ------------------------------------------------------------------------------------------
14if [ -z $JPP_DIR ]; then
15 echo "Variable JPP_DIR undefined."
19source $JPP_DIR/setenv.sh $JPP_DIR
22set_variable WORKDIR $JPP_DATA
23set_variable PDF $JPP_DATA/J%p.dat
24set_variable ENERGY_CORRECTION energy_correction_arca.root
25set_variable: FORMAT GRAPHICS_FORMAT gif
26set_variable+ BATCH GRAPHICS_BATCH -B
29 usage "$script <detector file> <input file> [working directory]"
33 3) set_variable WORKDIR $3;&
34 2) set_variable INPUT_FILE $2;
35 set_variable DETECTOR $1;;
36 *) fatal "Wrong number of arguments.";;
39set_variable OUTPUT_FILE $WORKDIR/%-mc.root
43 for APP in event gandalf start energy; do
44 rm -f ${OUTPUT_FILE/\%/${APP}}
49 -o ${OUTPUT_FILE/\%/event} \
61 eval $JPP_BIN/JMuonGandalf \
63 -f ${OUTPUT_FILE/\%/event} \
64 -o ${OUTPUT_FILE/\%/gandalf} \
66 -@ `make_equation PARAMETERS` \
78 eval $JPP_BIN/JMuonStart \
80 -f ${OUTPUT_FILE/\%/gandalf} \
81 -o ${OUTPUT_FILE/\%/start} \
83 -@ `make_equation PARAMETERS` \
96 eval $JPP_BIN/JMuonEnergy \
98 -f ${OUTPUT_FILE/\%/start} \
99 -o ${OUTPUT_FILE/\%/energy} \
101 -E $ENERGY_CORRECTION \
102 -@ `make_equation PARAMETERS` \
109 -f ${OUTPUT_FILE/\%/energy} \
112 -o $WORKDIR/postfit\[MC\].root
118 -f $WORKDIR/postfit\[MC\].root:hx \
120 -\^ "number of events [a.u.]" \
123 -o angle-truth.$FORMAT $BATCH
129 -f $WORKDIR/postfit\[MC\].root:E_0 \
130 -f $WORKDIR/postfit\[MC\].root:E_1 \
131 -f $WORKDIR/postfit\[MC\].root:E_2 \
132 -\^ "number of events [a.u.]" \
133 -> "log10(E_{fit}/GeV)" \
141 -f $WORKDIR/postfit\[MC\].root:ExE \
144 -> "E_{true} [GeV]" \
152 -f $WORKDIR/postfit\[MC\].root:E_E \
153 -F "[0]*exp(-0.5*(x-[1])*(x-[1])/([2]*[2]))" \
154 -@ "p0 = 0.8*GetMaximum" \
161 -> "log10(E_{fit}/E_{true})" \
162 -o er-truth.$FORMAT $BATCH
168 -f $WORKDIR/postfit\[MC\].root:Va \
178 -f $WORKDIR/postfit\[MC\].root:hz0 \
179 -f $WORKDIR/postfit\[MC\].root:hz1 \
181 -\^ "number of events [a.u.]" \
189 -f $WORKDIR/postfit\[MC\].root:hx \
190 -f $WORKDIR/postfit\[MC\].root:hx \
192 -\^ "number of events [a.u.]" \
195 -o angle-truth.$FORMAT $BATCH
200 JSum1D -f $WORKDIR/postfit\[MC\].root:hx -o $WORKDIR/sum\[MC\].root -N
201 JSum1D -f $WORKDIR/postfit\[gandalf\].root:hx -o $WORKDIR/sum\[gandalf\].root -N
204 -f $WORKDIR/sum\[gandalf\].root:hx \
205 -f $WORKDIRsum\[MC\].root:hx \
207 -\^ "integral of events" \
210 -o sum-truth.$FORMAT $BATCH