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 <source directory> [user directory]"\
 
   23           "\nThe source directory corresponds to a pre-calibrated D0ARCA009 detector."\
 
   24           "\nThe user directory should be specified when this script is submitted in a batch queue." 
   33     *)  fatal 
"Wrong number of arguments." 
   49 if [[ ! -
f $DETECTOR_INITIAL ]]; 
then 
   58 if [[ ! -
f $TRIPOD_INITIAL ]]; 
then 
   60     cat>$TRIPOD_INITIAL<<EOF
 
   61 # Very preliminary acoustic emitter positions from survey
 
   62 3   +587848.700  +4016749.700  -3450.467
 
   63 7   +587198.628  +4016228.693  -3433.306
 
   64 8   +588257.896  +4017034.442  -3457.240
 
   65 9   +587646.419  +4017109.956  -3456.980
 
   66 10  +587763.722  +4017253.398  -3453.894
 
   75 eval `JPrintDetector -
a $DETECTOR_INITIAL -O SUMMARY`;  FINAL_STRINGS=(
$STRINGS[*])
 
   76 eval `JPrintDetector -
a detector_tmp.datx -O SUMMARY`;  FIXED_STRINGS=(
$STRINGS[*])
 
   80     # Apply modifications.
 
   83         -
a $DETECTOR_INITIAL     \
 
   87     eval `JPrintDetector -
a detector.datx -O SUMMARY`
 
   95             -M 
"$MODULE setz -11.7"  \
 
  104 source JAcousticsToolkit.sh
 
  108 get_tripods  $TRIPOD_INITIAL  TRIPODS;  FINAL_TRIPODS=(${(
k)TRIPODS[*]})
 
  109 get_tripods  
$TRIPOD          TRIPODS;  FIXED_TRIPODS=(${(
k)TRIPODS[*]})
 
  111 if [[ ! -
f tripod.txt ]]; 
then 
  113     cp -p  $TRIPOD_INITIAL  tripod.txt
 
  115     JEditTripod   -
f tripod.txt  -
r "${FIXED_TRIPODS}" -
o tripod.txt
 
  116     JMergeTripod  -
f tripod.txt  -
f $TRIPOD            -
o tripod.txt
 
  117     JEditTripod   -
f tripod.txt  -
k "${FINAL_TRIPODS}" -
o tripod.txt
 
  126 JAcoustics.sh $DETECTOR_ID
 
  128 cat>acoustics_trigger_parameters.txt<<EOF
 
  148 source $JPP_DIR/examples/JAcoustics/acoustics-fit-toolkit.sh
 
  154 fixStrings  $FIXED_STRINGS[*]
 
  155 fixTripods  $FIXED_TRIPODS[*]
 
  158 stage_a  0  2  250.0e-6  0.5   1.0  20  >&  
stage-1
A.log;  backup 
$HOMEDIR/1
A;  timer_lap
 
  159 stage_b  0  2  250.0e-6  0.002 0.2   0  >&  
stage-1B.log;  backup 
$HOMEDIR/1B;  timer_lap
 
  160 stage_c  0  2  250.0e-6  0.2        20  >&  
stage-1
C.log;  backup 
$HOMEDIR/1
C;  timer_lap
 
  161 stage_a  2  0  100.0e-6  0.2   0.4  20  >&  
stage-2
A.log;  backup 
$HOMEDIR/2
A;  timer_lap
 
  162 stage_c  2  0  100.0e-6  0.2        20  >&  
stage-2
C.log;  backup 
$HOMEDIR/2
C;  timer_lap
 
  166 stage_a  2  0  100.0e-6  0.2   0.4  20  >&  
stage-2
a.log;  backup 
$HOMEDIR/2
a;  timer_lap
 
  167 stage_c  2  0  100.0e-6  0.2        20  >&  
stage-2
c.log;  backup 
$HOMEDIR/2
c;  timer_lap
 
  168 stage_a  2  0   50.0e-6  0.2   0.4  20  >&  
stage-3
a.log;  backup 
$HOMEDIR/3
a;  timer_lap
 
  169 stage_c  2  0   50.0e-6  0.2        20  >&  
stage-3
c.log;  backup 
$HOMEDIR/3
c;  timer_lap
 
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DETECTOR_ID set_array RUNS if do_usage *then usage $script< source directory >[user directory] nThe source directory corresponds to a pre calibrated D0ARCA009 detector fi case set_variable DIR
 
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 JLigier sh continue fi cat
 
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O SUMMARY JPrintDAQHeader f $INPUT_FILE read A DAQ_HEADER set_variable DETECTOR_ID
 
o $QUALITY_ROOT d $DEBUG!CHECK_EXIT_CODE 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
 
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< source directory >[user directory] nThe source directory corresponds to a pre calibrated D0ARCA006 detector nThe user directory should be specified when this script is submitted in a batch queue fi set_variable WORKDIR pwd set_variable HOMEDIR $WORKDIR case set_variable HOMEDIR
 
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[*]
 
static const double C
Physics constants. 
 
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 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
 
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
 
$WORKDIR ev_configure_dqsimulator txt echo process $DQ_SIMULATOR $i $SOURCE_HOST[$index] csh c(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&($DQ_SIMULATOR\-u\$NAME\$\-H\$SERVER\$\-M\$LOGGER\$\-d $DEBUG</dev/null > &/dev/null &))'
 
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
 
const JModule & getModule(const JDetector &detector, const JModuleLocation &location)
find module with a given string and floor number