Jpp  17.3.2
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
JCalibrateHeight.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 script=${0##*/}
3 
4 if [ -z $JPP_DIR ]; then
5  echo "Variable JPP_DIR undefined."
6  exit
7 fi
8 
9 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
10 
11 set_variable: DEBUG CALIBRATION_DEBUG 1
12 set_variable WORKDIR `pwd`
13 set_variable QUEUE_NAME ${TMPDIR:-/tmp}/queue
14 set_variable QUEUE_SIZE 3
15 
16 APPLICATIONS=(prefit simplex gandalf) # fit applications
17 
18 if do_usage $*; then
19  usage "$script <detector file> (input file)+"
20 fi
21 
22 if (( $# < 3 )); then
23  fatal "Not enough arguments."
24 fi
25 
27 
28 INPUT_FILES=($argv[2,-1])
29 
30 if ( ! is_CCLyon ); then
31 
32  # local batch processor
33 
34  source qlib.sh
35 
36  $JPP_DIR/examples/scripts/mkqueue.sh $QUEUE_NAME $QUEUE_SIZE continue
37 
38 else
39  fatal "The job submission should be changed for running in CC-Lyon."
40 fi
41 
42 if [[ $DETECTOR != *\.detx ]]; then
43  fatal "Invalid detector file <${DETECTOR}>."
44 fi
45 
46 # set path
47 
48 for (( i=1; i <= ${#INPUT_FILES}; i+=1 )); do
49 
50  set_variable INPUT_FILE ${INPUT_FILES[${i}]}
51 
52  if [[ -f `pwd`/$INPUT_FILE ]]; then
53  INPUT_FILES[${i}]=`pwd`/$INPUT_FILE
54  fi
55 done
56 
57 
58 for TIME_OFFSET_NS in +20.4; do
59  for MULTIPLICATION in 0.94 0.96 0.97 0.98 0.99 1.00 1.01 1.02 1.03 1.04 1.06; do
60 
61  set_variable OUTPUT_DIRECTORY $WORKDIR/T=${TIME_OFFSET_NS}:M=${MULTIPLICATION}
62 
63  mkdir -p -- $OUTPUT_DIRECTORY
64 
65  # detector calibration
66 
67  if [[ ! -f $OUTPUT_DIRECTORY/detector.detx ]]; then
68 
69  JEditDetector \
70  -a $DETECTOR \
71  -s "1 add $TIME_OFFSET_NS" \
72  -s "1 mul $MULTIPLICATION" \
73  -s "2 mul $MULTIPLICATION" \
74  -o $OUTPUT_DIRECTORY/detector.detx --!
75 
76  fi
77 
78  for FILE_NAME in $INPUT_FILES[*]; do
79 
81  set_variable INPUT_FILE ${FILE_NAME}
82  set_variable OUTPUT_FILE ${OUTPUT_DIRECTORY}/${${FILE_NAME##*/}/\.root/_${APP}.root}
83  set_variable BATCH_FILE ${OUTPUT_DIRECTORY}/${${FILE_NAME##*/}/\.root/.sh}
84 
85  rm -f $BATCH_FILE
86 
87  echo "#!/bin/zsh" >> $BATCH_FILE
88 
89  if [[ ! -f ${OUPUT_FILE} ]]; then
90 
91  # sequentially processing of applications
92 
93  for APP in $APPLICATIONS[*]; do
94 
95  set_variable OUTPUT_FILE ${OUTPUT_DIRECTORY}/${${FILE_NAME##*/}/\.root/_${APP}.root}
96 
97  echo "JARCA${(C)APP}.sh $OUTPUT_DIRECTORY/detector.detx $INPUT_FILE $OUTPUT_FILE >& /dev/null" >> $BATCH_FILE
98 
100 
101  done
102 
103  # cleanup
104 
105  for (( i=1; i < ${#APPLICATIONS}; i+=1 )); do
106 
107  set_variable APP ${APPLICATIONS[${i}]}
108  set_variable OUTPUT_FILE ${OUTPUT_DIRECTORY}/${${FILE_NAME##*/}/\.root/_${APP}.root}
109 
110  echo "rm -f $OUTPUT_FILE" >> $BATCH_FILE
111 
112  done
113 
114  echo "rm -f $BATCH_FILE" >> $BATCH_FILE
115 
116  # submit job
117 
118  chmod +x $BATCH_FILE
119  puts_queue $QUEUE_NAME $BATCH_FILE
120 
121  fi
122  done
123  done
124 done
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
then echo Submitting reweighting and histogram comparison jobs to nikhef stbc batch queue
o $QUALITY_ROOT d $DEBUG!CHECK_EXIT_CODE JPlot1D f
Definition: JDataQuality.sh:76
usr share Modules init zsh export TMPDIR
exit
Definition: JPizza.sh:36
then fatal Wrong number of arguments fi JConvertDetectorFormat a o
function puts_queue()
Definition: qlib.sh:34
then echo
do set_variable APP
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 echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR set_variable DEBUG set_variable WORKDIR if do_usage *then usage for INPUT_FILE in $INPUT_FILES[*]
then rm i $OUTPUT_FILE fi done for APP in $APPLICATIONS[*]
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 fatal The output file must have the wildcard in the e g root fi typeset A PARAMETERS typeset a APPLICATIONS APPLICATIONS
then JFileTuna f $INPUT_FILE
Definition: file-Tuna.sh:66
&set_variable OUTPUT_FILE
set_variable INPUT_FILE
do sput $STRING $FLOOR sget MODULE INPUT_FILES
Definition: JCanberra.sh:77
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
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 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
script
Definition: JAcoustics.sh:2
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null
esac done
Definition: JAddHDE.sh:21
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62