Jpp - the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
acoustics-fit.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 script=${0##*/}
3 
4 # --------------------------------------------------------------------------------------------
5 #
6 # Steering script for tuning of (x,y,z) positions of the strings and tripods as well as
7 # the (z) positions of the modules.
8 #
9 # --------------------------------------------------------------------------------------------
10 
11 if [ -z $JPP_DIR ]; then
12  echo "Variable JPP_DIR undefined."
13  exit
14 fi
15 
16 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
17 
18 set_variable: DEBUG ACOUSTICS_DEBUG 2
19 set_variable: WORKDIR ACOUSTICS_WORKDIR ./
20 set_variable: FIT ACOUSTICS_FIT 2
21 
22 if do_usage $*; then
23  usage "$script <detector file> <tripod file> <stage> (input file)+"
24 fi
25 
26 if (( $# < 4 )); then
27  fatal "Wrong number of arguments."
28 fi
29 
30 # global variables
31 
33 set_variable TRIPOD_FILE $argv[2]
34 set_variable STAGE $argv[3]
35 set_array INPUT_FILES $argv[4,-1]
36 
37 eval `JPrintDetector -a $DETECTOR -O IDENTIFIER`
38 eval `JPrintDetector -a $DETECTOR -O SUMMARY`
39 
40 source JAcoustics.sh $DETECTOR_ID
41 
42 typeset -A TRIPODS
43 
44 get_tripods $TRIPOD_FILE TRIPODS
45 
46 #unset "TRIPODS[1]" # exclude tripod 1
47 #unset "TRIPODS[${(A)${(k)TRIPODS}[1]}]" # exclude 1st tripod
48 
49 typeset -a CHI2 # chi2(old,new)
50 
51 CHI2=(1.0e10 1.0e10)
52 
53 set_variable TMPDIR $WORKDIR/.$$
54 mkdir -p $TMPDIR
55 set_variable OUTPUT_FILE $TMPDIR/katoomba.root
56 
57 
58 # --------------------------------------------------------------------------------------------
59 # Get center-of-gravity of tripods.
60 #
61 # \return x y z
62 # --------------------------------------------------------------------------------------------
63 function getCenter()
64 {
65  let X_CENTER=0.0
66  let Y_CENTER=0.0
67  let Z_CENTER=0.0
68 
69  for value in "${(@v)TRIPODS}"; do
70 
71  echo $value | read X Y Z
72 
73  let X_CENTER="$X_CENTER + $X"
74  let Y_CENTER="$Y_CENTER + $Y"
75  let Z_CENTER="$Z_CENTER + $Z"
76  done
77 
78  let X_CENTER="$X_CENTER / ${#TRIPODS}"
79  let Y_CENTER="$Y_CENTER / ${#TRIPODS}"
80  let Z_CENTER="$Z_CENTER / ${#TRIPODS}"
81 
82  printf "%12.3f %12.3f %12.3f" $X_CENTER $Y_CENTER $Z_CENTER
83 }
84 
85 
86 # --------------------------------------------------------------------------------------------
87 # Make global fits.
88 #
89 # \return chi2
90 # --------------------------------------------------------------------------------------------
91 function getChi2()
92 {
93  rm -f $OUTPUT_FILE
94 
95  JKatoomba \
96  -a $DETECTOR \
97  -f "$INPUT_FILES[*]" \
98  -o $OUTPUT_FILE \
99  -T $TRIPOD_FILE \
100  -V $WORKDIR/sound_velocity.txt \
101  -M $WORKDIR/mechanics.txt \
102  -@ $WORKDIR/acoustics_fit_parameters.txt \
103  -F $FIT \
104  -u \
105  -d 0 >& /dev/null
106 
107  JPrintResult -f ${OUTPUT_FILE}:chi2 -F GetMean
108 }
109 
110 
111 # --------------------------------------------------------------------------------------------
112 # Fit given coordinate of string position.
113 #
114 # \param 1 string identifier
115 # \param 2 coordinate (X|Y|Z)
116 # \param 3 step
117 # --------------------------------------------------------------------------------------------
118 function fitPositionOfString()
119 {
120  typeset -A BUFFER
121 
122  BUFFER=(X 0.0 Y 0.0 Z 0.0)
123 
124  BUFFER[$2]=$3
125 
126  CHI2[1]=`getChi2`
127 
128  for (( ; $N != $NUMBER_OF_ITERATIONS; ++N )); do
129 
130  JEditDetector -a $DETECTOR -S "$1 add $BUFFER[*]" -o $DETECTOR -d 0 >& /dev/null
131 
132  CHI2[2]=`getChi2`
133 
134  if (( $CHI2[2] >= $CHI2[1] )); then
135 
136  JEditDetector -a $DETECTOR -S "$1 sub $BUFFER[*]" -o $DETECTOR -d 0 >& /dev/null
137 
138  break
139  fi
140 
141  CHI2[1]=$CHI2[2]
142  done
143 
144  for (( ; $N != $NUMBER_OF_ITERATIONS; ++N )); do
145 
146  JEditDetector -a $DETECTOR -S "$1 sub $BUFFER[*]" -o $DETECTOR -d 0 >& /dev/null
147 
148  CHI2[2]=`getChi2`
149 
150  if (( $CHI2[2] >= $CHI2[1] )); then
151 
152  JEditDetector -a $DETECTOR -S "$1 add $BUFFER[*]" -o $DETECTOR -d 0 >& /dev/null
153 
154  break
155  fi
156 
157  CHI2[1]=$CHI2[2]
158  done
159 
160  printf "string %04d %s %6d %7.3f\n" $1 $2 $N $CHI2[1]
161 }
162 
163 
164 # --------------------------------------------------------------------------------------------
165 # Fit given coordinate of tripod position.
166 #
167 # \param 1 tripod identifier
168 # \param 2 coordinate (X|Y|Z)
169 # \param 3 step
170 # --------------------------------------------------------------------------------------------
171 function fitPositionOfTripod()
172 {
173  typeset -A BUFFER
174 
175  BUFFER=(X 0.0 Y 0.0 Z 0.0)
176 
177  BUFFER[$2]=$3
178 
179  CHI2[1]=`getChi2`
180 
181  for (( ; $N != $NUMBER_OF_ITERATIONS; ++N )); do
182 
183  JEditTripod -f $TRIPOD_FILE -T "$1 add $BUFFER[*]" -d 0 >& /dev/null
184 
185  CHI2[2]=`getChi2`
186 
187  if (( $CHI2[2] >= $CHI2[1] )); then
188 
189  JEditTripod -f $TRIPOD_FILE -T "$1 sub $BUFFER[*]" -d 0 >& /dev/null
190 
191  break
192  fi
193 
194  CHI2[1]=$CHI2[2]
195  done
196 
197  for (( ; $N != $NUMBER_OF_ITERATIONS; ++N )); do
198 
199  JEditTripod -f $TRIPOD_FILE -T "$1 sub $BUFFER[*]" -d 0 >& /dev/null
200 
201  CHI2[2]=`getChi2`
202 
203  if (( $CHI2[2] >= $CHI2[1] )); then
204 
205  JEditTripod -f $TRIPOD_FILE -T "$1 add $BUFFER[*]" -d 0 >& /dev/null
206 
207  break
208  fi
209 
210  CHI2[1]=$CHI2[2]
211  done
212 
213  printf "tripod %2d %s %6d %7.3f\n" $1 $2 $N $CHI2[1]
214 }
215 
216 
217 # --------------------------------------------------------------------------------------------
218 # Fit module z-position.
219 #
220 # \param 1 string identifier
221 # \param 2 floor
222 # \param 3 step
223 # --------------------------------------------------------------------------------------------
224 function fitPositionOfModule()
225 {
226  typeset -A BUFFER
227 
228  BUFFER=(X 0.0 Y 0.0 Z $3)
229 
230  set_variable NUMBER_OF_STEPS 10 # limit number of steps
231  set_variable MODULE `getModule -a $DETECTOR -L "$1 $2"`
232 
233  CHI2[1]=`getChi2`
234 
235  for (( i=0 ; $i != $NUMBER_OF_STEPS && $N != $NUMBER_OF_ITERATIONS; ++i, ++N )); do
236 
237  JEditDetector -a $DETECTOR -M "$MODULE add $BUFFER[*]" -o $DETECTOR -d 0 >& /dev/null
238 
239  CHI2[2]=`getChi2`
240 
241  if (( $CHI2[2] >= $CHI2[1] )); then
242 
243  JEditDetector -a $DETECTOR -M "$MODULE sub $BUFFER[*]" -o $DETECTOR -d 0 >& /dev/null
244 
245  break
246  fi
247 
248  CHI2[1]=$CHI2[2]
249  done
250 
251  for (( i=0 ; $i != $NUMBER_OF_STEPS && $N != $NUMBER_OF_ITERATIONS; ++i, ++N )); do
252 
253  JEditDetector -a $DETECTOR -M "$MODULE sub $BUFFER[*]" -o $DETECTOR -d 0 >& /dev/null
254 
255  CHI2[2]=`getChi2`
256 
257  if (( $CHI2[2] >= $CHI2[1] )); then
258 
259  JEditDetector -a $DETECTOR -M "$MODULE add $BUFFER[*]" -o $DETECTOR -d 0 >& /dev/null
260 
261  break
262  fi
263 
264  CHI2[1]=$CHI2[2]
265  done
266 
267  printf "module %04d.%02d %6d %7.3f\n" $1 $2 $N $CHI2[1]
268 }
269 
270 
271 #
272 # Main function.
273 #
275 
276 getCenter | read X_CENTER Y_CENTER Z_CENTER
277 
278 case $STAGE in
279 
280  1) # ------------------------------------------------------------------------------------
281 
282  set_variable NUMBER_OF_ITERATIONS 500
283  set_variable EPSILON 5.0E-4
284 
285  cat>acoustics_fit_parameters.txt<<EOF # fix tilt angles
286 Tmax_s = 600.0;
287 Nmin = 3;
288 sigma_s = 250.0e-6;
289 stdev = 10.0;
292 EOF
293 
294  for DX_M in 0.5 0.2; do # fit (x,y,z) positions of strings and tripods
295 
296  for (( N=0; $N < $NUMBER_OF_ITERATIONS; ++N )); do
297 
298  CHI2[3]=$CHI2[1]
299 
300  for STRING in $STRINGS[*]; do
301  fitPositionOfString $STRING X $DX_M
302  fitPositionOfString $STRING Y $DX_M
303  fitPositionOfString $STRING Z $DX_M
304  done
305 
306  for TRIPOD in ${(k)TRIPODS}; do
307  fitPositionOfTripod $TRIPOD X $DX_M
308  fitPositionOfTripod $TRIPOD Y $DX_M
309  fitPositionOfTripod $TRIPOD Z $DX_M
310  done
311 
312  if (( $CHI2[3] - $CHI2[1] < $EPSILON )); then
313  break
314  fi
315  done
316 
317  getCenter | read X Y Z
318 
319  let X="$X - $X_CENTER"
320  let Y="$Y - $Y_CENTER"
321  let Z="$Z - $Z_CENTER"
322 
323  JEditTripod -f $TRIPOD_FILE -T "-1 sub $X $Y $Z" -d 0 >& /dev/null
324  JEditDetector -a $DETECTOR -S "-1 sub $X $Y $Z" -o $DETECTOR -d 0 >& /dev/null
325 
326  JConvertDetectorFormat -a $DETECTOR -o $DETECTOR -r -d 0 >& /dev/null
327 
328  if (( $N >= $NUMBER_OF_ITERATIONS )); then
329  printf "warning: reached maximum number of iterations %d - converenge %7.3f\n" $N $(($CHI2[3] - $CHI2[1]))
330  fi
331  done
332 
333  set_variable NUMBER_OF_ITERATIONS 1000
334  set_variable EPSILON 5.0E-4
335 
336  for DX_M in 0.1; do # fit (z) positions of modules
337 
338  for (( N=0; $N < $NUMBER_OF_ITERATIONS; ++N )); do
339 
340  CHI2[3]=$CHI2[1]
341 
342  for STRING in $STRINGS[*]; do
343  for (( FLOOR = 1; $FLOOR <= 18; FLOOR += 1 )); do
344  fitPositionOfModule $STRING $FLOOR $DX_M
345  done
346  done
347 
348  if (( $CHI2[3] - $CHI2[1] < $EPSILON )); then
349  break
350  fi
351  done
352 
353  JConvertDetectorFormat -a $DETECTOR -o $DETECTOR -r -d 0 >& /dev/null
354 
355  if (( $N >= $NUMBER_OF_ITERATIONS )); then
356  printf "warning: reached maximum number of iterations %d - converenge %7.3f\n" $N $(($CHI2[3] - $CHI2[1]))
357  fi
358  done
359  ;;
360 
361  2) # ------------------------------------------------------------------------------------
362 
363  set_variable NUMBER_OF_ITERATIONS 500
364  set_variable EPSILON 5.0E-4
365 
366  cat>acoustics_fit_parameters.txt<<EOF
367 Tmax_s = 600.0;
368 Nmin = 3;
369 sigma_s = 100.0e-6;
370 stdev = 10.0;
371 mestimator = 0;
372 fixStrings = 0;
373 EOF
374 
375  for DX_M in 0.2; do # fit (x,y,z) positions of strings and tripods
376 
377  for (( N=0; $N < $NUMBER_OF_ITERATIONS; ++N )); do
378 
379  CHI2[3]=$CHI2[1]
380 
381  for STRING in $STRINGS[*]; do
382  fitPositionOfString $STRING X $DX_M
383  fitPositionOfString $STRING Y $DX_M
384  fitPositionOfString $STRING Z $DX_M
385  done
386 
387  for TRIPOD in ${(k)TRIPODS}; do
388  fitPositionOfTripod $TRIPOD X $DX_M
389  fitPositionOfTripod $TRIPOD Y $DX_M
390  fitPositionOfTripod $TRIPOD Z $DX_M
391  done
392 
393  if (( $CHI2[3] - $CHI2[1] < $EPSILON )); then
394  break
395  fi
396  done
397 
398  getCenter | read X Y Z
399 
400  let X="$X - $X_CENTER"
401  let Y="$Y - $Y_CENTER"
402  let Z="$Z - $Z_CENTER"
403 
404  JEditTripod -f $TRIPOD_FILE -T "-1 sub $X $Y $Z" -d 0 >& /dev/null
405  JEditDetector -a $DETECTOR -S "-1 sub $X $Y $Z" -o $DETECTOR -d 0 >& /dev/null
406 
407  JConvertDetectorFormat -a $DETECTOR -o $DETECTOR -r -d 0 >& /dev/null
408 
409  if (( $N >= $NUMBER_OF_ITERATIONS )); then
410  warning "reached maximum number of iterations $N - converenge $(($CHI2[3] - $CHI2[1]))"
411  fi
412  done
413 
414  set_variable NUMBER_OF_ITERATIONS 1000
415  set_variable EPSILON 5.0E-4
416 
417  for DX_M in 0.10; do # fit (z) positions of modules and (x,y) positions of strings
418 
419  for (( N=0; $N < $NUMBER_OF_ITERATIONS; ++N )); do
420 
421  CHI2[3]=$CHI2[1]
422 
423  for STRING in $STRINGS[*]; do
424 
425  for (( FLOOR = 1; $FLOOR <= 18; FLOOR += 1 )); do
426  fitPositionOfModule $STRING $FLOOR $DX_M
427  done
428 
429  fitPositionOfString $STRING X $DX_M
430  fitPositionOfString $STRING Y $DX_M
431  done
432 
433  if (( $CHI2[3] - $CHI2[1] < $EPSILON )); then
434  break
435  fi
436  done
437 
438  JConvertDetectorFormat -a $DETECTOR -o $DETECTOR -r -d 0 >& /dev/null
439 
440  if (( $N >= $NUMBER_OF_ITERATIONS )); then
441  warning "reached maximum number of iterations $N - converenge $(($CHI2[3] - $CHI2[1]))"
442  fi
443  done
444  ;;
445 
446  3) # ------------------------------------------------------------------------------------
447 
448  set_variable NUMBER_OF_ITERATIONS 500
449  set_variable EPSILON 5.0E-4
450 
451  cat>acoustics_fit_parameters.txt<<EOF
452 Tmax_s = 600.0;
453 Nmin = 3;
454 sigma_s = 50.0e-6;
455 stdev = 10.0;
456 mestimator = 0;
457 fixStrings = 0;
458 EOF
459 
460  for DX_M in 0.10 0.05; do # fit (x,y,z) positions of strings and tripods
461 
462  for (( N=0; $N < $NUMBER_OF_ITERATIONS; ++N )); do
463 
464  CHI2[3]=$CHI2[1]
465 
466  for STRING in $STRINGS[*]; do
467  fitPositionOfString $STRING X $DX_M
468  fitPositionOfString $STRING Y $DX_M
469  fitPositionOfString $STRING Z $DX_M
470  done
471 
472  for TRIPOD in ${(k)TRIPODS}; do
473  fitPositionOfTripod $TRIPOD X $DX_M
474  fitPositionOfTripod $TRIPOD Y $DX_M
475  fitPositionOfTripod $TRIPOD Z $DX_M
476  done
477 
478  if (( $CHI2[3] - $CHI2[1] < $EPSILON )); then
479  break
480  fi
481  done
482 
483  getCenter | read X Y Z
484 
485  let X="$X - $X_CENTER"
486  let Y="$Y - $Y_CENTER"
487  let Z="$Z - $Z_CENTER"
488 
489  JEditTripod -f $TRIPOD_FILE -T "-1 sub $X $Y $Z" -d 0 >& /dev/null
490  JEditDetector -a $DETECTOR -S "-1 sub $X $Y $Z" -o $DETECTOR -d 0 >& /dev/null
491 
492  JConvertDetectorFormat -a $DETECTOR -o $DETECTOR -r -d 0 >& /dev/null
493 
494  if (( $N >= $NUMBER_OF_ITERATIONS )); then
495  warning "reached maximum number of iterations $N - converenge $(($CHI2[3] - $CHI2[1]))"
496  fi
497  done
498 
499  set_variable NUMBER_OF_ITERATIONS 1000
500  set_variable EPSILON 5.0E-4
501 
502  for DX_M in 0.05; do # fit (z) positions of modules and (x,y) positions of strings
503 
504  for (( N=0; $N < $NUMBER_OF_ITERATIONS; ++N )); do
505 
506  CHI2[3]=$CHI2[1]
507 
508  for STRING in $STRINGS[*]; do
509 
510  for (( FLOOR = 1; $FLOOR <= 18; FLOOR += 1 )); do
511  fitPositionOfModule $STRING $FLOOR $DX_M
512  done
513 
514  fitPositionOfString $STRING X $DX_M
515  fitPositionOfString $STRING Y $DX_M
516  done
517 
518  if (( $CHI2[3] - $CHI2[1] < $EPSILON )); then
519  break
520  fi
521  done
522 
523  JConvertDetectorFormat -a $DETECTOR -o $DETECTOR -r -d 0 >& /dev/null
524 
525  if (( $N >= $NUMBER_OF_ITERATIONS )); then
526  warning "reached maximum number of iterations $N - converenge $(($CHI2[3] - $CHI2[1]))"
527  fi
528  done
529  ;;
530 
531  *) # ------------------------------------------------------------------------------------
532 
533  fatal "invalid stage $STAGE (possible stages: 1, 2, 3)"
534  ;;
535 esac
536 
537 mkdir -p $WORKDIR/$STAGE
538 
540 cp $TRIPOD_FILE $WORKDIR/$STAGE
541 
542 timer_stop
543 timer_print
544 
545 rm -f acoustics_fit_parameters.txt
546 
547 source JAcoustics.sh $DETECTOR_ID
548 
549 rm -rf $TMPDIR
then fatal No hydrophone data file $HYDROPHONE_TXT fi sort gr k
do $JPP JMEstimator M
Definition: JMEstimator.sh:37
fixStrings
clean eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY set_variable STRING
bool read(Vec &v, std::istream &is)
Read a Vec(tor) from a stream.
Definition: io_ascii.hh:141
then JPlot1D f $WORKDIR postfit[prefit\] root
stdev
do JCanberra a $DETECTOR f $INPUT_FILE o $WORKDIR canberra[${EMITTER}\] root T $WORKDIR tripod txt V $WORKDIR sound_velocity txt M $WORKDIR mechanics txt E $EMITTER d $DEBUG!done kill_child_processes_at_exit attach getModule a $DETECTOR typeset Z STRING typeset Z FLOOR set_variable FIRST_FLOOR for STRING in $STRINGS[*]
Definition: JCanberra.sh:60
mestimator
exit
Definition: JPizza.sh:36
data_type r[M+1]
Definition: JPolint.hh:742
then fatal Wrong number of arguments fi set_variable STRING $argv[1] set_variable DETECTORXY_TXT $WORKDIR $DETECTORXY_TXT tail read X Y CHI2 RMS printf optimum n $X $Y $CHI2 $RMS awk v Y
then JPizza f
Definition: JPizza.sh:46
then echo
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 $
do for((RUN=${RANGE%%-*};$RUN<=${RANGE##*-};RUN+=1))
then fatal Invalid string $STRING
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
Definition: JAcoustics.sh:20
do set_variable OUTPUT_DIRECTORY $WORKDIR T
then printf warning
then break fi done getCenter read X Y Z let X
do $DIR JTransitTime o
Definition: JTransitTime.sh:44
then awk F
* usage
set_array INPUT_FILES
sigma_s
*set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2,-2] set_variable OUTPUT_FILE $argv[-1]
Definition: JDomino.sh:39
do set_variable SIGMA_NS set_variable OUTLIERS set_variable OUTPUT_FILE matrix[${ALPHA_DEG}\deg\] root $JPP JMatrixNZ a $DETECTOR f $INPUT_FILE o $OUTPUT_FILE S
Definition: JMatrixNZ.sh:56
&set_variable OUTPUT_FILE
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:45
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
then usage $script< input_file >< detector_file > fi set_variable OUTPUT_DIR set_variable SELECTOR JDAQTimesliceL1 set_variable DEBUG case set_variable DEBUG
then display $WORKDIR
Definition: plot-Domino.sh:127
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DEBUG set_variable WORKDIR $JPP_DATA set_variable MAKE_PDF set_variable MERGE_PDF set_variable MAKE_CDF set_variable CLEAN set_variable BACKGROUND set_variable WGET set_variable RMAX_M set_variable absorptionLengthFactor set_variable scatteringLengthFactor BUFFER
Definition: JMakePDF.sh:36
do((XR=$XL+$DX)) LABEL
then fatal No tripod file $TRIPOD fi source JAcoustics sh CHECK_EXIT_CODE typeset A TRIPODS get_tripods $TRIPOD TRIPODS let X_CENTER
Definition: JFootprint.sh:44
then cp
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DEBUG set_variable WORKDIR tmp set_variable JDAQ_TIMESLICE JDAQTimeslice if do_usage *then usage $script< detector file >< inputfile > fi case set_variable WORKDIR
Definition: JLegolas.sh:23
set_variable DETECTOR
double u[N+1]
Definition: JPolint.hh:739
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable TRIPOD_FILE $argv[2] set_variable STAGE $argv[3] set_array INPUT_FILES $argv[4,-1] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY source JAcoustics sh $DETECTOR_ID typeset A TRIPODS get_tripods $TRIPOD_FILE TRIPODS typeset a CHI2 CHI2
double getChi2(const double P)
Get chi2 corresponding to given probability.
Definition: JFitToolkit.hh:70
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY source JAcoustics sh $DETECTOR_ID CHECK_EXIT_CODE typeset A TRIPODS get_tripods $WORKDIR tripod txt TRIPODS for EMITTER in
Definition: JCanberra.sh:38
then usage $script[input file[working directory[option]]] nWhere option can be N
Definition: JMuonPostfit.sh:35
script
Definition: JAcoustics.sh:2
*fatal invalid stage $STAGE(possible stages:1, 2, 3)"
Nmin
then fatal Invalid tripod $TRIPOD
source $JPP_DIR setenv csh $JPP_DIR eval JShellParser o a A
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null
const JModule & getModule(const JDetector &detector, const JModuleLocation &location)
find module with a given string and floor number
then usage $script[input file[working directory[option]]] nWhere option can be E
Definition: JMuonPostfit.sh:35
esac done
Definition: JAddHDE.sh:21
do alias $i