4 if [ -z $JPP_DIR ];
then
5 echo "Variable JPP_DIR undefined."
9 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/
null
12 usage "$script <detector file> <input file>+ <string number>+"
16 fatal
"Not enough arguments."
31 set_variable FORMULA "[0] + ([3]*( ([1]^(2*[4])) / (([1]*[1] + (2^(1/[4])-1) * ((x-[2])*(x-[2])) ) )))^[4]"
49 set_variable REDUCED_DETECTOR reduced.detx
51 set_variable GRAPH_TXT graph-time.txt
52 set_variable GRAPH_ROOT graph-time.root
53 set_variable FIT_TXT graph-fit.txt
54 set_variable FIT_ROOT graph-fit.root
56 rm -f ${WORKDIR}/${REDUCED_DETECTOR}
57 rm -f ${WORKDIR}/${GRAPH_TXT}
62 -o ${WORKDIR}/${REDUCED_DETECTOR} --!
64 for TIME_OFFSET_NS in -200 -100 -20 -5 0 +5 +20 +100 +200; do
67 -a ${WORKDIR}/${REDUCED_DETECTOR} \
68 -s "$STRING add $TIME_OFFSET_NS
" \
69 -o ${WORKDIR}/detector.detx --!
71 set_variable OUTPUT_FILE JTriggerProcessor.root
73 rm -f ${WORKDIR}/${OUTPUT_FILE}
76 -a ${WORKDIR}/detector.detx \
78 -C ${JDAQ_TIMESLICE} \
79 -@ ${TRIGGER_PARAMETERS} \
80 -o ${WORKDIR}/${OUTPUT_FILE} --!
82 set_variable N_TRIGGERS `JPrintTree -f ${WORKDIR}/${OUTPUT_FILE} | awk '/KM3NETDAQ::JDAQEvent/ { print $3} '`
84 printf "%5.3f %12.3f\n
" ${TIME_OFFSET_NS} ${N_TRIGGERS} >> ${WORKDIR}/${GRAPH_TXT}
89 -f ${WORKDIR}/${GRAPH_TXT} \
90 -o ${WORKDIR}/${GRAPH_ROOT}
93 -f ${WORKDIR}/${GRAPH_ROOT}:\.\* \
94 -o ${WORKDIR}/${FIT_ROOT} \
101 -d1 >> ${WORKDIR}/${FIT_TXT} 2>&1
103 set_variable OPTIMAL_OFFSET `JTestFit -f ${WORKDIR}/${FIT_ROOT}:${GRAPH_TXT} -@ "p2 -1000 1000
" -d 3 | awk '/p2/ {print $2}'`
107 -s "$STRING add $OPTIMAL_OFFSET
" \
110 OUTPUT_OFFSETS="${OUTPUT_OFFSETS} JEditDetector -
a ${
DETECTOR} -
S \
"$STRING add $OPTIMAL_OFFSET\" -o ${WORKDIR}/${OUTPUT_DETECTOR} --! \n"
114 echo -e
"${OUTPUT_OFFSETS}"
do set_variable START_INDEX_STRING((START_INDEX_STRING-1)) done set_variable DETECTOR $
do REMOVE[$REMOVE[(i)$STRING]]
*fatal Wrong number of arguments esac check_input_file $INPUT_FILE for TIMESLICE in JDAQTimeslice JDAQTimesliceL0 JDAQTimesliceL1 JDAQTimesliceL2 JDAQTimesliceSN
clean eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY set_variable STRING
*fatal Wrong number of arguments esac TRIGGER_PARAMETERS
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 H $WORKDIR hydrophone txt E $EMITTER $DISABLE d $DEBUG!done kill_child_processes_at_exit attach getModule a $DETECTOR typeset Z STRING typeset Z FLOOR for STRING in $STRINGS[*]
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
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR if do_usage *then usage $script[(input file)+] fi set_variable DEBUG set_variable WORKDIR TMPDIR
set_variable NUMBER_OF_ITERATIONS set_variable EPSILON cat acoustics_fit_parameters txt<< EOF $CONFIGURATION[*]Nmin=3;sigma_s=100.0e-6;stdev=10.0;mestimator=0;fixStrings=0;EOF for STRING in $STRINGS[*];do#fit stretching and(z) position of given string set_variable DETECTOR_TMP ${TMPDIR:-/tmp}/detector_A.datx JEditDetector-a $DETECTOR-o $DETECTOR_TMP-r $STRING JEditDetector-a $DETECTOR-o $DETECTOR-k $STRING for MUL in 0.005 0.001;do DX_M=0.2 for((N=0;$N< $NUMBER_OF_ITERATIONS;++N));do CHI2[3]=$CHI2[1] fitPositionOfString $STRING Z $DX_M fitStretchingOfString $STRING $MUL if(($CHI2[3]-$CHI2[1]< $EPSILON));then break fi done if(($N >=$NUMBER_OF_ITERATIONS));then printf"warning: reached maximum number of iterations %d - converenge %7.3f\n"$N $(($CHI2[3]-$CHI2[1])) fi done JMergeDetector-a $DETECTOR-a $DETECTOR_TMP-o $DETECTOR rm-f $DETECTOR_TMP JConvertDetectorFormat-a $DETECTOR-o $DETECTOR-r-d 0 > &dev null done
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DEBUG set_variable WORKDIR
then usage $script[distance] fi case set_variable R
do sput $STRING $FLOOR sget MODULE INPUT_FILES
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
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
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null