9 # ------------------------------------------------------------------------------------------
 
   11 #                         Utility script to test JCalibrateK40/JFitK40.
 
   13 # ------------------------------------------------------------------------------------------
 
   15 if [ -z $JPP_DIR ]; then
 
   16     echo "Variable JPP_DIR undefined."
 
   20 source $JPP_DIR/setenv.sh $JPP_DIR
 
   22 set_variable   DIR         $JPP_DIR/examples/JCalibrate  
 
   24 set_variable   WORKDIR     ${TMPDIR:-/tmp}/                         
 
   25 set_variable:  FORMAT      GRAPHICS_FORMAT        gif
 
   26 set_variable+  BATCH       GRAPHICS_BATCH         -B
 
   29     usage "$script [working directory]"
 
   33     1) set_variable WORKDIR  $1;;
 
   36 set_variable  DETECTOR         $WORKDIR/detector.detx
 
   37 set_variable  BACKGROUND_HZ    5e3 500
 
   38 set_variable  numberOfSlices   6000
 
   39 set_variable  DAQ_TIMESLICE    JDAQTimesliceL1
 
   41 set_variable  detectorType     1
 
   42 set_variable  numberOfLines    1
 
   43 set_variable  numberOfFloors   1
 
   47     -@ "detectorType   = $detectorType"    \
 
   48     -@ "numberOfLines  = $numberOfLines"   \
 
   49     -@ "numberOfFloors = $numberOfFloors"  \
 
   53 set_variable  MODULE           `getModule -a $DETECTOR -L "1 1"`
 
   55 if ( ! reuse_file $WORKDIR/timeslice.root ); then
 
   57     JRandomTimesliceWriter \
 
   59         -o $WORKDIR/timeslice.root                    \
 
   65 if ( ! reuse_file $WORKDIR/trigger_processor.root ); then
 
   69         -f $WORKDIR/timeslice.root                    \
 
   70         -o $WORKDIR/trigger_processor.root            \
 
   81         -f $WORKDIR/trigger_processor.root            \
 
   84         -o $WORKDIR/monitor.root                      \
 
   88         -f $WORKDIR/monitor.root                      \
 
   89         -o $WORKDIR/merge.root                        \
 
   94         -f $WORKDIR/merge.root                        \
 
   95         -o $WORKDIR/fit.root                          \
 
   99     for (( PMT = 0; PMT < 31; PMT += 1 )); do
 
  101         rm -f $WORKDIR/trigger_processor-\[${PMT}\].root
 
  104             -f $WORKDIR/trigger_processor.root            \
 
  105             -o $WORKDIR/trigger_processor-\[${PMT}\].root \
 
  110             -f $WORKDIR/trigger_processor-\[${PMT}\].root \
 
  113             -o $WORKDIR/monitor-\[${PMT}\].root           \
 
  117             -f $WORKDIR/monitor-\[${PMT}\].root           \
 
  118             -o $WORKDIR/merge-\[${PMT}\].root             \
 
  123             -f $WORKDIR/merge-\[${PMT}\].root             \
 
  124             -o $WORKDIR/fit-\[${PMT}\].root               \
 
  130 INPUT_FILES=(`ls -U $WORKDIR/fit.root $WORKDIR/fit-\[*\].root`)
 
  133     -f "${INPUT_FILES//\.root/.root:${MODULE}.1QE}" \
 
  136     -o $WORKDIR/variance.root                  
 
  139     -f $WORKDIR/variance.root:h0               \
 
  140     -o $WORKDIR/scale.root                     \
 
  141     -F "1.0/GetEntries"                        \
 
  145     -f $WORKDIR/scale.root:h0                  \
 
  148     -\^ "number of PMTs"                       \
 
  150     -T "" -o QE-summary.$FORMAT                $BATCH
 
  155     -f $WORKDIR/fit.root:${MODULE}.1QE         \
 
  156     -f $WORKDIR/fit-\[0\].root:${MODULE}.1QE   \
 
  157     -f $WORKDIR/fit-\[10\].root:${MODULE}.1QE  \
 
  158     -f $WORKDIR/fit-\[20\].root:${MODULE}.1QE  \
 
  159     -f $WORKDIR/fit-\[30\].root:${MODULE}.1QE  \