Jpp
 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}
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.";;
52  *) set_variable DETECTORA $argv[1]
53  set_variable DETECTORB $argv[2]
54  set_variable INPUT_FILE $argv[3,-4]
55  set_variable OUTPUT_FILE $argv[-3]
56  set_variable DAQ_FILE $argv[-2]
57  set_variable PMT_FILE $argv[-1];;
58 esac
59 
60 RUNBYRUN="file=$DAQ_FILE; sampler=25 250"
61 
62 print_variable DETECTORA DETECTORB INPUT_FILE OUTPUT_FILE RUNBYRUN PMT_FILE
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}
set_variable DETECTOR
&set_variable NUMBER_OF_TIMESLICES
Definition: JRunAnalyzer.sh:19
void set_variable(const std::string &name, const std::string &value)
Set environment variable.
exit
Definition: JPizza.sh:36
do set_array DAQHEADER JPrintDAQHeader f
Definition: JTuneHV.sh:74
data_type r[M+1]
Definition: JPolint.hh:742
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 $
esac print_variable DETECTOR TRIGGER OUTPUT_FILE BACKGROUND_HZ PMT_FILE check_input_file $DETECTOR $TRIGGER $PMT_FILE check_output_file $OUTPUT_FILE RUNBYRUN
&set_variable OUTPUT_FILE
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
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:45
&set_variable DETECTORB
then JCalibrateToT a
Definition: JTuneHV.sh:103
alias put_queue eval echo n
Definition: qlib.csh:19
then display $WORKDIR
Definition: plot-Domino.sh:127
then usage $script< detector >< run >< outputfile > fi case set_variable OPTION
Definition: JTuna.sh:26
static void monitor()
Definition: DataQueue.cc:32
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 typeset A TRIPODS get_tripods $WORKDIR tripod txt TRIPODS for EMITTER in
Definition: JCanberra.sh:36
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR set_variable DEBUG set_variable WORKDIR set_variable PIPE $WORKDIR pipe dat set_variable OUTPUT_FILE $WORKDIR timeslice root set_variable DETECTOR $JPP_DATA km3net_reference detx set_variable TRIGGER $JPP_DATA trigger_parameters_arca txt set_variable PMT_FILE $JPP_DATA PMT_parameters txt set_variable BACKGROUND_HZ
then usage $script[input file[working directory[option]]] nWhere option can be N
Definition: JMuonPostfit.sh:37
script
Definition: JAcoustics.sh:2
set_variable INPUT_FILE
then usage $script< detector file >< inputfile > fi case set_variable WORKDIR
Definition: JLegolas.sh:28
source $JPP_DIR setenv csh $JPP_DIR eval JShellParser o a A
then $DIR JPlotNPE PDG P
Definition: JPlotNPE-PDG.sh:60
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62