5 # Auxiliary script to produce QA/QC data for operations (near-real-time) monitoring. 
    7 # The data is stored int he <qaqc file> and can be viewed with the script JOperationsRunMonitor.sh. 
   11  if [ -z $JPP_DIR ]; 
then 
   12      echo "Variable JPP_DIR undefined." 
   16  source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/
null 
   22      usage "$script <detector file> (run file(s))+ <qaqc file> [working directory]" 
   30      *)  fatal 
"Wrong number of arguments." 
   35     trigger3DShower.enabled
 
   36     triggerMXShower.enabled
 
   43 TRIGGERS=(`JPrintTriggerBits`)
 
   67 if [[ ! -s $QAQC_FILE ]]; 
then 
   68     echo $PARAMETERS[*]                                                  >  $QAQC_FILE
 
   73     # check presence of trigger parameters 
   80     JTriggerMonitor -
v |& 
awk '/version/ { print $2 }'            | 
read     GIT_VERSION
 
  100         -
Q 3 3>&1                                                 | 
read -
A  TURBOT
 
  110     printf 
" %32s"   ${GIT_VERSION}                                      >> $QAQC_FILE
 
  111     printf 
" %8d"    ${DAQ_HEADER[1,2]}                                  >> $QAQC_FILE
 
  112     printf 
" %9.1f"  ${LIVETIME_S[1]}                                    >> $QAQC_FILE
 
  113     printf 
" %12.1f" ${UTC_S[*]}                                         >> $QAQC_FILE
 
  119         printf 
" %4d" ${VALUE-0}                                         >> $QAQC_FILE
 
  122     for KEY 
in ${
DAQ[*]}; 
do 
  124         JPrintTree -
f ${
INPUT_FILE} |& eval 
awk \
'/${KEY}/ \{ print \$3\; \}\'  | read VALUE 
  126         printf " %8d" ${VALUE-0}                                         >> $QAQC_FILE 
  129     printf " %8d"   ${TRIGGER_MONITOR[*]}                                >> $QAQC_FILE 
  130     printf " %2d"   ${TURBOT[1,2]}                                       >> $QAQC_FILE 
  131     printf " %7.5f" ${SUMMARY_MONITOR[1,4]}                              >> $QAQC_FILE 
  132     printf " %8.1f" ${SUMMARY_MONITOR[5]}                                >> $QAQC_FILE 
  133     printf " %7.0f" ${SUMMARY_MONITOR[6,7]}                              >> $QAQC_FILE 
  134     printf "\n"                                                          >> $QAQC_FILE 
then fatal No hydrophone data file $HYDROPHONE_TXT fi sort gr k
 
Q(UTCMax_s-UTCMin_s)-livetime_s
 
std::istream & read(std::istream &in, JTestSummary &summary, const char delimiter= ' ')
Read test summary. 
 
*fatal Wrong number of arguments esac check_input_file $INPUT_FILE for TIMESLICE in JDAQTimeslice JDAQTimesliceL0 JDAQTimesliceL1 JDAQTimesliceL2 JDAQTimesliceSN
 
*fatal Wrong number of arguments esac TRIGGER_PARAMETERS
 
o $QUALITY_ROOT d $DEBUG!JPlot1D f
 
then JCookie sh JDataQuality D $DETECTOR_ID R $RUNS[*] o $QUALITY_TXT d $DEBUG!fi fi JDataQuality f $QUALITY_TXT Q livetime_s
 
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
 
do set_variable STRING_TXT awk
 
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR if do_usage *then usage $script[(input file)+] fi set_variable DEBUG set_variable WORKDIR TMPDIR
 
then rm i $OUTPUT_FILE fi let RUN
 
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
 
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
 
double getLivetime(const std::string &file_name)
Get data taking live time. 
 
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 DETECTOR_TXT $WORKDIR detector
 
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY source JAcoustics sh $DETECTOR_ID CHECK_EXIT_CODE typeset A TRIPODS get_tripods $WORKDIR tripod txt TRIPODS for EMITTER in
 
source $JPP_DIR setenv csh $JPP_DIR &dev null eval JShellParser o a A
 
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null