4 # --------------------------------------------------------------------------------------------
6 # Steering script for the global-fit-of-global-fits procedure of the D0ARCA020 (116) detector.
8 # --------------------------------------------------------------------------------------------
10 if [ -z $JPP_DIR ];
then
11 echo "Variable JPP_DIR undefined."
15 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/
null
18 set_array
RUNS 12785-12792
22 usage "$script <detector file> <tripod file> [user directory]"\
23 "\nThe user directory should be specified when this script is submitted in a batch queue."\
24 "\nThe detector file and tripod file correspond to a pre-calibrated D0ARCA009 detector."
34 *) fatal
"Wrong number of arguments."
48 if [[ ! -
f $DETECTOR_INITIAL ]];
then
57 if [[ ! -
f $TRIPOD_INITIAL ]];
then
59 cat>$TRIPOD_INITIAL<<EOF
60 # Very preliminary acoustic emitter positions from survey
61 3 +587848.700 +4016749.700 -3450.467
62 7 +587198.628 +4016228.693 -3433.306
63 8 +588257.896 +4017034.442 -3457.240
64 9 +587646.419 +4017109.956 -3456.980
65 10 +587763.722 +4017253.398 -3453.894
69 eval `JPrintDetector -
a $DETECTOR_INITIAL -O SUMMARY`; FINAL_STRINGS=(
$STRINGS[*])
74 # Apply modifications.
77 -
a $DETECTOR_INITIAL \
85 # The
string 19 must be removed from the FIXED_STRINGS array
86 # since it has not been optimized
in the previous pre-calibration.
89 FIXED_STRINGS=(${
STRINGS[*]:|EXCLUDED_STRINGS})
92 source JAcousticsToolkit.sh
96 get_tripods $TRIPOD_INITIAL TRIPODS; FINAL_TRIPODS=(${(
k)TRIPODS[*]})
99 if [[ ! -
f tripod.txt ]];
then
101 cp -p $TRIPOD_INITIAL tripod.txt
103 JEditTripod -
f tripod.txt -
r "${FIXED_TRIPODS}" -
o tripod.txt
104 JMergeTripod -
f tripod.txt -
f $TRIPOD -
o tripod.txt
105 JEditTripod -
f tripod.txt -
k "${FINAL_TRIPODS}" -
o tripod.txt
114 JAcoustics.sh $DETECTOR_ID
116 cat>acoustics_trigger_parameters.txt<<EOF
135 cp -p
$HOMEDIR/{acoustics_fit_parameters,acoustics_trigger_parameters,disable,hydrophone,mechanics,sound_velocity,tripod,waveform}.txt
$WORKDIR
138 source $JPP_DIR/examples/JAcoustics/acoustics-fit-toolkit.sh
147 fixStrings $FIXED_STRINGS[*]
148 fixTripods $FIXED_TRIPODS[*]
150 stage_0 0.5 0 >& stage-0.log; backup
$HOMEDIR/0; timer_lap
151 stage_1a 0.5 1.0 20 >& stage-1
a.log; backup
$HOMEDIR/1
a; timer_lap
152 stage_1b 0.3 20 >& stage-1b.log; backup
$HOMEDIR/1b; timer_lap
153 stage_2a 0.3 0.6 20 >& stage-2
A.log; backup
$HOMEDIR/2
A; timer_lap
154 stage_2b 0.3 20 >& stage-2B.log; backup
$HOMEDIR/2B; timer_lap
158 stage_2a 0.3 0.6 20 >& stage-2
a.log; backup
$HOMEDIR/2
a; timer_lap
159 stage_2b 0.3 20 >& stage-2b.log; backup
$HOMEDIR/2b; timer_lap
160 stage_3a 0.2 0.4 20 >& stage-3
a.log; backup
$HOMEDIR/3
a; timer_lap
161 stage_3b 0.2 20 >& stage-3b.log; backup
$HOMEDIR/3b; timer_lap
then fatal No hydrophone data file $HYDROPHONE_TXT fi sort gr k
Q(UTCMax_s-UTCMin_s)-livetime_s
then JLigier sh continue fi cat
o $QUALITY_ROOT d $DEBUG!JPlot1D f
then usage $script< detector specific pre-calibration script >< option > nAuxiliary script to make scan of pre stretching of detector strings(see JEditDetector)." "\nPossible options
V(JDAQEvent-JTriggerReprocessor)*1.0/(JDAQEvent+1.0e-10)
then fatal Wrong number of arguments fi JConvertDetectorFormat a o
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[*]
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 JPrintDAQHeader f $INPUT_FILE d read DETECTOR_ID RUN FRAME_INDEX TIMESLICE_START set_variable OUTPUT_FILE $WORKDIR KM3NeT_
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null if do_usage *then usage $script< detector identifier > fi case set_variable DETECTOR_ID
then fatal Detector file should be binary format fi eval JPrintDetector a $DETECTOR O IDENTIFIER typeset a INPUT_FILES for RANGE in $RUNS[*]
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
case $OPTION in clean clean
do debug $__line__ echo $__line__ read URL DETECTOR RUNS RUNS
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DEBUG set_variable WORKDIR
do sput $STRING $FLOOR sget MODULE INPUT_FILES
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DETECTOR_ID set_array RUNS set_variable MUL if do_usage *then usage $script< detector file >< tripodfile > nThe user directory should be specified when this script is submitted in a batch queue nThe detector file and tripod file correspond to a pre calibrated D0ARCA006 detector fi set_variable WORKDIR pwd set_variable HOMEDIR $WORKDIR case set_variable HOMEDIR
set_array INPUT_FILES argv[2,$((START_INDEX_STRING-1))] set_array STRINGS
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 error Missing CDF files error Run
do set_variable DETECTOR_TXT $WORKDIR detector
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 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
source $JPP_DIR setenv csh $JPP_DIR &dev null eval JShellParser o a A
do echo Generating $dir eval D
then fatal Invalid tripod $TRIPOD
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null