Jpp  17.1.0
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
JARCAMuonReconstruction.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 #
3 # \author bofearraigh
4 #
5 script=${0##*/}
6 
7 # ------------------------------------------------------------------------------------------
8 #
9 # Script to run the JPP Track Reconstruction Chain for ARCA.
10 #
11 # ------------------------------------------------------------------------------------------
12 
13 if [ -z $JPP_DIR ]; then
14  echo "Variable JPP_DIR undefined."
15  exit
16 fi
17 
18 source $JPP_DIR/setenv.sh $JPP_DIR
19 source $JPP_DIR/externals/km3net-dataformat/definitions/reconstruction.sh
20 
21 set_variable: DEBUG RECONSTRUCTION_DEBUG 1
22 set_variable: PDF RECONSTRUCTION_PDF $JPP_DATA/J%p.dat
23 set_variable: SUFFIX RECONSTRUCTION_SUFFIX jmuon
24 set_variable: ENERGY_CORRECTION RECONSTRUCTION_ENERGY_CORRECTION energy_correction_arca.txt
25 set_variable: NUMBER_OF_EVENTS RECONSTRUCTION_NUMBER_OF_EVENTS $((2**31))
26 set_variable: TMAX_S RECONSTRUCTION_TMAX_S 100
27 
28 if do_usage $*; then
29  usage "$script <detector file> <input file> <output file> <PMT parameters file> [(calibration file)+]"
30 fi
31 
32 if (( $# < 4 )); then
33  fatal "Wrong number of arguments."
34 fi
35 
40 set_array CALIBRATION $argv[5,-1]
41 
42 if [[ ! "$OUTPUT_FILE" == *"%"* ]]; then
43  fatal "The output file must have the wildcard % in the name, e.g. %.root"
44 fi
45 
46 typeset -A PARAMETERS
47 typeset -a APPLICATIONS
48 
49 APPLICATIONS=()
50 
51 
52 # ------------------------------------------------------------------------------------------
53 # JMuonPrefit
54 # ------------------------------------------------------------------------------------------
55 
56 PARAMETERS=(
57  sigma_ns 5
58  gridAngle_deg 1
59  useL0 0
60  numberOfOutliers 3
61  numberOfPrefits 50
62  DZMax 0.0
63  numberOfDZMax 1
64  TMaxLocal_ns 18
65  ctMin 0.0
66  roadWidth_m 200.0)
67 
69 
70 eval JMuonPrefit \
71  -a $DETECTOR \
72  -+${^CALIBRATION} \
73  -T $TMAX_S \
74  -f $INPUT_FILE \
75  -o ${OUTPUT_FILE/\%/jprefit} \
76  -n ${NUMBER_OF_EVENTS} \
77  -@ `make_equation PARAMETERS` \
78  -d $DEBUG --!
79 
80 CHECK_EXIT_CODE
81 
82 APPLICATIONS+=$JMUONPREFIT
83 
84 timer_stop
85 timer_print
86 
87 
88 # ------------------------------------------------------------------------------------------
89 # JMuonSimplex
90 # ------------------------------------------------------------------------------------------
91 
92 PARAMETERS=(
93  sigma_ns 3
94  TMaxLocal_ns 15.0
95  ctMin 0.0
96  roadWidth_m 200.0
97  numberOfPrefits 0)
98 
100 
101 eval JMuonSimplex \
102  -a $DETECTOR \
103  -+${^CALIBRATION} \
104  -T $TMAX_S \
105  -f ${OUTPUT_FILE/\%/jprefit} \
106  -o ${OUTPUT_FILE/\%/jsimplex} \
107  -@ `make_equation PARAMETERS` \
108  -d ${DEBUG} --!
109 
110 CHECK_EXIT_CODE
111 
112 APPLICATIONS+=$JMUONSIMPLEX
113 
114 timer_stop
115 timer_print
116 
117 
118 # ------------------------------------------------------------------------------------------
119 # JMuonGandalf
120 # ------------------------------------------------------------------------------------------
121 
122 PARAMETERS=(
123  TTS_ns 2
124  E_GeV 1.0e3
125  TMin_ns -50.0
126  TMax_ns +450.0
127  R_Hz 6.0e3
128  roadWidth_m 175.0
129  numberOfPrefits 0)
130 
132 
133 eval JMuonGandalf \
134  -a $DETECTOR \
135  -+${^CALIBRATION} \
136  -T $TMAX_S \
137  -f ${OUTPUT_FILE/\%/jsimplex} \
138  -o ${OUTPUT_FILE/\%/jgandalf} \
139  -P $PDF \
140  -@ `make_equation PARAMETERS` \
141  -d $DEBUG --!
142 
143 CHECK_EXIT_CODE
144 
145 APPLICATIONS+=$JMUONGANDALF
146 
147 timer_stop
148 timer_print
149 
150 
151 # ------------------------------------------------------------------------------------------
152 # JMuonStart
153 # ------------------------------------------------------------------------------------------
154 
155 PARAMETERS=(
156  roadWidth_m 160.0
157  R_Hz 6.0e3
158  TMin_ns -25.0
159  TMax_ns +75.0
160  Pmin1 1.0e-3
161  Pmin2 1.0e-2
162  numberOfPrefits 1)
163 
165 
166 eval JMuonStart \
167  -a $DETECTOR \
168  -+${^CALIBRATION} \
169  -T $TMAX_S \
170  -f ${OUTPUT_FILE/\%/jgandalf} \
171  -o ${OUTPUT_FILE/\%/jstart} \
172  -P $PDF \
173  -@ `make_equation PARAMETERS` \
174  -d $DEBUG --!
175 
176 CHECK_EXIT_CODE
177 
178 APPLICATIONS+=$JMUONSTART
179 
180 timer_stop
181 timer_print
182 
183 
184 # ------------------------------------------------------------------------------------------
185 # JMuonEnergy
186 # ------------------------------------------------------------------------------------------
187 
188 PARAMETERS=(
189  roadWidth_m 200.0
190  R_Hz 6.0e3
191  EMin_log 0.0
192  EMax_log 8.0
193  TMin_ns -50.0
194  TMax_ns +450.0
195  mestimator 1
196  numberOfPrefits 1)
197 
199 
200 eval JMuonEnergy \
201  -a $DETECTOR \
202  -+${^CALIBRATION} \
203  -T $TMAX_S \
204  -f ${OUTPUT_FILE/\%/jstart} \
205  -o ${OUTPUT_FILE/\%/jenergy} \
206  -P $PDF \
207  -E $ENERGY_CORRECTION \
208  -@ `make_equation PARAMETERS` \
209  -d $DEBUG --!
210 
211 CHECK_EXIT_CODE
212 
213 APPLICATIONS+=$JMUONENERGY
214 
215 timer_stop
216 timer_print
217 
218 
219 # ------------------------------------------------------------------------------------------
220 # JHistory
221 # ------------------------------------------------------------------------------------------
222 
224 
225 JHistory \
226  -f ${OUTPUT_FILE/\%/jenergy} \
227  -o ${OUTPUT_FILE/\%/jhistory} \
228  -A "$APPLICATIONS[*]" \
229  -d $DEBUG --!
230 
231 CHECK_EXIT_CODE
232 
233 timer_stop
234 timer_print
235 
236 
237 # ------------------------------------------------------------------------------------------
238 # rename outputfile and remove intermediate files
239 # ------------------------------------------------------------------------------------------
240 
242 
243 mv -v \
244  ${OUTPUT_FILE/\%/jhistory} \
245  ${OUTPUT_FILE/\%/${SUFFIX}}
246 
247 rm -vf \
248  ${OUTPUT_FILE/\%/jprefit} \
249  ${OUTPUT_FILE/\%/jsimplex} \
250  ${OUTPUT_FILE/\%/jgandalf} \
251  ${OUTPUT_FILE/\%/jstart} \
252  ${OUTPUT_FILE/\%/jenergy}
253 
254 timer_stop
255 timer_print
256 
257 
258 # ------------------------------------------------------------------------------------------
259 # JConvertEvt
260 # ------------------------------------------------------------------------------------------
261 
263 
264 JConvertEvt \
265  -f ${OUTPUT_FILE/\%/${SUFFIX}} \
266  -o ${OUTPUT_FILE/\%/${SUFFIX}.aanet} \
267  -a $DETECTOR \
268  -+${^CALIBRATION} \
269  -T $TMAX_S \
270  -P $PMT \
271  -d $DEBUG --!
272 
273 timer_stop
274 timer_print
then usage $script< detector identifier >< startdate\"YYYY-MM-DDHH:MM:SS\"><finaldate\"YYYY-MM-DDHH:MM:SS\"><QA/QCfile> fi case set_variable QAQC_TXT $argv[4]
Definition: JDataMonitor.sh:24
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR set_variable DEBUG set_variable PDF $JPP_DATA J p dat set_variable HISTOGRAM if do_usage *then usage $script< detector file >< inputfile >< outputfile > fi case set_variable PDF
then usage $script< input_file >< detector_file >< output_file(.root)> fi set_variable NUMBER_OF_TIMESLICES set_variable NUMBER_OF_SUMMARYSLICES set_variable NUMBER_OF_EVENTS set_variable ALL_PLOTS case set_variable NUMBER_OF_EVENTS
Definition: JRunAnalyzer.sh:18
then usage E
Definition: JMuonPostfit.sh:35
static const JPBS_t PMT(3, 4, 2, 3)
PBS of photo-multiplier tube (PMT)
rm f XXX txt echo nlist all archive files that do have specific variants getArchive sh $ARCHIVE test km3net(mjg_2|mjg_1)" getFile.sh $ARCHIVE/test 100 101 km3net "(mjg_2|mjg_1)" XXX
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR APPLICATIONS
Definition: JMuonPostfit.sh:25
o $QUALITY_ROOT d $DEBUG!JPlot1D f
Definition: JDataQuality.sh:66
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
Definition: diff-Tuna.sh:38
exit
Definition: JPizza.sh:36
then fatal Wrong number of arguments fi JConvertDetectorFormat a o
then echo
const int n
Definition: JPolint.hh:676
then timer_start(JRandomTimesliceWriter-a ${DETECTOR}-o ${PIPE}-n ${NUMBER_OF_SLICES}-P ${PMT_FILE}-d ${DEBUG}-S ${SEED}-B"$BACKGROUND_HZ"-N"$RECYCLING"--!&&for((i=0;$i!=10;++i));do;echo 'EOF' > $PIPE;usleep 100000;done &&rm-f $PIPE)&JTimesliceReprocessor-a $
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
Definition: JAcoustics.sh:21
do set_variable OUTPUT_DIRECTORY $WORKDIR T
* usage
then JFileTuna f $INPUT_FILE
Definition: file-Tuna.sh:66
&set_variable OUTPUT_FILE
set_variable INPUT_FILE
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable TRIPOD $argv[2] set_variable TX $argv[3] set_variable TY $argv[4] if[[!-f $DETECTOR]]
Definition: JFootprint.sh:28
JFIT::JHistory JHistory
Definition: JHistory.hh:354
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:47
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR set_variable DEBUG set_variable WORKDIR if do_usage *then usage $script(input file)+" fi if (( $ fatal "Invalid number of arguments." fi JCookie.sh set_array INPUT_FILES $argv[1
then JCalibrateToT a
Definition: JTuneHV.sh:116
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
set_variable DETECTOR
do set_variable DETECTOR_TXT $WORKDIR detector
data_type v[N+1][M+1]
Definition: JPolint.hh:756
source $JPP_DIR setenv csh $JPP_DIR &dev null eval JShellParser o a A
script
Definition: JAcoustics.sh:2
then $DIR JPlotNPE PDG P
Definition: JPlotNPE-PDG.sh:62
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62