Jpp  16.0.2
the software that should make you happy
 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 
17 set_variable WORKDIR `pwd`
18 set_variable: FORMAT GRAPHICS_FORMAT gif
19 set_variable+ BATCH GRAPHICS_BATCH -B
20 
21 if do_usage $*; then
22  usage "$script <detector file> (input file)+"
23 fi
24 
25 if (( $# < 2 )); then
26  fatal "Wrong number of arguments."
27 fi
28 
30 set_array INPUT_FILES $argv[2,-1]
31 
32 eval `JPrintDetector -a $DETECTOR -O SUMMARY`
33 
34 kill_child_processes_at_exit
35 
36 attach getModule -a $DETECTOR
37 
38 for STRING in $STRINGS[*]; do
39 
40  rm -f ${TMPDIR:-/tmp}/H1-${(l:4::0::0:)STRING}_*.$FORMAT
41 
42  echo -n "Creating graphics for string ${(l:4::0::0:)STRING}:"
43 
45 
46  for (( FLOOR = $FIRST_FLOOR; $FLOOR <= $LAST_FLOOR; FLOOR += 1 )); do
47 
48  echo -n " ${FLOOR}"
49 
50  sput $STRING $FLOOR
51  sget MODULE
52 
53  JPlot1D \
54  -f "${INPUT_FILES//root/root:H1\[${MODULE}\]}" \
55  -y "0.0 10.0" \
56  -\> "PMT" \
57  -\^ "rate [Hz]" \
58  -T "(${(l:4::0::0:)STRING},${(l:2::0::0:)FLOOR})" \
59  -o ${TMPDIR:-/tmp}/H1-${(l:4::0::0:)STRING}_${(l:2::0::0:)FLOOR}.$FORMAT $BATCH
60  done
61 
62  montage \
63  -tile 6x3 \
64  -geometry +0+0 \
65  ${TMPDIR:-/tmp}/H1-${(l:4::0::0:)STRING}_*.$FORMAT \
66  H1-${(l:4::0::0:)STRING}.$FORMAT >& /dev/null
67 
68  echo
69 done
70 
71 
72 for STRING in $STRINGS[*]; do
73 
74  echo -n "Creating graphics for string ${(l:4::0::0:)STRING}"
75 
76  HISTOGRAMS=()
77 
78  for INPUT_FILE in $INPUT_FILES[*]; do
79 
80  set_variable TOKEN ${INPUT_FILE%%/*}
81  set_variable STRING_TXT ${TMPDIR:-/tmp}/H0\[${TOKEN}\].txt
82  set_variable STRING_ROOT ${TMPDIR:-/tmp}/H0\[${TOKEN}\].root
83 
84  rm -f $STRING_TXT $STRING_ROOT
85 
86  set_variable FIRST_FLOOR 1
87 
88  for (( FLOOR = $FIRST_FLOOR; $FLOOR <= $LAST_FLOOR; FLOOR += 1 )); do
89 
90  sput $STRING $FLOOR
91  sget MODULE
92 
93  set_variable P1 `JPrintResult -f "${INPUT_FILE}:H0\[${MODULE}\]" -F "GetMean"`
94  set_variable P2 0.0
95 
96  printf "%2d %7.3f %7.4f\n" $FLOOR $P1 $P2 >> $STRING_TXT
97 
98  done
99 
100  JGraph -f $STRING_TXT -o $STRING_ROOT
101 
102  HISTOGRAMS+=("${STRING_ROOT}:.*")
103 
104  done
105 
106  JPlot1D \
107  -f "$HISTOGRAMS[*]" \
108  -x "0.5 18.5" \
109  -y "6.0 8.0" \
110  -> "floor" \
111  -\^ "rate [Hz]" \
112  -T "${(l:4::0::0:)STRING}" \
113  -o H0-${(l:4::0::0:)STRING}.$FORMAT $BATCH
114 
115  echo
116 
117 done
118 
119 detach
do echo n Creating graphics for string $STRING HISTOGRAMS
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[*]
*set_variable DETECTOR_ID $argv[1] set_array RUNS $argv[2,-2]
Definition: JDataQuality.sh:24
clean eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY set_variable STRING
o $QUALITY_ROOT d $DEBUG!JPlot1D f
Definition: JDataQuality.sh:66
exit
Definition: JPizza.sh:36
then echo
do JCanberra a $DETECTOR f $INPUT_FILE o $WORKDIR canberra[${EMITTER}\] root T $WORKDIR tripod txt V $WORKDIR sound_velocity txt M $WORKDIR mechanics txt H $WORKDIR hydrophone txt E $EMITTER $DISABLE d $DEBUG!done kill_child_processes_at_exit attach getModule a $DETECTOR typeset Z STRING typeset Z FLOOR for STRING in $STRINGS[*]
Definition: JCanberra.sh:64
const int n
Definition: JPolint.hh:676
then fatal Invalid string $STRING
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
Definition: JAcoustics.sh:20
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR if do_usage *then usage $script[(input file)+] fi set_variable DEBUG set_variable WORKDIR TMPDIR
*fatal Wrong number of arguments esac eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY set_variable FIRST_FLOOR
do set_variable OUTPUT_DIRECTORY $WORKDIR T
set_variable NUMBER_OF_ITERATIONS set_variable EPSILON cat acoustics_fit_parameters txt<< EOF $CONFIGURATION[*]Nmin=3;sigma_s=100.0e-6;stdev=10.0;mestimator=0;fixStrings=0;EOF for STRING in $STRINGS[*];do#fit stretching and(z) position of given string set_variable DETECTOR_TMP ${TMPDIR:-/tmp}/detector_A.datx JEditDetector-a $DETECTOR-o $DETECTOR_TMP-r $STRING JEditDetector-a $DETECTOR-o $DETECTOR-k $STRING for MUL in 0.005 0.001;do DX_M=0.2 for((N=0;$N< $NUMBER_OF_ITERATIONS;++N));do CHI2[3]=$CHI2[1] fitPositionOfString $STRING Z $DX_M fitStretchingOfString $STRING $MUL if(($CHI2[3]-$CHI2[1]< $EPSILON));then break fi done if(($N >=$NUMBER_OF_ITERATIONS));then printf"warning: reached maximum number of iterations %d - converenge %7.3f\n"$N $(($CHI2[3]-$CHI2[1])) fi done JMergeDetector-a $DETECTOR-a $DETECTOR_TMP-o $DETECTOR rm-f $DETECTOR_TMP JConvertDetectorFormat-a $DETECTOR-o $DETECTOR-r-d 0 > &dev null done
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
set_variable INPUT_FILE
do sput $STRING $FLOOR sget MODULE INPUT_FILES
Definition: JCanberra.sh:73
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
set_variable 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
version
Definition: JCalibratePMT.sh:7
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