4 if [ -z $JPP_DIR ];
then
5 echo "Variable JPP_DIR undefined."
9 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/
null
18 usage "$script <string identifier> <detector file> (input file)+"
22 fatal
"Wrong number of arguments."
29 eval `JPrintDetector -
a $DETECTOR -O IDENTIFIER`
33 source JAcoustics.sh $DETECTOR_ID
37 if [[ -z
"${STRINGS[(r)$STRING]}" ]];
then
38 fatal
"Invalid string $STRING; "\
39 "possible values: ${STRINGS[*]}"
42 let AMAX=
"floor(1.0e+3 / $CAN_ZMAX_M) * 1.0e-3"
43 let BMAX=
"floor(1.5e-1 * $CAN_ZMAX_M) * 1.0e+1"
44 let DA=
"$AMAX * 2.0e-2"
45 let DB=
"$BMAX * 2.0e-2"
59 for ((
A = 0.0; $A <= $AMAX;
A += $DA ));
do
60 for (( B = 0.0; $B <= $BMAX; B += $DB ));
do
62 rm -
f $TMPDIR/katoomba.root
66 -
f "$INPUT_FILES[*]" \
67 -
o $TMPDIR/katoomba.root \
72 -@
$WORKDIR/acoustics_fit_parameters.txt \
78 if (( `JPrintResult -
f $TMPDIR/katoomba.root:chi2 -
F "GetSumOfWeights"` > 1.0 ));
then
80 set_array RESULT `JPrintResult -
f $TMPDIR/katoomba.root:chi2 -
F "GetMean" -
F "GetRMS / sqrt(GetSumOfWeights)"`
82 printf
"%7.5f %8.3f %7.3f %7.3f\n" $A $B $RESULT[*] >> $MECHANICS_TXT
then fatal No hydrophone data file $HYDROPHONE_TXT fi sort gr k
*set_variable DETECTOR_ID $argv[1] set_array RUNS $argv[2,-2]
clean eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY set_variable STRING
o $QUALITY_ROOT d $DEBUG!JPlot1D f
V(JDAQEvent-JTriggerReprocessor)*1.0/(JDAQEvent+1.0e-10)
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
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
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
then JConvertDetectorFormat a $DETECTOR[1] o
do sput $STRING $FLOOR sget MODULE INPUT_FILES
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 DETECTOR_TXT $WORKDIR detector
source $JPP_DIR setenv csh $JPP_DIR &dev null eval JShellParser o a A
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null