8# ------------------------------------------------------------------------------------------
 
   10#                         Script to run the JPP Shower Reconstruction Chain for ORCA.
 
   12# ------------------------------------------------------------------------------------------
 
   15if [ -z $JPP_DIR ]; then
 
   16    echo "Variable JPP_DIR undefined."
 
   20source $JPP_DIR/setenv.sh $JPP_DIR
 
   21source $JPP_DIR/externals/km3net-dataformat/definitions/reconstruction.sh
 
   23set_variable:  DEBUG             RECONSTRUCTION_DEBUG                1
 
   24set_variable:  PDF               RECONSTRUCTION_PDF                  $JPP_DATA/J%p.dat
 
   25set_variable:  SUFFIX            RECONSTRUCTION_SUFFIX               jshower
 
   26set_variable:  ENERGY_CORRECTION RECONSTRUCTION_ENERGY_CORRECTION    energy_correction_showerfit_fullorca.txt
 
   27set_variable:  NUMBER_OF_EVENTS  RECONSTRUCTION_NUMBER_OF_EVENTS     $((2**31))
 
   28set_variable:  NUMBER_OF_THREADS RECONSTRUCTION_NUMBER_OF_THREADS    0
 
   29set_variable+  OVERWRITE         RECONSTRUCTION_OVERWRITE            1
 
   30set_variable:  TMAX_S            RECONSTRUCTION_TMAX_S               100
 
   33    usage "$script <detector file> <input file> <output file> <PMT parameters file> [(calibration file)+]"
 
   36set_variable DETECTOR        $argv[1]
 
   37set_variable INPUT_FILE      $argv[2]
 
   38set_variable OUTPUT_FILE     $argv[3]
 
   39set_variable PMT             $argv[4]
 
   40set_array    CALIBRATION     $argv[5,-1]
 
   42if [[ ! "$OUTPUT_FILE" == *"%"* ]]; then
 
   43    fatal "The output file must have the wildcard % in the name, e.g. %.root"
 
   47typeset -a APPLICATIONS
 
   52if [[ "$OVERWRITE" == 1 ]]; then
 
   54        ${OUTPUT_FILE/\%/jshprefit}          \
 
   55        ${OUTPUT_FILE/\%/jshpointsimplex}    \
 
   56        ${OUTPUT_FILE/\%/jshpositionfit}     \
 
   57        ${OUTPUT_FILE/\%/jshdirectionprefit} \
 
   58        ${OUTPUT_FILE/\%/jshfit}             \
 
   59        ${OUTPUT_FILE/\%/jhistory}           \
 
   60        ${OUTPUT_FILE/\%/${SUFFIX}}          \
 
   61        ${OUTPUT_FILE/\%/${SUFFIX}.offline}
 
   65if (( ${#CALIBRATION} != 0 )); then
 
   66    getMechanics.sh  $DETECTOR
 
   70# ------------------------------------------------------------------------------------------
 
   72# ------------------------------------------------------------------------------------------
 
   96    -o ${OUTPUT_FILE/\%/jshprefit}      \
 
   97    -n ${NUMBER_OF_EVENTS}              \
 
   98    -N ${NUMBER_OF_THREADS}             \
 
   99    -@ `make_equation PARAMETERS`       \
 
  104APPLICATIONS+=$JSHOWERPREFIT
 
  110# ------------------------------------------------------------------------------------------
 
  112# ------------------------------------------------------------------------------------------
 
  126eval JShowerPointSimplex                  \
 
  130    -N ${NUMBER_OF_THREADS}               \
 
  131    -f ${OUTPUT_FILE/\%/jshprefit}        \
 
  132    -o ${OUTPUT_FILE/\%/jshpointsimplex}  \
 
  133    -@ `make_equation PARAMETERS`         \
 
  138rm -vf  ${OUTPUT_FILE/\%/jshprefit}       
 
  140APPLICATIONS+=$JSHOWERPOINTSIMPLEX
 
  146# ------------------------------------------------------------------------------------------
 
  148# ------------------------------------------------------------------------------------------
 
  163eval JShowerPositionFit                   \
 
  167    -N ${NUMBER_OF_THREADS}               \
 
  168    -f ${OUTPUT_FILE/\%/jshpointsimplex}  \
 
  170    -o ${OUTPUT_FILE/\%/jshpositionfit}   \
 
  171    -@ `make_equation PARAMETERS`         \
 
  176rm -vf  ${OUTPUT_FILE/\%/jshpointsimplex}       
 
  178APPLICATIONS+=$JSHOWERPOSITIONFIT
 
  185# ------------------------------------------------------------------------------------------
 
  186#                                       JShowerDirectionPrefit
 
  187# ------------------------------------------------------------------------------------------
 
  203eval JShowerDirectionPrefit                  \
 
  207    -f ${OUTPUT_FILE/\%/jshpositionfit}      \
 
  209    -o ${OUTPUT_FILE/\%/jshdirectionprefit}  \
 
  210    -@ `make_equation PARAMETERS`            \
 
  211    -N ${NUMBER_OF_THREADS}                  \
 
  216rm -vf  ${OUTPUT_FILE/\%/jshpositionfit}
 
  218APPLICATIONS+=$JSHOWERDIRECTIONPREFIT
 
  224# ------------------------------------------------------------------------------------------
 
  226# ------------------------------------------------------------------------------------------
 
  244    -f ${OUTPUT_FILE/\%/jshdirectionprefit}  \
 
  246    -N ${NUMBER_OF_THREADS}                  \
 
  247    -o ${OUTPUT_FILE/\%/jshfit}              \
 
  248    -@ `make_equation PARAMETERS`            \
 
  249    -E $ENERGY_CORRECTION                    \
 
  254rm -vf  ${OUTPUT_FILE/\%/jshdirectionprefit}
 
  256APPLICATIONS+=$JSHOWERCOMPLETEFIT
 
  262# ------------------------------------------------------------------------------------------
 
  264# ------------------------------------------------------------------------------------------
 
  269    -f ${OUTPUT_FILE/\%/jshfit}    \
 
  270    -o ${OUTPUT_FILE/\%/jhistory}  \
 
  271    -A "$APPLICATIONS[*]"          \
 
  276rm -vf  ${OUTPUT_FILE/\%/jshfit}
 
  282# ------------------------------------------------------------------------------------------
 
  284# ------------------------------------------------------------------------------------------
 
  289    ${OUTPUT_FILE/\%/jhistory}               \
 
  290    ${OUTPUT_FILE/\%/${SUFFIX}}              
 
  296# ------------------------------------------------------------------------------------------
 
  298# ------------------------------------------------------------------------------------------
 
  303    -f ${OUTPUT_FILE/\%/${SUFFIX}}          \
 
  304    -o ${OUTPUT_FILE/\%/${SUFFIX}.offline}  \