8 # ------------------------------------------------------------------------------------------
10 # Utility script to test JMatrixNZ on Monte Carlo true muons.
12 # ------------------------------------------------------------------------------------------
15 if [ -z $JPP_DIR ];
then
16 echo "Variable JPP_DIR undefined."
21 source $JPP_DIR/setenv.sh $JPP_DIR
30 set_array ANGLES_DEG 0 1 2 3 4 5
33 usage "$script <option>"\
34 "\nPossible options: run, plot, clean."
38 if (( $# != 1 ));
then
39 fatal
"Wrong number of arguments."
45 fatal
"Invalid option $OPTION."
55 trigger3DMuon.enabled = 1;
56 trigger3DMuon.numberOfHits = 5;
57 trigger3DMuon.gridAngle_deg = 1;
66 for ((
i = 1;
$i <= $NUMBER_OF_RUNS; ++
i));
do
71 INPUT_FILES+=(
$WORKDIR/trigger_efficiency_${
i}.root)
81 $JPP_DIR/examples/JReconstruction
93 if [[ $OPTION ==
"plot" ]];
then
100 -
f"$WORKDIR/matrix["${^ANGLES_DEG}
" deg].root:${H1}" \
104 -\^
"number of events [a.u.]" \
115 -
f"$WORKDIR/matrix["${^ANGLES_DEG}
" deg].root:${H1}" \
119 -\^
"number of events [a.u.]" \
121 -
o prob-${H1}.$FORMAT --! $BATCH
126 if [[ $OPTION ==
"clean" ]];
then
then usage $script< detector >< run >< outputfile > fi case set_variable OPTION
then usage $script< detector identifier >< startdate\"YYYY-MM-DDHH:MM:SS\"><finaldate\"YYYY-MM-DDHH:MM:SS\"><QA/QCfile> fi case set_variable QAQC_TXT $argv[4]
then usage $script< input file >< inputfile > fi case set_variable ANGLE_DEG
then JLigier sh continue fi cat
o $QUALITY_ROOT d $DEBUG!CHECK_EXIT_CODE JPlot1D f
usr share Modules init zsh export TMPDIR
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
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
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DEBUG set_variable WORKDIR
&set_variable OUTPUT_FILE
do JSirene sh $DETECTOR $JPP_DATA genhen km3net_wpd_V2_0 evt gz $WORKDIR sirene_
do sput $STRING $FLOOR sget MODULE INPUT_FILES
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 if[[!-f $DETECTOR]] then JDetector sh $DETECTOR fi cat $WORKDIR trigger_parameters txt<< EOFtrigger3DMuon.enabled=1;trigger3DMuon.numberOfHits=5;trigger3DMuon.gridAngle_deg=1;ctMin=0.0;TMaxLocal_ns=15.0;EOF set_variable TRIGGEREFFICIENCY_TRIGGERED_EVENTS_ONLY INPUT_FILES=() for((i=1;$i<=$NUMBER_OF_RUNS;++i));do JSirene.sh $DETECTOR $JPP_DATA/genhen.km3net_wpd_V2_0.evt.gz $WORKDIR/sirene_ ${i}.root JTriggerEfficiency.sh $DETECTOR $DETECTOR $WORKDIR/sirene_ ${i}.root $WORKDIR/trigger_efficiency_ ${i}.root $WORKDIR/trigger_parameters.txt $JPP_DATA/PMT_parameters.txt INPUT_FILES+=($WORKDIR/trigger_efficiency_ ${i}.root) done for ANGLE_DEG in $ANGLES_DEG[*];do set_variable SIGMA_NS 3.0 set_variable OUTLIERS 3 set_variable OUTPUT_FILE $WORKDIR/matrix\[${ANGLE_DEG}\deg\].root $JPP_DIR/examples/JReconstruction-f"$INPUT_FILES[*]"-o $OUTPUT_FILE-S ${SIGMA_NS}-A ${ANGLE_DEG}-O ${OUTLIERS}-d ${DEBUG}--!fiif[[$OPTION=="plot"]];then if((0));then for H1 in h0 h1;do JPlot1D-f"$WORKDIR/matrix["${^ANGLES_DEG}" deg].root:${H1}"-y"1 2e3"-Y-L TR-T""-\^"number of events [a.u.]"-> o chi2
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 JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
*fatal Wrong option $OPTION
#define DEBUG(A)
Message macros.