Jpp  18.0.0-rc.4
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
JEqualizer.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 #
3 #
4 # \author mdejong
5 #
6 version=1.0
7 script=${0##*/}
8 
9 if [ -z $JPP_DIR ]; then
10  echo "Variable JPP_DIR undefined."
11  exit
12 fi
13 
14 source $JPP_DIR/setenv.sh $JPP_DIR
15 
17 set_variable WORKDIR `pwd`
18 set_variable DETECTOR $WORKDIR/detectors/detector.detx
19 set_variable DAQ_TIMESLICE JDAQTimesliceL0
20 set_variable OPTION ABCDEF
21 
22 if do_usage $*; then
23  usage "$script <input file> [option]"
24 fi
25 
26 case $# in
27  2) set_variable OPTION $argv[2];&
29  *) fatal "Wrong number of arguments.";;
30 esac
31 
32 
33 JPrintDAQHeader -f $INPUT_FILE | read DETECTOR_ID RUN FRAME_INDEX TIMESLICE_START
34 
36 
37 mkdir -p $DIR
38 
40 set_variable PMT_FILE $DIR/PMT.txt
41 
42 if [[ ! -f $DETECTOR ]]; then
43  JDetectorDB -D $DETECTOR_ID -r $RUN -o $DETECTOR
44 fi
45 
46 # background mode
47 
48 if [[ ! -f $PMT_FILE ]]; then
49 
50  # gain calibration
51 
52  set_variable MONITOR_FILE $DIR/monitor_tot.root
53  set_variable MERGE_FILE $DIR/merge_tot.root
54  set_variable FIT_FILE $DIR/fit_tot.root
55  set_variable LOG_FILE $DIR/fit_tot.log
56 
57  JCalibrateToT \
58  -a $DETECTOR \
59  -f $INPUT_FILE \
60  -C $DAQ_TIMESLICE \
61  -o $MONITOR_FILE \
62  -d $DEBUG --!
63 
64  JMergeCalibrateToT \
65  -f $MONITOR_FILE \
66  -o $MERGE_FILE \
67  -d $DEBUG --!
68 
69  JFitToT \
70  -a $DETECTOR \
71  -f $MERGE_FILE \
72  -o $FIT_FILE \
73  -w \
74  -P $PMT_FILE \
75  -d $DEBUG --!
76 
77  # QE calibration
78 
79  set_variable MONITOR_FILE $DIR/monitor_k40.root
80  set_variable MERGE_FILE $DIR/merge_k40.root
81  set_variable FIT_FILE $DIR/fit_k40.root
82  set_variable LOG_FILE $DIR/fit_k40.log
83  set_variable DETX_FILE $DIR/fit_k40.detx
84 
85  JCalibrateK40 \
86  -a $DETECTOR \
87  -f $INPUT_FILE \
88  -C $DAQ_TIMESLICE \
89  -o $MONITOR_FILE \
90  -d $DEBUG --!
91 
92  JMergeCalibrateK40 \
93  -f $MONITOR_FILE \
94  -o $MERGE_FILE \
95  -d $DEBUG --!
96 
97  cp $DETECTOR $DETX_FILE
98 
99  JFitK40 \
100  -a $DETX_FILE \
101  -f $MERGE_FILE \
102  -o $FIT_FILE \
103  -wA \
104  -P $PMT_FILE \
105  -d $DEBUG --!
106 
107  # final corrections
108 
109  set_variable MU 0.20
110  set_variable TOT_NS 4.0 255.0
111 
112  JEditPMTParameters \
113  -P $PMT_FILE \
114  -o $PMT_FILE \
115  -T "$TOT_NS" \
116  -E $MU
117 
118  exit
119 fi
120 
121 
122 # interactive mode
123 
125 
126 if ( ! reuse_file $OUTPUT_FILE ); then
127 
128  $JPP_DIR/examples/JCalibrate/JEqualizer \
129  -f $INPUT_FILE \
130  -P $PMT_FILE \
131  -o $OUTPUT_FILE \
132  -r $OPTION \
133  -d $DEBUG
134 fi
135 
&set_variable DAQ_TIMESLICE
Definition: JLegolas.sh:32
then usage $script< detector >< run >< outputfile > fi case set_variable OPTION
Definition: JTuna.sh:26
data_type w[N+1][M+1]
Definition: JPolint.hh:778
then usage $script< detector identifier >< startdate\"YYYY-MM-DDHH:MM:SS\"><finaldate\"YYYY-MM-DDHH:MM:SS\"><QA/QCfile> fi case set_variable QAQC_TXT $argv[4]
Definition: JDataMonitor.sh:24
std::istream & read(std::istream &in, JTestSummary &summary, const char delimiter= ' ')
Read test summary.
then usage $script< input file >[option[primary[working directory]]] nWhere option can be E
Definition: JMuonPostfit.sh:40
version
Definition: JEditTuneHV.sh:5
JFitK40_t< TF2 > JFitK40
Type definition for backward compatibility.
Definition: JFitK40.hh:807
static const JPBS_t PMT(3, 4, 2, 3)
PBS of photo-multiplier tube (PMT)
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O SUMMARY JPrintDAQHeader f $INPUT_FILE read A DAQ_HEADER set_variable DETECTOR_ID
Definition: JSquid.sh:28
o $QUALITY_ROOT d $DEBUG!CHECK_EXIT_CODE JPlot1D f
Definition: JDataQuality.sh:76
exit
Definition: JPizza.sh:36
data_type r[M+1]
Definition: JPolint.hh:779
then set_variable MONITOR_FILE $DIR monitor_tot root set_variable MERGE_FILE $DIR merge_tot root set_variable FIT_FILE $DIR fit_tot root set_variable LOG_FILE $DIR fit_tot log JCalibrateToT a $DETECTOR f $INPUT_FILE C $DAQ_TIMESLICE o $MONITOR_FILE d $DEBUG!JMergeCalibrateToT f $MONITOR_FILE o $MERGE_FILE d $DEBUG!JFitToT a $DETECTOR f $MERGE_FILE o $FIT_FILE w P $PMT_FILE d $DEBUG!set_variable MONITOR_FILE $DIR monitor_k40 root set_variable MERGE_FILE $DIR merge_k40 root set_variable FIT_FILE $DIR fit_k40 root set_variable LOG_FILE $DIR fit_k40 log set_variable DETX_FILE $DIR fit_k40 detx JCalibrateK40 a $DETECTOR f $INPUT_FILE C $DAQ_TIMESLICE o $MONITOR_FILE d $DEBUG!JMergeCalibrateK40 f $MONITOR_FILE o $MERGE_FILE d $DEBUG!cp $DETECTOR $DETX_FILE JFitK40 a $DETX_FILE f $MERGE_FILE o $FIT_FILE wA P $PMT_FILE d $DEBUG!set_variable MU set_variable TOT_NS JEditPMTParameters P $PMT_FILE o $PMT_FILE T $TOT_NS E $MU exit fi set_variable OUTPUT_FILE $DIR equalizer
Definition: JEqualizer.sh:124
then fatal Wrong number of arguments fi JConvertDetectorFormat a o
then fatal Wrong number of arguments fi DIR
static const double C
Physics constants.
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
Definition: JAcoustics.sh:21
then JCalibrateToT a
Definition: JTuneHV.sh:116
do set_variable OUTPUT_DIRECTORY $WORKDIR T
then rm i $OUTPUT_FILE fi let RUN
set_variable DETX_FILE
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DEBUG set_variable WORKDIR
Definition: JLegolas.sh:20
* usage
then JFileTuna f $INPUT_FILE
Definition: file-Tuna.sh:66
&set_variable OUTPUT_FILE
set_variable INPUT_FILE
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:47
then set_variable MODULE getModule a $DETECTOR L $STRING $FLOOR JEditDetector a $DETECTOR M $MODULE add $X o $DETECTOR else echo No update of detector $DETECTOR
then display $WORKDIR
Definition: plot-Domino.sh:128
then cp
set_variable DETECTOR
do set_variable DETECTOR_TXT $WORKDIR detector
then echo
Definition: JQAQC.sh:90
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 JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
Definition: JCanberra.sh:46
do echo Generating $dir eval D
Definition: JDrawLED.sh:53
*fatal Wrong option $OPTION
then $DIR JPlotNPE PDG P
Definition: JPlotNPE-PDG.sh:62
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62