Jpp  15.0.3
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
JHobbit.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 script=${0##*/}
3 
4 if [ -z $JPP_DIR ]; then
5  echo "Variable JPP_DIR undefined."
6  exit
7 fi
8 
9 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
10 
11 set_variable: DEBUG CALIBRATION_DEBUG 1
12 set_variable WORKDIR ${TMPDIR:-/tmp}/
13 set_variable QUALITY "0.9 1.1"
14 set_variable CHI2 "0.0 2.0"
15 
16 if do_usage $*; then
17  usage "$script <detector file> (input file)+"
18 fi
19 
20 if (( $# < 2 )); then
21  fatal "Not enough arguments."
22 fi
23 
25 
26 INPUT_FILES=($argv[2,-1])
27 
28 typeset -A X_RANGE
29 
30 #X_RANGE+=(Gauss " -5.0 +5.0")
31 #X_RANGE+=(Landau " -5.0 +10.0")
32 X_RANGE+=(EMG "-10.0 +50.0")
33 #X_RANGE+=(BreitWigner "-15.0 +35.0")
34 
35 if [[ $DETECTOR != *\.detx ]]; then
36  fatal "Invalid detector file <${DETECTOR}>."
37 fi
38 
39 set_variable DETECTOR_NEW ${DETECTOR/.detx/_hobbit.detx}
40 
41 cp $DETECTOR $DETECTOR_NEW
42 
43 for FUNCTION T_NS in ${(kv)X_RANGE}; do
44 
45  JHobbit \
46  -f "$INPUT_FILES[*]" \
47  -a $DETECTOR_NEW \
48  -A \
49  -o $WORKDIR/hobbit\[${FUNCTION}\].root \
50  -F $FUNCTION \
51  -T "$T_NS" \
52  -d $DEBUG
53 
54  JTestRange1D \
55  -f $WORKDIR/hobbit\[${FUNCTION}\].root:hq \
56  -y "$QUALITY" \
57  -N 0 \
58  -d $DEBUG
59 
60  CHECK_EXIT_CODE
61 
62  JTestRange1D \
63  -f $WORKDIR/hobbit\[${FUNCTION}\].root:hc \
64  -y "$CHI2" \
65  -N 0 \
66  -d $DEBUG
67 
68  CHECK_EXIT_CODE
69 
70 done
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]
o $QUALITY_ROOT d $DEBUG!JPlot1D f
Definition: JDataQuality.sh:66
then JShowerPostfit f $INPUT_FILE o $OUTPUT_FILE N
exit
Definition: JPizza.sh:36
then echo
then fatal Invalid detector file<${DETECTOR}> fi set_variable DETECTOR_NEW
Definition: JHobbit.sh:39
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable
Definition: JAcoustics.sh:20
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 if do_usage *then usage $script[(input file)+] fi set_variable DEBUG set_variable WORKDIR TMPDIR
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable DEBUG set_variable WORKDIR
Definition: JLegolas.sh:20
then awk F
* usage
then JConvertDetectorFormat a $DETECTOR[1] o
do sput $STRING $FLOOR sget MODULE INPUT_FILES
Definition: JCanberra.sh:73
then echo Variable JPP_DIR undefined exit fi source $JPP_DIR setenv sh $JPP_DIR &dev null set_variable NORTH set_variable EAST set_variable SOUTH set_variable WEST set_variable E T_NS
Definition: JPrintPDF.sh:31
then JMuonMCEvt f $INPUT_FILE o $INTERMEDIATE_FILE d
Definition: JMuonPath.sh:47
then JCalibrateToT a
Definition: JTuneHV.sh:116
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
then display $WORKDIR
Definition: plot-Domino.sh:128
double Gauss(const double x, const double sigma)
Normalised Gauss function.
then cp
set_variable DETECTOR
do unset TRIPODS[${ID}] done fi set_variable TMPDIR $WORKDIR mkdir p $TMPDIR set_variable OUTPUT_FILE $TMPDIR katoomba root typeset a CHI2 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 source JAcoustics sh $DETECTOR_ID CHECK_EXIT_CODE typeset A TRIPODS get_tripods $WORKDIR tripod txt TRIPODS for EMITTER in
Definition: JCanberra.sh:42
source $JPP_DIR setenv csh $JPP_DIR &dev null eval JShellParser o a A
script
Definition: JAcoustics.sh:2
esac $JPP_BIN JLogger sh $LOGGER until pgrep JGetMessage</dev/null > dev null