6 if [ -
z $JPP_DIR ];
then
7 echo "Variable JPP_DIR undefined."
11 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/
null
24 usage "$script <detector file> <input file> [<lower floor>-<upper floor>]"\
25 "\nInput file corresponds to the output of JKatoomba[.sh]."
32 *) fatal
"Wrong number of arguments."
35 eval `JPrintDetector -
a $DETECTOR -O IDENTIFIER`
41 JAcoustics.sh $DETECTOR_ID
45 source JAcousticsToolkit.sh
54 get_tripods+
$WORKDIR/tripod.txt EMITTERS
55 get_transmitters+
$WORKDIR/transmitter.txt EMITTERS
57 kill_child_processes_at_exit
63 echo -
n "Creating graphics for string $STRING.."
67 for EMITTER
in ${(@
k)EMITTERS};
do
74 for (( FLOOR = $FIRST_FLOOR; $FLOOR <= $LAST_FLOOR; FLOOR += 1 ));
do
81 if [[ -
n "$N" ]] && (( $N >= $NUMBER_OF_ENTRIES ));
then
83 set_array
Q `JPrintQuantiles -
f $WORKDIR/canberra\[$EMITTER\].root:${MODULE} -
Q "0.33 0.50 0.66"`
85 let
"XMIN = $Q[2] - 5.0*($Q[3] - $Q[1])"
86 let
"XMAX = $Q[2] + 5.0*($Q[3] - $Q[1])"
89 -
f $WORKDIR/canberra\[$EMITTER\].root:${MODULE} \
91 -@
"p0 = GetMaximum" \
93 -@
"p2 = 0.5*($Q[3] - $Q[1])" \
102 set_array P2 `JPrintFit -
f $WORKDIR/fit.root:\.\* -@
p2`
104 ((
P1[1] = $P1[1] * 1.0e3))
# [ms]
105 ((P2[1] = abs($P2[1]) * 1.0e3))
# [ms]
107 printf
"%2d %9.6f %9.6f\n" $FLOOR $P1[1] $P2[1] >> $STRING_TXT
124 -
f${^HISTOGRAMS}
":.*" \
127 -
y "$TMIN_MS $TMAX_MS" \
135 echo " -> $WORKDIR/string_${STRING}.$FORMAT"
146 for EMITTER
in ${(@
k)EMITTERS};
do
147 HISTOGRAMS+=(
"$WORKDIR/canberra[${EMITTER}].root")
151 -
f${^HISTOGRAMS}
":.*toa" \
155 set_array
Q `JPrintQuantiles -
f $WORKDIR/sum.root:\.\* -
Q "0.33 0.50 0.66"`
160 -@
"p0 = GetMaximum" \
162 -@
"p2 = 0.5*($Q[3] - $Q[1])" \
166 let
"XMIN = $TMIN_MS * 1.0e-3"
167 let
"XMAX = $TMAX_MS * 1.0e-3"
183 for EMITTER
in ${(@
k)EMITTERS};
do
192 $JPP_DIR/examples/JGizmo/JHistogram1D \
193 -
x "200 $TMIN_MS $TMAX_MS" \
197 $JPP_DIR/examples/JGizmo/JHistogram1D \
205 X_LABEL[
p2]=
"#sigma [ms]"
211 -\>
"$X_LABEL[${P}]" \
212 -\^
"number of modules" \
*fatal Wrong number of arguments esac source JAcousticsToolkit sh mkdir p $WORKDIR post calibration pushd $WORKDIR post calibration post calibration_D0ARCA021 sh $DIR popd set_variable DETECTOR $WORKDIR post calibration detector datx set_variable TRIPOD $WORKDIR post calibration tripod txt set_variable DETECTOR_INITIAL detector_initial datx expand_array RUNS mkdir p $HOMEDIR cd $HOMEDIR JDetectorDB D $DETECTOR_ID r $RUNS[1] V WW o $DETECTOR_INITIAL JEditDetector a $DETECTOR r o detector_tmp datx!eval JPrintDetector a $DETECTOR_INITIAL O SUMMARY
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]
then fatal No hydrophone data file $HYDROPHONE_TXT fi sort gr k
Q(UTCMax_s-UTCMin_s)-livetime_s
clean eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY set_variable STRING
then usage eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID JCanberra sh $DETECTOR $INPUT_FILES[*] $WORKDIR canberra[%\] root source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS kill_child_processes_at_exit attach getModule a $DETECTOR typeset Z STRING typeset Z FLOOR for STRING in $STRINGS[*]
then usage $script< directory A >< directoryB > nIn each there should be a file detector datx and tripod txt
do JPlot2D f $WORKDIR canberra[${EMITTER}\] root
then fatal Wrong number of arguments fi JConvertDetectorFormat a o
then fatal Invalid string $STRING
do echo n Creating graphics for string $STRING HISTOGRAMS
do set_variable OUTPUT_DIRECTORY $WORKDIR T
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
do set_variable STRING_TXT awk
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DEBUG set_variable WORKDIR
then JFileTuna f $INPUT_FILE
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
then usage $script[energy[distance[z of PMT]]] fi case set_variable z
then usage $script< input file >[option[primary[working directory]]] nWhere option can be N
then fatal The output file must have the wildcard in the e g root fi eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
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 JHobbit a $DETECTOR f
do set_variable MODULE getModule a $WORKDIR detector_a datx L $STRING JEditDetector a $WORKDIR detector_a datx M $MODULE setz o $WORKDIR detector_a datx JEditDetector a $WORKDIR detector_b datx M $MODULE setz o $WORKDIR detector_b datx done echo Output stored at $WORKDIR detector_a datx and $WORKDIR tripod_a txt JDrawDetector2D a $WORKDIR detector_a datx a $WORKDIR detector_b datx L BL o detector $FORMAT $BATCH JDrawDetector2D T $WORKDIR tripod_a txt T $WORKDIR tripod_b txt L BL o tripod $FORMAT $BATCH JCompareDetector a $WORKDIR detector_a datx b $WORKDIR detector_b datx o $WORKDIR abc root &dev null for KEY in X Y Z
*fatal Wrong number of arguments esac eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY set_variable FIRST_FLOOR
source $JPP_DIR setenv csh $JPP_DIR &dev null eval JShellParser o a A
then usage eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY kill_child_processes_at_exit attach getModule a $DETECTOR typeset Z STRING typeset Z FLOOR typeset A X_LABEL typeset A YMAX X_LABEL[twist]
then getFile sh $JPP_ARCHIVE $DETECTOR_ID $RUNS[1] $KEY $VERSION $WORKDIR
do set_variable STRING_TXT $WORKDIR string_
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 fatal Invalid detector identifier $DETECTOR_ID fi set_variable RUNSETUPID typeset a RANGE RANGE[1]
#define DEBUG(A)
Message macros.