Jpp - the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
tripod-Z:fit.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 
12 set_variable WORKDIR ${ACOUSTICS_WORKDIR:-./}
13 set_variable BACKGROUND ${ACOUSTICS_BACKGROUND:+-B}
14 set_variable FORMULA "[0] + [1] * (sqrt(1.0 + 0.5*(x-[2])*(x-[2])/([3]*[3])) - 1.0)"
15 
16 if ( do_usage $* ); then
17  usage "$script <tripod identifier> [<tripod file>]"
18 fi
19 
20 if (( $# == 0 || $# > 2 )); then
21  fatal "Wrong number of arguments."
22 fi
23 
24 set_variable TRIPOD $argv[1]
25 
26 source JAcoustics.sh --
27 
28 CHECK_EXIT_CODE
29 
30 set_variable TRIPOD_TXT $WORKDIR/tripodz_${TRIPOD}.txt
31 set_variable TRIPOD_ROOT $WORKDIR/tripodz_${TRIPOD}.root
32 
33 if [[ ! -f $TRIPOD_TXT ]] then
34  fatal "No tripod data file $TRIPOD_TXT."
35 fi
36 
37 JGraph \
38  -f $TRIPOD_TXT \
39  -o $TRIPOD_ROOT
40 
41 sort -gr -k 2,2 $TRIPOD_TXT | tail -1 | read X Y EY
42 
43 JFit \
44  -f ${TRIPOD_ROOT}:\.\* \
45  -o $WORKDIR/fit.root \
46  -F "$FORMULA" \
47  -@ "p0 = $Y" \
48  -@ "p1 = 1.0" \
49  -@ "p2 = $X" \
50  -@ "p3 = 4.0" \
51  -d $DEBUG
52 
53 set_array P2 `JPrintFit -f $WORKDIR/fit.root:\.\* -@p2`
54 
55 printf "nominal %2d %7.3f %7.3f\n" $TRIPOD 0.0 `JPrintFit -f $WORKDIR/fit.root:\.\* -x " 0.0 "`
56 printf "optimal %2d %7.3f %7.3f\n" $TRIPOD $P2[1] `JPrintFit -f $WORKDIR/fit.root:\.\* -x "$P2[1]"`
57 
58 if (( $# == 2 )); then
59  JEditTripod -f $argv[2] -T "$TRIPOD add 0.0 0.0 $P2[1]"
60 fi
61 
62 mv $WORKDIR/fit.root $TRIPOD_ROOT
63 
64 JPlot1D \
65  -f $TRIPOD_ROOT:\.\* \
66  -\> "#Deltaz [m]" \
67  -\^ "#chi^{2}/NDF" \
68  -T "[$TRIPOD]" \
69  -o $WORKDIR/tripodz_${TRIPOD}.gif $BACKGROUND
70 
71 rm -f $TRIPOD_ROOT
void set_variable(const std::string &name, const std::string &value)
Set environment variable.
bool read(Vec &v, std::istream &is)
Read a Vec(tor) from a stream.
Definition: io_ascii.hh:141
then fatal No sound hydrophone file $HYDROPHONE_TXT fi JGraph f $HYDROPHONE_TXT o $HYDROPHONE_ROOT sort gr k
exit
Definition: JPizza.sh:36
do set_array DAQHEADER JPrintDAQHeader f
Definition: JTuneHV.sh:79
then fatal Wrong number of arguments fi set_variable STRING $argv[1] set_variable DETECTORXY_TXT $WORKDIR $DETECTORXY_TXT tail read X Y CHI2 RMS printf optimum n $X $Y $CHI2 $RMS awk v Y
then echo
do set_variable OUTPUT_DIRECTORY $WORKDIR T
do $DIR JTransitTime o
Definition: JTransitTime.sh:44
then awk F
* usage
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable ACOUSTICS_DEBUG
Definition: JAcoustics.sh:17
p2
Definition: module-Z:fit.sh:48
*set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2,-2] set_variable OUTPUT_FILE $argv[-1]
Definition: JDomino.sh:39
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:45
then display $WORKDIR
Definition: plot-Domino.sh:127
then fatal Wrong number of arguments fi set_variable TRIPOD $argv[1] source JAcoustics sh CHECK_EXIT_CODE set_variable TRIPOD_TXT $WORKDIR tripodz_
Definition: tripod-Z:fit.sh:30
script
Definition: JAcoustics.sh:2
then fatal Invalid tripod $TRIPOD
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
#define DEBUG(A)
Message macros.
Definition: JMessage.hh:62