4if [ -z $JPP_DIR ]; then
 
    5    echo "Variable JPP_DIR undefined."
 
    9source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
 
   12    usage "$script <detector file> <input file>+ <string number>+"
 
   16    fatal "Not enough arguments."
 
   19set_variable INDEX_STRING_START -1
 
   21while [[ ${${argv[${START_INDEX_STRING}]}##*.} != "root" ]]; do
 
   22    set_variable START_INDEX_STRING     $(( START_INDEX_STRING - 1 ))
 
   25set_variable DETECTOR    ${argv[1]}
 
   26set_array INPUT_FILES    ${argv[2, $(( START_INDEX_STRING - 1 ))     ]}
 
   27set_array STRINGS        ${argv[   $(( START_INDEX_STRING     )), -1 ]}
 
   29set_variable  TRIGGER_PARAMETERS  `echo "trigger3DMuon.enabled=1;TMaxEvent_ns=15000;"`
 
   30set_variable  JDAQ_TIMESLICE      JDAQTimesliceSN
 
   31set_variable  FORMULA             "[0] + ([3]*( ([1]^(2*[4])) / (([1]*[1] + (2^(1/[4])-1) * ((x-[2])*(x-[2])) ) )))^[4]"
 
   32set_variable  WORKDIR             ${TMPDIR:-/tmp}
 
   40for STRING in "${STRINGS[@]}"; do
 
   42    REMOVE[$REMOVE[(i)$STRING]]=()
 
   45    for R in "${REMOVE[@]}"; do
 
   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} -@ "type = JDAQEvent" -k number_of_entries`
 
   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" 
 
  114echo -e "${OUTPUT_OFFSETS}"