7 # ------------------------------------------------------------------------------------------
9 # Utility script to plot fit results.
11 # ------------------------------------------------------------------------------------------
14 if [ -z $JPP_DIR ];
then
15 echo "Variable JPP_DIR undefined."
20 source $JPP_DIR/setenv.sh $JPP_DIR
23 # list of applications in the processing chain
25 APPLICATIONS=(prefit pointsimplex positionfit energyprefit directionprefit completefit)
36 usage "$script [input file [working directory [muons]]]"
46 # Number of prefits as a function of application (0 = all)
58 #
Fit application identifier
60 typeset -
A ENUMERATION
88 if [[ ! -
f $OUTPUT_FILE ]];
then
90 echo "************************************************ " $MUONS
91 if [[ -z $MUONS ]];
then
96 -
A ${ENUMERATION[${
APP}]} \
105 -
A ${ENUMERATION[${
APP}]} \
118 -
f $WORKDIR/jshowerpostfit\[completefit\].root:ha \
119 -\>
"angle wrt selected fermion [deg]" \
120 -\^
"number of events [a.u.]" \
131 for APP in prefit pointsimplex positionfit energyprefit directionprefit completefit;
do
145 -
f $WORKDIR/jshowerpostfit\[completefit\].root:ee \
148 -\>
"E_{true} [GeV]" \
149 -\<
"E_{fit} [GeV]" \
then usage $script< detector >< run >< outputfile > fi case set_variable OPTION
Q(UTCMax_s-UTCMin_s)-livetime_s
TFitResultPtr Fit(TH1D *h)
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR APPLICATIONS
o $QUALITY_ROOT d $DEBUG!JPlot1D f
then JShowerPostfit f $INPUT_FILE o $OUTPUT_FILE N
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
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
then JFileTuna f $INPUT_FILE
&set_variable OUTPUT_FILE
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
then usage $script< input_file >< detector_file > fi set_variable OUTPUT_DIR set_variable SELECTOR JDAQTimesliceL1 set_variable DEBUG case set_variable DEBUG
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
source $JPP_DIR setenv csh $JPP_DIR &dev null eval JShellParser o a A
then usage $script[input file[working directory[muons]]] fi case set_variable MUONS
*set_variable INPUT_FILE $argv[1,-2] set_variable OPTION $argv[-1] esac typeset A NUMBER_OF_FIT NUMBER_OF_FIT
then rm i $OUTPUT_FILE fi done for APP in $APPLICATIONS[*]