8 # ------------------------------------------------------------------------------------------
10 # Utility script to test JMuonPath on Monte Carlo true muons.
12 # ------------------------------------------------------------------------------------------
14 if [ -
z $JPP_DIR ];
then
15 echo "Variable JPP_DIR undefined."
19 source $JPP_DIR/setenv.sh $JPP_DIR
25 set_variable E_GEV 1e3
31 usage "$script <detector file> <input file> <output file> <option>"\
32 "\nPossible options: run, plot, clean."
35 if (( $# != 4 ));
then
36 fatal
"Wrong number of arguments."
44 if [[ !
"$OUTPUT_FILE" == *
"%"* ]];
then
45 fatal
"The output file must have the wildcard % in the name, e.g. %.root"
49 fatal
"Invalid option $OPTION."
59 $JPP_DIR/examples/JReconstruction/JMuonPath \
72 if [[ $OPTION ==
"plot" ]];
then
76 -
o postfit\[
path\].root \
81 -
f postfit\[
path\].root:hx \
83 -\^
"number of events [a.u.]" \
86 -
o angle.$FORMAT $BATCH
88 QUANTILES=
"0.33 0.5 0.66"
91 -
f postfit\[
path\].root:h2 \
93 -
o quantiles\[
path\].root
96 -
f quantiles\[
path\].root:h21 \
97 -\>
"number of modules" \
98 -\^
"resolution (reco muon) [deg]" \
102 -
o resolution.$FORMAT $BATCH
105 if [[ $OPTION ==
"clean" ]];
then
111 rm -
f resolution.$FORMAT
then usage $script< detector >< run >< outputfile > fi case set_variable OPTION
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR set_variable DEBUG set_variable PDF $JPP_DATA J p dat set_variable HISTOGRAM if do_usage *then usage $script< detector file >< inputfile >< outputfile > fi case set_variable PDF
Q(UTCMax_s-UTCMin_s)-livetime_s
then usage $script< input file >[option[primary[working directory]]] nWhere option can be E
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 fatal Wrong number of arguments fi JConvertDetectorFormat a o
do set_variable OUTPUT_DIRECTORY $WORKDIR T
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
$WORKDIR driver txt done cat $WORKDIR driver txt<< EOFprocess ${DATAFILTER}$FILTER_HOST csh-c '(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&(JDataFilter-H\$SERVER\$-M\$LOGGER\$-d $DEBUG-u ${DATAFILTER}-P $PORT</dev/null > &/dev/null &))';process ${DATAWRITER}$WRITER_HOST csh-c '(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&(JDataWriter-H\$SERVER\$-M\$LOGGER\$-d $DEBUG-u ${DATAWRITER}</dev/null > &/dev/null &))';print enterevent ev_init{RC_CMD}event ev_reset{RC_CMD}event ev_init{RC_CMD}event ev_configure{RC_DFLTR%<$WORKDIR/ev_configure_datafilter.txt > RC_DQSIM<$WORKDIR/ev_configure_dqsimulator.txt > RC_DWRT path
then JFileTuna f $INPUT_FILE
&set_variable OUTPUT_FILE
then JCookie sh JDataQuality D $DETECTOR_ID R
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
then usage $script[energy[distance[z of PMT]]] fi case set_variable z
then usage $script< input file >[option[primary[working directory]]] nWhere option can be N
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 JHobbit a $DETECTOR f
source $JPP_DIR setenv csh $JPP_DIR &dev null eval JShellParser o a A
*fatal Wrong option $OPTION
#define DEBUG(A)
Message macros.