Jpp 20.0.0-rc.2
the software that should make you happy
Loading...
Searching...
No Matches
JORCAReconstruction.sh
Go to the documentation of this file.
1#!/usr/bin/env zsh
2#
3# \author mdejong
4#
5script=${0##*/}
6
7# ------------------------------------------------------------------------------------------
8#
9# Script to run the JPP Reconstruction Chain for ORCA.
10#
11# ------------------------------------------------------------------------------------------
12
13if [ -z $JPP_DIR ]; then
14 echo "Variable JPP_DIR undefined."
15 exit
16fi
17
18source $JPP_DIR/setenv.sh $JPP_DIR
19
20
21source reconstruction.sh
22
23set_variable: DEBUG RECONSTRUCTION_DEBUG 1
24set_variable: OPTION RECONSTRUCTION_OPTION --!
25set_variable: PDF RECONSTRUCTION_PDF $JPP_DATA/J%p.dat
26set_variable: NUMBER_OF_EVENTS RECONSTRUCTION_NUMBER_OF_EVENTS $((2**31))
27set_variable: NUMBER_OF_THREADS RECONSTRUCTION_NUMBER_OF_THREADS 0
28set_variable+ OVERWRITE RECONSTRUCTION_OVERWRITE 1
29set_variable: TMAX_S RECONSTRUCTION_TMAX_S 100
30set_variable: RATE_HZ RECONSTRUCTION_RATE_HZ 7.0e3
31
32if do_usage $*; then
33 usage "$script <detector file> <input file> <output file> <PMT parameters file> [(calibration file)+]"
34fi
35
36if (( $# < 4 )); then
37 fatal "Wrong number of arguments."
38fi
39
40set_variable DETECTOR $argv[1]
41set_variable INPUT_FILE $argv[2]
42set_variable OUTPUT_FILE $argv[3]
43set_variable PMT $argv[4]
44set_array CALIBRATION $argv[5,-1]
45
46if (( ${#CALIBRATION} != 0 )); then
47 getMechanics.sh $DETECTOR
48fi
49
50typeset -A PARAMETERS
51
52PARAMETERS+=(
53 muon.prefit.sigma_ns 5.0
54 muon.prefit.gridAngle_deg 4.0
55 muon.prefit.useL0 1
56 muon.prefit.numberOfOutliers 2
57 muon.prefit.numberOfPrefits 60
58 muon.prefit.numberOfPostfits 20
59 muon.prefit.TMaxLocal_ns 12.0
60 muon.prefit.ctMin 0.0
61 muon.prefit.roadWidth_m 50.0
62 muon.prefit.Qwatershed 1.5)
63
64PARAMETERS+=(
65 muon.simplex.sigma_ns 3.0
66 muon.simplex.TMaxLocal_ns 15.0
67 muon.simplex.ctMin 0.0
68 muon.simplex.roadWidth_m 50.0
69 muon.simplex.numberOfPrefits 0)
70
71PARAMETERS+=(
72 muon.start.roadWidth_m 50.0
73 muon.start.R_Hz $RATE_HZ
74 muon.start.TMin_ns -25.0
75 muon.start.TMax_ns +25.0
76 muon.start.Pmin 1.0e-8
77 muon.start.Pmin1 1.0e-3
78 muon.start.Pmin2 1.0e-2
79 muon.start.numberOfPrefits 0)
80
81PARAMETERS+=(
82 muon.gandalf.TTS_ns 1.0
83 muon.gandalf.E_GeV 10.0
84 muon.gandalf.TMin_ns -50.0
85 muon.gandalf.TMax_ns +450.0
86 muon.gandalf.ZMin_m -3.0
87 muon.gandalf.ZMax_m +9.0
88 muon.gandalf.R_Hz $RATE_HZ
89 muon.gandalf.roadWidth_m 50.0
90 muon.gandalf.cosLR 0.7
91 muon.gandalf.numberOfPrefits 0)
92
93PARAMETERS+=(
94 muon.start2.roadWidth_m 50.0
95 muon.start2.R_Hz $RATE_HZ
96 muon.start2.TMin_ns -25.0
97 muon.start2.TMax_ns +25.0
98 muon.start2.Pmin1 1.0e-3
99 muon.start2.Pmin2 1.0e-2
100 muon.start2.numberOfPrefits 1
101 muon.start2.numberOfPostfits 0)
102
103PARAMETERS+=(
104 muon.energy.roadWidth_m 80.0
105 muon.energy.R_Hz $RATE_HZ
106 muon.energy.EMin_log 0.0
107 muon.energy.EMax_log 7.0
108 muon.energy.TMin_ns -25.0
109 muon.energy.TMax_ns +25.0
110 muon.energy.ZMin_m -7.5
111 muon.energy.resolution 0.01
112 muon.energy.mestimator 3
113 muon.energy.numberOfPrefits 0)
114
115PARAMETERS+=(
116 muon.features.TTS_ns 1.0
117 muon.features.E_GeV 10.0
118 muon.features.TMin_ns -50.0
119 muon.features.TMax_ns +450.0
120 muon.features.ZMin_m -3.0
121 muon.features.ZMax_m +9.0
122 muon.features.R_Hz $RATE_HZ
123 muon.features.roadWidth_m 50.0
124 muon.features.numberOfPrefits 0)
125
126PARAMETERS+=(
127 shower.prefit.numberOfPrefits 200
128 shower.prefit.numberOfGrids 2
129 shower.prefit.factoryLimit 20
130 shower.prefit.sigma_ns 2.5
131 shower.prefit.numberOfOutliers 4
132 shower.prefit.TMaxLocal_ns 10.0
133 shower.prefit.TMaxExtra_ns 80.0
134 shower.prefit.ctMin -0.3
135 shower.prefit.DMax_m 50.0
136 shower.prefit.pos_grid_m 10.0
137 shower.prefit.pos_step_m 10.0
138 shower.prefit.time_grid_ns 50.0
139 shower.prefit.time_step_ns 50.0)
140
141PARAMETERS+=(
142 shower.simplex.numberOfPrefits 0
143 shower.simplex.sigma_ns 2.5
144 shower.simplex.TMaxLocal_ns 15.0
145 shower.simplex.TMax_ns +60.0
146 shower.simplex.TMin_ns -60.0
147 shower.simplex.DMax_m 50.0
148 shower.simplex.ctMin 0.0
149 shower.simplex.mestimator 1)
150
151PARAMETERS+=(
152 shower.position.numberOfPrefits 100
153 shower.position.TMax_ns +120.0
154 shower.position.TMin_ns -120.0
155 shower.position.DMax_m 80.0
156 shower.position.Emin_GeV 1.0
157 shower.position.Emax_GeV 200.0
158 shower.position.En 3.0
159 shower.position.R_Hz $RATE_HZ
160 shower.position.TTS_ns 2.0)
161
162PARAMETERS+=(
163 shower.direction.numberOfPrefits 1
164 shower.direction.TMax_ns +30.0
165 shower.direction.TMin_ns -30.0
166 shower.direction.DMax_m 60.0
167 shower.direction.R_Hz $RATE_HZ
168 shower.direction.scanAngle_deg 10.0
169 shower.direction.Emin_GeV 1
170 shower.direction.Emax_GeV 1000
171 shower.direction.En 100)
172
173PARAMETERS+=(
174 shower.fit.numberOfPrefits 4
175 shower.fit.TMax_ns +30.0
176 shower.fit.TMin_ns -30.0
177 shower.fit.DMax_m 60.0
178 shower.fit.DStep_m 5.0
179 shower.fit.R_Hz $RATE_HZ
180 shower.fit.mestimator 3)
181
182eval JORCAReconstruction \
183 -a $DETECTOR \
184 -+${^CALIBRATION} \
185 -T $TMAX_S \
186 -f ${INPUT_FILE} \
187 -o ${OUTPUT_FILE} \
188 -F $PDF \
189 -n ${NUMBER_OF_EVENTS} \
190 -N ${NUMBER_OF_THREADS} \
191 -@ `make_equation PARAMETERS` \
192 -P $PMT \
193 -d $DEBUG \
194 $OPTION
195
196CHECK_EXIT_CODE