7# ------------------------------------------------------------------------------------------
 
    9#                         Script to run the JPP Track Reconstruction Chain for ORCA.
 
   11# ------------------------------------------------------------------------------------------
 
   13if [ -z $JPP_DIR ]; then
 
   14    echo "Variable JPP_DIR undefined."
 
   18source $JPP_DIR/setenv.sh $JPP_DIR
 
   19source $JPP_DIR/externals/km3net-dataformat/definitions/reconstruction.sh
 
   21set_variable:  DEBUG             RECONSTRUCTION_DEBUG                1
 
   22set_variable:  PDF               RECONSTRUCTION_PDF                  $JPP_DATA/J%p.dat
 
   23set_variable:  SUFFIX            RECONSTRUCTION_SUFFIX               jmuon
 
   24set_variable:  NUMBER_OF_EVENTS  RECONSTRUCTION_NUMBER_OF_EVENTS     $((2**31))
 
   25set_variable:  NUMBER_OF_THREADS RECONSTRUCTION_NUMBER_OF_THREADS    0
 
   26set_variable+  OVERWRITE         RECONSTRUCTION_OVERWRITE            1
 
   27set_variable:  TMAX_S            RECONSTRUCTION_TMAX_S               100
 
   30    usage "$script <detector file> <input file> <output file> <PMT parameters file> [(calibration file)+]"
 
   34    fatal "Wrong number of arguments."
 
   37set_variable DETECTOR        $argv[1]
 
   38set_variable INPUT_FILE      $argv[2]
 
   39set_variable OUTPUT_FILE     $argv[3]
 
   40set_variable PMT             $argv[4]
 
   41set_array    CALIBRATION     $argv[5,-1]
 
   43if [[ ! "$OUTPUT_FILE" == *"%"* ]]; then
 
   44  fatal "The output file must have the wildcard % in the name, e.g. %.root"
 
   48typeset -a APPLICATIONS
 
   53if [[ "$OVERWRITE" == 1 ]]; then
 
   55        ${OUTPUT_FILE/\%/jprefit}         \
 
   56        ${OUTPUT_FILE/\%/jsimplex}        \
 
   57        ${OUTPUT_FILE/\%/jstart}          \
 
   58        ${OUTPUT_FILE/\%/jgandalf}        \
 
   59        ${OUTPUT_FILE/\%/jstart2}         \
 
   60        ${OUTPUT_FILE/\%/jenergy}         \
 
   61        ${OUTPUT_FILE/\%/jhistory}        \
 
   62        ${OUTPUT_FILE/\%/${SUFFIX}}       \
 
   63        ${OUTPUT_FILE/\%/${SUFFIX}.offline}
 
   67if (( ${#CALIBRATION} != 0 )); then
 
   68    getMechanics.sh  $DETECTOR
 
   72# ------------------------------------------------------------------------------------------
 
   74# ------------------------------------------------------------------------------------------
 
   96    -o ${OUTPUT_FILE/\%/jprefit}   \
 
   97    -n ${NUMBER_OF_EVENTS}         \
 
   98    -N ${NUMBER_OF_THREADS}        \
 
   99    -@ `make_equation PARAMETERS`  \
 
  104APPLICATIONS+=$JMUONPREFIT
 
  110# ------------------------------------------------------------------------------------------
 
  112# ------------------------------------------------------------------------------------------
 
  127    -f ${OUTPUT_FILE/\%/jprefit}   \
 
  128    -o ${OUTPUT_FILE/\%/jsimplex}  \
 
  129    -N ${NUMBER_OF_THREADS}        \
 
  130    -@ `make_equation PARAMETERS`  \
 
  135rm -vf ${OUTPUT_FILE/\%/jprefit}
 
  137APPLICATIONS+=$JMUONSIMPLEX
 
  143# ------------------------------------------------------------------------------------------
 
  145# ------------------------------------------------------------------------------------------
 
  162    -f ${OUTPUT_FILE/\%/jsimplex}  \
 
  163    -o ${OUTPUT_FILE/\%/jstart}    \
 
  165    -N ${NUMBER_OF_THREADS}        \
 
  166    -@ `make_equation PARAMETERS`  \
 
  171rm -vf ${OUTPUT_FILE/\%/jsimplex}
 
  173APPLICATIONS+=$JMUONSTART
 
  179# ------------------------------------------------------------------------------------------
 
  181# ------------------------------------------------------------------------------------------
 
  200    -f ${OUTPUT_FILE/\%/jstart}    \
 
  201    -o ${OUTPUT_FILE/\%/jgandalf}  \
 
  203    -N ${NUMBER_OF_THREADS}        \
 
  204    -@ `make_equation PARAMETERS`  \
 
  209rm -vf ${OUTPUT_FILE/\%/jstart}
 
  211APPLICATIONS+=$JMUONGANDALF
 
  217# ------------------------------------------------------------------------------------------
 
  219# ------------------------------------------------------------------------------------------
 
  236    -f ${OUTPUT_FILE/\%/jgandalf}  \
 
  237    -o ${OUTPUT_FILE/\%/jstart2}   \
 
  239    -N ${NUMBER_OF_THREADS}        \
 
  240    -@ `make_equation PARAMETERS`  \
 
  245rm -vf ${OUTPUT_FILE/\%/jgandalf}
 
  247APPLICATIONS+=$JMUONSTART
 
  253# ------------------------------------------------------------------------------------------
 
  255# ------------------------------------------------------------------------------------------
 
  275    -f ${OUTPUT_FILE/\%/jstart2}   \
 
  276    -o ${OUTPUT_FILE/\%/jenergy}   \
 
  278    -N ${NUMBER_OF_THREADS}        \
 
  279    -@ `make_equation PARAMETERS`  \
 
  284rm -vf ${OUTPUT_FILE/\%/jstart2}
 
  286APPLICATIONS+=$JMUONENERGY
 
  292# ------------------------------------------------------------------------------------------
 
  294# ------------------------------------------------------------------------------------------
 
  299    -f ${OUTPUT_FILE/\%/jenergy}   \
 
  300    -o ${OUTPUT_FILE/\%/jhistory}  \
 
  301    -A "$APPLICATIONS[*]"          \
 
  306rm -vf ${OUTPUT_FILE/\%/jenergy}
 
  312# ------------------------------------------------------------------------------------------
 
  313#                   rename outputfile and remove intermediate files
 
  314# ------------------------------------------------------------------------------------------
 
  319    ${OUTPUT_FILE/\%/jhistory}    \
 
  320    ${OUTPUT_FILE/\%/${SUFFIX}}   
 
  326# ------------------------------------------------------------------------------------------
 
  328# ------------------------------------------------------------------------------------------
 
  333    -f ${OUTPUT_FILE/\%/${SUFFIX}}          \
 
  334    -o ${OUTPUT_FILE/\%/${SUFFIX}.offline}  \