4 if [ -z $JPP_DIR ]; then
 
    5     echo "Variable JPP_DIR undefined."
 
    9 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
 
   13 set_variable:  DEBUG       ACOUSTICS_DEBUG        2
 
   14 set_variable:  WORKDIR     ACOUSTICS_WORKDIR      ./
 
   15 set_variable:  XMIN        HYDROPHONE_XMIN        -1.0e-3
 
   16 set_variable:  XMAX        HYDROPHONE_XMAX        +1.0e-3
 
   17 set_variable:  FORMAT      GRAPHICS_FORMAT        gif
 
   18 set_variable+  BATCH       GRAPHICS_BATCH         -B
 
   21     usage "$script <detector file> <string identifier> [<detector file>]"
 
   24 if (( $# == 0 || $# > 3 )); then
 
   25     fatal "Wrong number of arguments."
 
   28 set_variable  DETECTOR            $argv[1]
 
   29 set_variable  STRING              $argv[2]
 
   30 set_array     QUANTILES           0.333 0.666
 
   31 set_variable  FORMULA             "[0] * exp(-0.5 * (x-[1])*(x-[1]) / ([2]*[2]))"
 
   32 set_variable  MODULE              `getModule -a $DETECTOR -L "$STRING 0"`
 
   34 source JAcousticsToolkit.sh
 
   38 get_tripods $WORKDIR/tripod.txt TRIPODS
 
   44 for TRIPOD in ${(k)TRIPODS[*]}; do
 
   47         -f "hydrophone.root:${MODULE}.${TRIPOD}"     \
 
   51     if (( ${#RESULT} == ${#QUANTILES} )); then
 
   53         P1=$((0.5*($RESULT[-1] + $RESULT[1])))           # average
 
   54         P2=$((0.5*($RESULT[-1] - $RESULT[1])))           # width
 
   57             -f "hydrophone.root:${MODULE}.${TRIPOD}"     \
 
   58             -o ${TMPDIR:-/tmp}/fit.root                  \
 
   60             -@"p0 = GetMaximum * 0.8"                    \
 
   65         JPrintFit -f  ${TMPDIR:-/tmp}/fit.root:\.\* -@p1  |  read -A P1
 
   66         JPrintFit -f  ${TMPDIR:-/tmp}/fit.root:\.\* -@p2  |  read -A P2
 
   68         VALUE=$((1.0e+6 * $P1[1]))                              # [us]
 
   69         TOTAL=$(($TOTAL + 1.0))
 
   71         if (( $TOTAL == 1.0 )); then
 
   75             XMEAN[2]=$(($XMEAN[1] + ($VALUE - $XMEAN[1]) / $TOTAL))
 
   76             STDEV[2]=$(($STDEV[1] + ($VALUE - $XMEAN[1]) * ($VALUE - $XMEAN[2])))
 
   81         printf "string %4d tripod %2d %5.0f %3.0f us\n" $STRING $TRIPOD $(($P1[1] * 1.0e6)) $(($P2[1] * 1.0e6))
 
   85 if (( $TOTAL > 1.0 )); then
 
   86     printf "string %4d mean  RMS %5.0f %3.0f us\n" $STRING $XMEAN[1] $((sqrt($TOTAL * $STDEV[1] / ($TOTAL * ($TOTAL - 1.0)))))
 
   92     -f hydrophone.root:$MODULE                   \
 
   93     -o ${TMPDIR:-/tmp}/H\[${STRING}\].root       \
 
   97     -f ${TMPDIR:-/tmp}/H\[${STRING}\].root:Add   \
 
  101 P1=$((0.5*($RESULT[-1] + $RESULT[1])))           # average
 
  102 P2=$((0.5*($RESULT[-1] - $RESULT[1])))           # width
 
  105     -f ${TMPDIR:-/tmp}/H\[${STRING}\].root:Add   \
 
  106     -o ${TMPDIR:-/tmp}/F\[${STRING}\].root       \
 
  108     -@"p0 = GetMaximum * 0.8"                    \
 
  113 JPrintFit -f  ${TMPDIR:-/tmp}/F\[${STRING}\].root:Add -@p1  |  read -A P1
 
  114 JPrintFit -f  ${TMPDIR:-/tmp}/F\[${STRING}\].root:Add -@p2  |  read -A P2
 
  116 printf "string %4d t0    %6.0f +/- %6.0f us\n" $STRING $(($P1[1] * 1.0e6)) $(($P1[2] * 1.0e6))
 
  117 printf "string %4d sigma %6.0f +/- %6.0f us\n" $STRING $(($P2[1] * 1.0e6)) $(($P2[2] * 1.0e6))
 
  119 if (( ${#} == 3 )); then
 
  121     set_variable  DETECTOR            $argv[3]
 
  123     set_array P1  `JPrintFit -f  ${TMPDIR:-/tmp}/F\[${STRING}\].root:Add -@p1`
 
  125     let "TIME_OFFSET_NS = $P1[1] * 1.0e9"
 
  127     printf "Add time offset %12.6d to hydrophone.\n" $TIME_OFFSET_NS
 
  132         -M "$MODULE SUB $TIME_OFFSET_NS"     \
 
  137     -f ${TMPDIR:-/tmp}/F\[${STRING}\].root:Add   \
 
  140     -\^ "number of events [a.u.]"                \
 
  143     -o hydrophonet0_${STRING}.$FORMAT            $BATCH