Jpp
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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  if [[ ! -f $TURBOT ]]; then
69 
71 
72  JTurbot \
73  -a ${DETECTORB} \
74  -f ${DAQ_FILE} \
75  -P ${TURBOT} \
76  -d ${DEBUG} \
78  --!
79 
80  timer_stop
81  timer_print
82 
83  fi
84 
85 else
86 
87  set_variable TURBOT " "
88 fi
89 
91 
92 JTriggerEfficiency \
93  -a ${DETECTORA} \
94  -b ${DETECTORB} \
95  -f ${INPUT_FILE} \
96  -o ${OUTPUT_FILE} \
97  -P ${PMT_FILE} \
98  -P ${TURBOT} \
99  -P "QE=${FACTOR}" \
100  ${OPTION} \
101  -S ${SEED} \
102  -B "$BACKGROUND_HZ" \
103  -r "${RUNBYRUN}" \
104  -d ${DEBUG} \
105  --!
106 
107 timer_stop
108 timer_print
109 
110 JPrintMeta \
111  -f ${OUTPUT_FILE}
112 
113 JPrintTree \
114  -f ${OUTPUT_FILE}
115 
116 JTriggerMonitor \
117  -o $WORKDIR/monitor.root \
118  -f ${OUTPUT_FILE}
&set_variable NUMBER_OF_TIMESLICES
Definition: JRunAnalyzer.sh:19
void set_variable(const std::string &name, const std::string &value)
Set environment variable.
esac print_variable DETECTOR INPUT_FILE OUTPUT_FILE CDF for TYPE in
Definition: JSirene.sh:45
exit
Definition: JPizza.sh:36
&set_variable INPUT_FILE
Definition: JLegolas.sh:30
data_type r[M+1]
Definition: JPolint.hh:709
fi JEventTimesliceWriter a
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 $
esac print_variable DETECTOR TRIGGER OUTPUT_FILE BACKGROUND_HZ PMT_FILE check_input_file $DETECTOR $TRIGGER $PMT_FILE check_output_file $OUTPUT_FILE RUNBYRUN
then print_variable DETECTOR INPUT_FILE INTERMEDIATE_FILE check_input_file $DETECTOR $INPUT_FILE check_output_file $INTERMEDIATE_FILE $OUTPUT_FILE JMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JPath.sh:52
* 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 DETECTORB
alias put_queue eval echo n
Definition: qlib.csh:19
then display $WORKDIR
Definition: plot-Domino.sh:142
then usage $script< detector >< run >< outputfile > fi case set_variable OPTION
Definition: JTuna.sh:26
static void monitor()
Definition: DataQueue.cc:32
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
then usage $script< detector file >< inputfile > fi case set_variable WORKDIR
Definition: JLegolas.sh:28
then $DIR JPlotNPE PDG P
Definition: JPlotNPE-PDG.sh:60
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62