Jpp - the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
software/JTrigger/JTriggerEfficiencyRunByRun.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 #
3 # \author mdejong
4 #
5 script=${0##*/}
6 
7 # ------------------------------------------------------------------------------------------
8 #
9 # Example script to run JTriggerEfficiency in run-by-run mode.
10 #
11 # ------------------------------------------------------------------------------------------
12 
13 if [ -z $JPP_DIR ]; then
14  echo "Variable JPP_DIR undefined."
15  exit
16 fi
17 
18 source $JPP_DIR/setenv.sh $JPP_DIR
19 
20 set_variable: DEBUG TRIGGEREFFICIENCY_DEBUG 1
22 set_variable INPUT_FILE $WORKDIR/sirene.root
23 set_variable OUTPUT_FILE $WORKDIR/trigger_efficiency+runbyrun.root
24 set_variable DETECTORA $JPP_DATA/km3net_reference.detx
25 set_variable DETECTORB $JPP_DATA/km3net_reference.detx
26 set_variable DAQ_FILE $WORKDIR/summary.root
27 set_variable PMT_FILE $JPP_DATA/PMT_parameters.txt
28 set_variable: BACKGROUND_HZ TRIGGEREFFICIENCY_BACKGROUND_HZ ${BACKGROUND_HZ:-5e3 500 50 5 0.5}
29 set_variable: SEED TRIGGEREFFICIENCY_SEED 0
30 set_variable: TURBOT TRIGGEREFFICIENCY_TURBOT
31 set_variable: NUMBER_OF_TIMESLICES TRIGGEREFFICIENCY_NUMBER_OF_TIMESLICES 0
32 set_variable: FACTOR TRIGGEREFFICIENCY_FACTOR ${FACTOR:-1.0}
33 set_variable+ OPTION TRIGGEREFFICIENCY_TRIGGERED_EVENTS_ONLY -O
34 
35 if do_usage $*; then
36  usage "$script <detector file> <detector file> (input file)+ <output file> <DAQ file> [PMT parameters file]"\
37  "\nNote that if more than one input file is specified, all other arguments must be provided."
38 fi
39 
40 case $# in
41  6) set_variable PMT_FILE $6;&
47  4) fatal "Wrong number of arguments.";;
48  3) fatal "Wrong number of arguments.";;
49  2) fatal "Wrong number of arguments.";;
50  1) fatal "Wrong number of arguments.";;
51  0) fatal "Wrong number of arguments.";;
58 esac
59 
60 RUNBYRUN="file=$DAQ_FILE; sampler=25 250"
61 
63 check_input_file $DETECTORA $DETECTORB $INPUT_FILE $DAQ_FILE $PMT_FILE
64 check_output_file $OUTPUT_FILE
65 
66 if [[ -n $TURBOT ]]; then
67 
68  JConvertDetectorFormat -a ${DETECTORA} -o ${TURBOT}
69 
70  if (( $? != 0 )); then
71  fatal "Invalid detector file $TURBOT"
72  fi
73 
75 
76  JTurbot \
77  -f ${DAQ_FILE} \
78  -a ${TURBOT} \
79  -A \
80  -d ${DEBUG} \
82  --!
83 
84  timer_stop
85  timer_print
86 
87  set_variable DETECTOR $TURBOT
88 else
89  set_variable DETECTOR $DETECTORA
90 fi
91 
93 
94 JTriggerEfficiency \
95  -a ${DETECTOR} \
96  -b ${DETECTORB} \
97  -f ${INPUT_FILE} \
98  -o ${OUTPUT_FILE} \
99  -P ${PMT_FILE} \
100  -P "QE=${FACTOR}" \
101  ${OPTION} \
102  -S ${SEED} \
103  -B "$BACKGROUND_HZ" \
104  -r "${RUNBYRUN}" \
105  -d ${DEBUG} \
106  --!
107 
108 timer_stop
109 timer_print
110 
111 JPrintMeta \
112  -f ${OUTPUT_FILE}
113 
114 JPrintTree \
115  -f ${OUTPUT_FILE}
116 
117 JTriggerMonitor \
118  -o $WORKDIR/monitor.root \
119  -f ${OUTPUT_FILE}
then usage $script< detector >< run >< outputfile > fi case set_variable OPTION
Definition: JTuna.sh:26
&set_variable NUMBER_OF_TIMESLICES
Definition: JRunAnalyzer.sh:19
set_variable INPUT_FILE
exit
Definition: JPizza.sh:36
data_type r[M+1]
Definition: JPolint.hh:742
then JPizza f
Definition: JPizza.sh:46
then echo
then timer_start(JRandomTimesliceWriter-a ${DETECTOR}-o ${PIPE}-n ${NUMBER_OF_SLICES}-P ${PMT_FILE}-d ${DEBUG}-S ${SEED}-B"$BACKGROUND_HZ"-N"$RECYCLING"--!&&for((i=0;$i!=10;++i));do;echo 'EOF' > $PIPE;usleep 100000;done &&rm-f $PIPE)&JTimesliceReprocessor-a $
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
Definition: JAcoustics.sh:20
esac print_variable DETECTOR TRIGGER OUTPUT_FILE BACKGROUND_HZ PMT_FILE check_input_file $DETECTOR $TRIGGER $PMT_FILE check_output_file $OUTPUT_FILE RUNBYRUN
do $DIR JTransitTime o
Definition: JTransitTime.sh:44
* usage
then JFileTuna f $INPUT_FILE
Definition: file-Tuna.sh:66
&set_variable DETECTOR_FILE set_variable DAQ_FILE
*set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2,-2] set_variable OUTPUT_FILE $argv[-1]
Definition: JDomino.sh:39
&set_variable DETECTORA
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
Definition: JMatrixNZ.sh:56
&set_variable OUTPUT_FILE
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:45
&set_variable DETECTORB
then JCalibrateToT a
Definition: JTuneHV.sh:116
alias put_queue eval echo n
Definition: qlib.csh:19
then usage $script< input_file >< detector_file > fi set_variable OUTPUT_DIR set_variable SELECTOR JDAQTimesliceL1 set_variable DEBUG case set_variable DEBUG
then display $WORKDIR
Definition: plot-Domino.sh:127
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DEBUG set_variable WORKDIR tmp set_variable JDAQ_TIMESLICE JDAQTimeslice if do_usage *then usage $script< detector file >< inputfile > fi case set_variable WORKDIR
Definition: JLegolas.sh:23
static void monitor()
Definition: DataQueue.cc:32
set_variable 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
Definition: JCanberra.sh:38
then usage $script[input file[working directory[option]]] nWhere option can be N
Definition: JMuonPostfit.sh:35
script
Definition: JAcoustics.sh:2
source $JPP_DIR setenv csh $JPP_DIR eval JShellParser o a A
then $DIR JPlotNPE PDG P
Definition: JPlotNPE-PDG.sh:60