4 if [ -z $JPP_DIR ];
then
5 echo "Variable JPP_DIR undefined."
9 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/
null
13 #set_variable FORMULA "[0] + [1] * log(1.0 + 0.5*(x-[2])*(x-[2])/([5]*[5]) + 0.5*(y-[3])*(y-[3])/([6]*[6]) + [4]*(x-[2])*(y-[3])/([5]*[6]))"
14 set_variable FORMULA "[0] + [1] * ((x-[2])*(x-[2])/([5]*[5]) + (y-[3])*(y-[3])/([6]*[6]) + [4]*(x-[2])*(y-[3])/([5]*[6]))"
19 usage "$script <string identifier> [<detector file>]"
22 if (( $# == 0 || $# > 2 ));
then
23 fatal
"Wrong number of arguments."
33 if [[ ! -
f $DETECTOR_TXT ]]
then
34 fatal
"No detector data file $DETECTOR_TXT."
41 sort -gr -
k 3,3 $DETECTOR_TXT | tail -1 |
read X Y Z RMS
56 END { print XMIN, XMAX, YMIN, YMAX }
58 if ( $1 < XMIN ) { XMIN = $1 }
59 if ( $1 > XMAX ) { XMAX = $1 }
60 if ( $2 < YMIN ) { YMIN = $2 }
61 if ( $2 > YMAX ) { YMAX = $2 }
65 if (( $X > $XMIN && $X < $XMAX && $Y > $YMIN && $Y < $YMAX ));
then
73 -
f ${DETECTOR_ROOT}:\.\* \
85 -
R "p2 = $XMIN $XMAX" \
86 -
R "p3 = $YMIN $YMAX" \
90 set_array P2 `JPrintFit -
f $WORKDIR/fit.root:user -@
p2`
91 set_array P3 `JPrintFit -
f $WORKDIR/fit.root:user -@
p3`
96 printf
"nominal %4d %7.3f %7.3f %7.3f\n" $STRING 0.0 0.0 `JPrintFit -
f $WORKDIR/fit.root:user -
x "0.0 0.0 "`
97 printf
"optimal %4d %7.3f %7.3f %7.3f\n" $STRING $X $Y `JPrintFit -
f $WORKDIR/fit.root:user -
x "$X $Y"`
103 echo "Optimum value at limit; -> no fit."
104 printf
"nominal %4d %7.3f %7.3f %7.3f\n" $STRING 0.0 0.0 `
awk -
v X=0.0 -
v Y=0.0
'{ if ($1 == X && $2 == Y) { print $3 }}' $DETECTOR_TXT`
105 printf
"optimal %4d %7.3f %7.3f %7.3f\n" $STRING $X $Y $Z
109 if (( $# == 2 ));
then
116 -s
"$STRING add 0.0 0.0 $X" \
117 -s
"$STRING mul $Y" \
124 -
f ${DETECTOR_ROOT}:\.\* \
then fatal Wrong number of arguments fi set_variable STRING $argv[1] set_variable DETECTOR_TXT $WORKDIR detectorzmul_
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]
then fatal No hydrophone data file $HYDROPHONE_TXT fi sort gr k
std::istream & read(std::istream &in, JTestSummary &summary, const char delimiter= ' ')
Read test summary.
clean eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY set_variable STRING
o $QUALITY_ROOT d $DEBUG!JPlot1D f
then JShowerPostfit f $INPUT_FILE o $OUTPUT_FILE N
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
fatal Invalid number of arguments esac let YMIN
then fatal Invalid string $STRING
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
do set_variable STRING_TXT awk
do set_variable OUTPUT_DIRECTORY $WORKDIR T
then break fi done getCenter read X Y Z let X
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DEBUG set_variable WORKDIR
then JConvertDetectorFormat a $DETECTOR[1] o
then usage $script[distance] fi case set_variable R
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
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
do set_variable MODULE getModule a $WORKDIR detector_a datx L $STRING JEditDetector a $WORKDIR detector_a datx M $MODULE setz o $WORKDIR detector_a datx JEditDetector a $WORKDIR detector_b datx M $MODULE setz o $WORKDIR detector_b datx done echo Output stored at $WORKDIR detector_a datx and $WORKDIR tripod_a txt JDrawDetector2D a $WORKDIR detector_a datx a $WORKDIR detector_b datx L BL o detector $FORMAT $BATCH JDrawDetector2D T $WORKDIR tripod_a txt T $WORKDIR tripod_b txt L BL o tripod $FORMAT $BATCH JCompareDetector a $WORKDIR detector_a datx b $WORKDIR detector_b datx o $WORKDIR abc root &dev null for KEY in X Y Z
do typeset Z STRING typeset Z FLOOR set_variable MODULE_TXT $WORKDIR $MODULE_TXT tail read X ZMAX RMS sort gr $MODULE_TXT tail read X ZMIN RMS echo $X $ZMIN $G1_TXT
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
Double_t g1(const Double_t x)
Function.