Jpp  15.0.3
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 
then usage $script< detector file >< detectorfile > nIf the range of floors is the first detector file is aligned to the second before the comparison nIn only modules within the given range of floors are used fi case set_variable RANGE $argv[3]
&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:741
std::istream & read(std::istream &in, JTestSummary &summary, const char delimiter= ' ')
Read test summary.
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)
set_variable INPUT_FILE
o $QUALITY_ROOT d $DEBUG!JPlot1D f
Definition: JDataQuality.sh:66
exit
Definition: JPizza.sh:36
do echo Generating $dir eval DIR
Definition: JPlotNPE1D.sh:54
data_type r[M+1]
Definition: JPolint.hh:742
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 usage E
Definition: JMuonPostfit.sh:35
&set_array INPUT_FILES set_variable DETX_FILE
then echo
static const double C
Physics constants.
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null if do_usage *then usage $script< detector identifier > fi case set_variable DETECTOR_ID
Definition: JTDC.sh:11
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
Definition: JAcoustics.sh:20
do set_variable OUTPUT_DIRECTORY $WORKDIR T
then rm i $OUTPUT_FILE fi let RUN
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 JConvertDetectorFormat a $DETECTOR[1] o
then JFileTuna f $INPUT_FILE
Definition: file-Tuna.sh:66
&set_variable OUTPUT_FILE
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:47
then JCalibrateToT a
Definition: JTuneHV.sh:116
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 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:128
then cp
set_variable DETECTOR
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
Definition: JCanberra.sh:42
do echo Generating $dir eval D
Definition: JDrawLED.sh:53
version
Definition: JCalibratePMT.sh:7
*fatal Wrong option $OPTION
then $DIR JPlotNPE PDG P
Definition: JPlotNPE-PDG.sh:62