Jpp
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
plot-equalizer.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 
18 
19 if ( do_usage $* ); then
20  usage "$script <detector file> (input file)+"
21 fi
22 
23 if (( $# < 2 )); then
24  fatal "Wrong number of arguments."
25 fi
26 
28 set_array INPUT_FILES $argv[2,-1]
29 
30 eval `JPrintDetector -a $DETECTOR -O SUMMARY`
31 
32 attach getModule -a $DETECTOR
33 
34 for STRING in $STRINGS[*]; do
35 
36  rm -f /tmp/H1-${(l:4::0::0:)STRING}_*.gif
37 
38  echo -n "Creating graphics for string ${(l:4::0::0:)STRING}:"
39 
40  set_variable FIRST_FLOOR 1
41 
42  for (( FLOOR = $FIRST_FLOOR; $FLOOR <= $LAST_FLOOR; FLOOR += 1 )); do
43 
44  echo -n " ${FLOOR}"
45 
46  sput $STRING $FLOOR
47  sget MODULE
48 
49  JPlot1D \
50  -f "${INPUT_FILES//root/root:H1\[${MODULE}\]}" \
51  -y "0.0 10.0" \
52  -\> "PMT" \
53  -\^ "rate [Hz]" \
54  -T "(${(l:4::0::0:)STRING},${(l:2::0::0:)FLOOR})" \
55  -o /tmp/H1-${(l:4::0::0:)STRING}_${(l:2::0::0:)FLOOR}.gif -B
56  done
57 
58  montage \
59  -tile 6x3 \
60  -geometry +0+0 \
61  /tmp/H1-${(l:4::0::0:)STRING}_*.gif \
62  H1-${(l:4::0::0:)STRING}.gif >& /dev/null
63 
64  echo
65 done
66 
67 
68 for STRING in $STRINGS[*]; do
69 
70  echo -n "Creating graphics for string ${(l:4::0::0:)STRING}"
71 
72  HISTOGRAMS=()
73 
74  for INPUT_FILE in $INPUT_FILES[*]; do
75 
76  set_variable TOKEN ${INPUT_FILE%%/*}
77  set_variable STRING_TXT /tmp/H0\[${TOKEN}\].txt
78  set_variable STRING_ROOT /tmp/H0\[${TOKEN}\].root
79 
80  rm -f $STRING_TXT $STRING_ROOT
81 
82  set_variable FIRST_FLOOR 1
83 
84  for (( FLOOR = $FIRST_FLOOR; $FLOOR <= $LAST_FLOOR; FLOOR += 1 )); do
85 
86  sput $STRING $FLOOR
87  sget MODULE
88 
89  set_variable P1 `JPrintResult -f "${INPUT_FILE}:H0\[${MODULE}\]" -F "GetMean"`
90  set_variable P2 0.0
91 
92  printf "%2d %7.3f %7.4f\n" $FLOOR $P1 $P2 >> $STRING_TXT
93 
94  done
95 
96  JGraph -f $STRING_TXT -o $STRING_ROOT
97 
98  HISTOGRAMS+=("${STRING_ROOT}:.*")
99 
100  done
101 
102  JPlot1D \
103  -f "$HISTOGRAMS[*]" \
104  -x "0.5 18.5" \
105  -y "6.0 8.0" \
106  -> "floor" \
107  -\^ "rate [Hz]" \
108  -T "${(l:4::0::0:)STRING}" \
109  -o H0-${(l:4::0::0:)STRING}.gif #-B
110 
111  echo
112 
113 done
114 
115 detach
set_variable DETECTOR
then usage for INPUT_FILE in $INPUT_FILES[*]
void set_variable(const std::string &name, const std::string &value)
Set environment variable.
do eval JCanberra a $DETECTOR f $INPUT_FILE o $WORKDIR canberra[${EMITTER}\] root T print_tripods V print_velocity E $EMITTER d $DEBUG!done HISTOGRAMS
clean eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY set_variable STRING
do rm f tmp H1
exit
Definition: JPizza.sh:36
do set_array DAQHEADER JPrintDAQHeader f
Definition: JTuneHV.sh:79
then echo
then fatal Invalid string $STRING
do set_variable OUTPUT_DIRECTORY $WORKDIR T
do $DIR JTransitTime o
Definition: JTransitTime.sh:44
* usage
then fatal Not enough arguments fi set_variable DETECTOR $argv[1] INPUT_FILES
*set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2,-2] set_variable OUTPUT_FILE $argv[-1]
Definition: JDomino.sh:39
then $JPP_DIR software JCalibrate JCalibrateToT a
Definition: JTuneHV.sh:108
alias put_queue eval echo n
Definition: qlib.csh:19
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
version
Definition: JCalibratePMT.sh:7
set_variable INPUT_FILE
then usage $script< detector file >< inputfile > fi case set_variable WORKDIR
Definition: JLegolas.sh:28
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null
const JModule & getModule(const JDetector &detector, const JModuleLocation &location)
find module with a given string and floor number
do eval JCanberra a $DETECTOR f $INPUT_FILE o $WORKDIR canberra[${EMITTER}\] root T print_tripods V print_velocity E $EMITTER d $DEBUG!done attach getModule a $DETECTOR typeset Z STRING typeset Z FLOOR set_variable FIRST_FLOOR for STRING in $STRINGS[*]
Definition: JCanberra.sh:55
esac done
Definition: JAddHDE.sh:21
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62