8source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
13set_variable: SNR ASTRONOMY_SNR 0.2
14set_variable: M_SIZE ASTRONOMY_M_SIZE 10000
15set_variable: NUISANCE ASTRONOMY_NUISANCE fixed fixed
16set_variable: FORMAT GRAPHICS_FORMAT gif
17set_variable+ BATCH GRAPHICS_BATCH -B
20 usage "$script <config file name for data> <config file name for pseudosets>"\
21 "\nThe histograms correspond to \"<file name>:<histogram name>\"."
25 fatal "Wrong number of arguments."
28set_variable CONFIG_DATA $argv[1]
29set_variable CONFIG_PSEUDO $argv[2]
33let "NUMBER_OF_TESTS = 100000"
35$JPP_DIR/examples/JAstronomy/JRealExperiment \
39 -d $DEBUG >& benchmark.data.log
41awk '/result:/ { print $(NF - 1) }' benchmark.data.log | read LIKELIHOOD_RATIO
42awk '/result:/ { print $(NF) }' benchmark.data.log | read SIGNAL
43awk '/upper limit:/ { print $(NF) }' benchmark.data.log | read UPPER_LIMIT
45SIGMA_UPPER_LIMIT=$(( $UPPER_LIMIT * sqrt(1.0 / ($NUMBER_OF_TESTS*1.0)*0.9/0.1) ))
47if (( $(echo "$LIKELIHOOD_RATIO <= 0" |bc -l) )); then
48 printf "Observed likelihood ratio:\t%1.2e\tsignal\t%1.2e\tUL =\t%1.2e\t+-\t%1.2e\n" $LIKELIHOOD_RATIO $SIGNAL $UPPER_LIMIT $SIGMA_UPPER_LIMIT
54if (( $LIKELIHOOD_RATIO > 0 )); then
56 #test p-value calculation: for a best fitted signal build pseudoexperiments with such a signal and find fraction of pex with TS > TS_observed
57 $JPP_DIR/examples/JAstronomy/JGen2 \
62 -Q $LIKELIHOOD_RATIO \
65 -d $DEBUG >& benchmark.$SIGNAL.log
67 awk '/Maximal probability:/ { print $(NF - 1) }' benchmark.$SIGNAL.log | read PCHECK
70 for (( ; 1 ; )); do # p-vale
71 $JPP_DIR/examples/JAstronomy/JGen2 \
76 -Q $LIKELIHOOD_RATIO \
79 -d $DEBUG >& benchmark.$H0.log
81 awk '/Maximal probability:/ { print $(NF - 1) }' benchmark.$H0.log | read P
83 if (( $P*($NUMBER_OF_TESTS*1.0) > 1.0e3 )); then
86 let "NUMBER_OF_TESTS *= 10"
90 STDERR=$(( sqrt($P/($NUMBER_OF_TESTS*1.0)) ))
92 printf "Observed likelihood ratio:\t%1.2e\tsignal\t%1.2e\tUL =\t%1.2e\t+-\t%1.2e\t-> P =\t%1.2e\t+-\t%1.2e\tn=\t%1.2e\tpcheck\t%1.2e\n" $LIKELIHOOD_RATIO $SIGNAL $UPPER_LIMIT $SIGMA_UPPER_LIMIT $P $STDERR $NUMBER_OF_TESTS $PCHECK