8 # ------------------------------------------------------------------------------------------ 
   10 #                         Utility script to plot JDomino results. 
   12 # ------------------------------------------------------------------------------------------ 
   14 if [ -z $JPP_DIR ]; 
then 
   15     echo "Variable JPP_DIR undefined." 
   19 source $JPP_DIR/setenv.sh $JPP_DIR
 
   29     usage "$script (input file)+" 
   32 if (( $# == 0 )); 
then 
   33     fatal 
"No input files." 
   41         -
f "${INPUT_FILES//\.root/.root:job}" \
 
   46         -
T "Average number of photo-electrons per event by a track_in" \
 
   54         -
f "${INPUT_FILES//\.root/.root:trks$}" \
 
   56         -\^ 
"number of tracks"            \
 
   59         -
T "Average occurrence of a track_in per event" \
 
   67         -
f "${INPUT_FILES//\.root/.root:hits_per_E_in}" \
 
   74         -
T "Average number of photo-elecrons per event inside the instrumented volume" \
 
   81         -
f "${INPUT_FILES//\.root/.root:pmt}" \
 
   85         -\^ 
"number of hits [a.u.]"       \
 
   87         -
T "number of photo-electrons per PMT" \
 
  100     for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); 
do 
  104         LABEL=`printf 
'10^{%3.1f} GeV < E_{#nu} < 10^{%3.1f} GeV' $XL  $XR`
 
  107             -
f "${INPUT_FILES//\.root/.root:${TH2}}" \
 
  111             -z 
"$ZMIN $ZMAX" -
Z                \
 
  122 	$WORKDIR/${TH2}_*.$FORMAT       \
        $WORKDIR/${TH2}.$FORMAT         >& /dev/
null 
  126     if [[ 
"$BATCH" != 
"-B" ]]; 
then 
  140     for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); 
do 
  144         LABEL=`printf 
'10^{%3.1f} GeV < E_{#nu} < 10^{%3.1f} GeV' $XL  $XR`
 
  147             -
f "${INPUT_FILES//\.root/.root:${TH2}}" \
 
  150             -z 
"$ZMIN $ZMAX" -
Z                \
 
  151             -\> 
"cos(#theta_{0})"              \
 
  161 	$WORKDIR/${TH2}_*.$FORMAT       \
        $WORKDIR/${TH2}.$FORMAT         >& /dev/
null 
  165     if [[ 
"$BATCH" != 
"-B" ]]; 
then 
  181     for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); 
do 
  185         LABEL=`printf 
'%3.0f m < D < %3.0f m' $XL  $XR`
 
  187         CD=`printf 
'%.0f' ${XL}`
 
  190             -
f "${INPUT_FILES//\.root/.root:${TH2}}" \
 
  193             -z 
"$ZMIN $ZMAX" -
Z                \
 
  194             -\> 
"cos(#theta_{0})"              \
 
  204 	$WORKDIR/${TH2}_*.$FORMAT       \
        $WORKDIR/${TH2}.$FORMAT         >& /dev/
null 
  208     if [[ 
"$BATCH" != 
"-B" ]]; 
then 
  224     for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); 
do 
  228         LABEL=`printf 
'%3.0f m < D < %3.0f m' $XL  $XR`
 
  230         CD=`printf 
'%.0f' ${XL}`
 
  233             -
f "${INPUT_FILES//\.root/.root:${TH2}}" \
 
  236             -z 
"$ZMIN $ZMAX" -
Z                \
 
  237             -\> 
"cos(#theta_{1})"              \
 
  247 	$WORKDIR/${TH2}_*.$FORMAT       \
        $WORKDIR/${TH2}.$FORMAT         >& /dev/
null 
  251     if [[ 
"$BATCH" != 
"-B" ]]; 
then 
  267     for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); 
do 
  271         LABEL=`printf 
'%3.0f m < D < %3.0f m' $XL  $XR`
 
  273         CD=`printf 
'%.0f' ${XL}`
 
  276             -
f "${INPUT_FILES//\.root/.root:${TH2}}" \
 
  280             -z 
"$ZMIN $ZMAX" -
Z                \
 
  291 	$WORKDIR/${TH2}_*.$FORMAT       \
        $WORKDIR/${TH2}.$FORMAT         >& /dev/
null 
  295     if [[ 
"$BATCH" != 
"-B" ]]; 
then 
  310     for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); 
do 
  314         LABEL=`printf 
'10^{%3.1f} GeV < E_{#mu} < 10^{%3.1f} GeV' $XL  $XR`
 
  317             -
f "${INPUT_FILES//\.root/.root:${TH2}}" \
 
  321             -z 
"$ZMIN $ZMAX" -
Z                \
 
  332 	$WORKDIR/${TH2}_*.$FORMAT       \
        $WORKDIR/${TH2}.$FORMAT         >& /dev/
null 
  336     if [[ 
"$BATCH" != 
"-B" ]]; 
then 
  352     for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); 
do 
  356         LABEL=`printf 
'%3.0f m < R < %3.0f m' $XL  $XR`
 
  358         CD=`printf 
'%.0f' ${XL}`
 
  361             -
f "${INPUT_FILES//\.root/.root:${TH2}}" \
 
  364             -z 
"$ZMIN $ZMAX" -
Z                \
 
  365             -\> 
"cos(#theta_{1})"              \
 
  375 	$WORKDIR/${TH2}_*.$FORMAT   \
        $WORKDIR/${TH2}.$FORMAT     >& /dev/
null 
  379     if [[ 
"$BATCH" != 
"-B" ]]; 
then 
  395     for (( XL = $XMIN; $XL < $XMAX; XL += $DX )); 
do 
  399         LABEL=`printf 
'%3.0f m < R < %3.0f m' $XL  $XR`
 
  401         CD=`printf 
'%.0f' ${XL}`
 
  404             -
f "${INPUT_FILES//\.root/.root:${TH2}}" \
 
  408             -z 
"$ZMIN $ZMAX" -
Z                \
 
  419 	$WORKDIR/${TH2}_*.$FORMAT       \
        $WORKDIR/${TH2}.$FORMAT         >& /dev/
null 
  423     if [[ 
"$BATCH" != 
"-B" ]]; 
then 
  429 *set_variable DETECTOR_ID $argv[1] set_array RUNS $argv[2,-2]
 
o $QUALITY_ROOT d $DEBUG!JPlot1D f
 
then fatal Wrong number of arguments fi set_variable STRING $argv[1] set_variable DETECTORXY_TXT $WORKDIR $DETECTORXY_TXT tail read X Y CHI2 RMS printf optimum n $X $Y $CHI2 $RMS awk v Y
 
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
 
do set_variable OUTPUT_DIRECTORY $WORKDIR T
 
then break fi done getCenter read X Y Z let X
 
set_variable NUMBER_OF_ITERATIONS set_variable EPSILON cat acoustics_fit_parameters txt<< EOF $CONFIGURATION[*]Nmin=3;sigma_s=100.0e-6;stdev=10.0;mestimator=0;fixStrings=0;EOF for STRING in $STRINGS[*];do#fit stretching and(z) position of given string set_variable DETECTOR_TMP ${TMPDIR:-/tmp}/detector_A.datx JEditDetector-a $DETECTOR-o $DETECTOR_TMP-r $STRING JEditDetector-a $DETECTOR-o $DETECTOR-k $STRING for MUL in 0.005 0.001;do DX_M=0.2 for((N=0;$N< $NUMBER_OF_ITERATIONS;++N));do CHI2[3]=$CHI2[1] fitPositionOfString $STRING Z $DX_M fitStretchingOfString $STRING $MUL if(($CHI2[3]-$CHI2[1]< $EPSILON));then break fi done if(($N >=$NUMBER_OF_ITERATIONS));then printf"warning: reached maximum number of iterations %d - converenge %7.3f\n"$N $(($CHI2[3]-$CHI2[1])) fi done JMergeDetector-a $DETECTOR-a $DETECTOR_TMP-o $DETECTOR rm-f $DETECTOR_TMP JConvertDetectorFormat-a $DETECTOR-o $DETECTOR-r-d 0 > &dev null done
 
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DEBUG set_variable WORKDIR
 
then JConvertDetectorFormat a $DETECTOR[1] o
 
do sput $STRING $FLOOR sget MODULE INPUT_FILES
 
do set_variable SIGMA_NS set_variable OUTLIERS set_variable OUTPUT_FILE matrix[${ALPHA_DEG}\deg\] root $JPP JMatrixNZ a $DETECTOR f $INPUT_FILE o $OUTPUT_FILE S
 
then usage $script< input_file >< detector_file > fi set_variable OUTPUT_DIR set_variable SELECTOR JDAQTimesliceL1 set_variable DEBUG case set_variable DEBUG
 
do set_variable MODULE getModule a $WORKDIR detector_a datx L $STRING JEditDetector a $WORKDIR detector_a datx M $MODULE setz o $WORKDIR detector_a datx JEditDetector a $WORKDIR detector_b datx M $MODULE setz o $WORKDIR detector_b datx done echo Output stored at $WORKDIR detector_a datx and $WORKDIR tripod_a txt JDrawDetector2D a $WORKDIR detector_a datx a $WORKDIR detector_b datx L BL o detector $FORMAT $BATCH JDrawDetector2D T $WORKDIR tripod_a txt T $WORKDIR tripod_b txt L BL o tripod $FORMAT $BATCH JCompareDetector a $WORKDIR detector_a datx b $WORKDIR detector_b datx o $WORKDIR abc root &dev null for KEY in X Y Z
 
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null