Changeset 19036
- Timestamp:
- 06/29/18 11:06:29 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/DataCheck/Tools/get_data.sh
r19035 r19036 78 78 function get_results() 79 79 { 80 # some basic query parts 81 82 # data check based on artificial trigger rate 83 #dch=" AND fR750Cor/fR750Ref >0.93 " 84 dch=" AND fR750Cor/fR750Ref BETWEEN 0.93 AND 1.3 " 80 # some query parts 81 82 # some numbers for flux calculation 83 crabflux="3.37e-11" 84 fluxprec=13 85 crabflux="3.37" 86 fluxprec=2 87 88 # some names and definitions needed several times below 85 89 # ontime 86 90 ontime1=" TIME_TO_SEC(TIMEDIFF(fRunStop,fRunStart))*fEffectiveOn " 87 91 ontime2=" fOnTimeAfterCuts " 88 92 ontimeif=" IF(ISNULL(fEffectiveOn), "$ontime2", "$ontime1") " 89 from=" FROM RunInfo LEFT JOIN "$table" USING (fNight, fRunID) " 90 # time range and source 91 where=" WHERE fSourceKey="$source" AND fNight BETWEEN "$nightmin" AND "$nightmax 92 where=$where" AND NOT ISNULL(fNumExcEvts) " 93 # some sanity checks 94 where=$where" AND fRunTypeKey=1 " 95 # zd cut 96 where=$where" AND fZenithDistanceMax < "$zdmax 97 # th cut 98 where=$where" AND fThresholdMedian < "$thmax 99 where=$where" "$dch 100 101 # 93 # zd and threshold 94 zenith="fZenithDistance" 95 thresh="IF(ISNULL(fThresholdMinSet),fThresholdMedian,fThresholdMinSet)" 96 # correction factor for excess rate (formula by TB) 97 correvts=" fNumExcEvts*(pow(cos("$zenith"Mean*PI()/180),3)+14.8/21.9*pow(sin(2*"$zenith"Mean*PI()/180),5))/((1-0.00124/1.21*("$thresh"-500)*("$thresh">=500))) " 98 # conversion to CU (determined by DD for QLA) 99 # https://www.fact-project.org/logbook/showthread.php?tid=4927 102 100 cufactor=" Avg(CUQLA(fNight)) " 103 crabflux="3.37e-11" 104 fluxprec=13 105 crabflux="3.37" 106 fluxprec=2 107 101 # some calculations 102 excerr="ExcErr(Sum(fNumSigEvts), SUM(fNumBgEvts))" 103 CU="SUM("$correvts"/CUQLA(fNight))/SUM("$ontimeif")*3600" 104 CUerr=$excerr"/SUM("$ontimeif")*3600*SUM("$correvts"/CUQLA(fNight))/SUM(fNumExcEvts)" 105 excerr2="ExcErr(SUM(o.sigevts),SUM(o.bgevts))" 106 CU2="SUM(o.corevts/o.cu)/SUM(o.ot)*3600" 107 CUerr2=$excerr2"/SUM(o.ot)*3600*SUM(o.corevts/o.cu)/(SUM(o.sigevts)-SUM(o.bgevts))" 108 109 # columns to be selected 110 # for night-binning 111 ontime=" ROUND(SUM("$ontimeif")/60., 1) AS ontime" 112 excrate=" ROUND(SUM(fNumExcEvts)/SUM("$ontimeif")*3600, 1) AS excrate" 113 significance="ROUND(LiMa(Sum(fNumSigEvts), SUM(fNumBgEvts)), 1) AS significance" 114 numexc="Sum(fNumExcEvts) AS numexc" 115 numsig="Sum(fNumSigEvts) AS numsig" 116 numbg="Sum(fNumBgEvts) AS numbg" 117 excrateerr=" ROUND("$excerr"/SUM("$ontimeif")*3600, 1) AS excrateerr" 118 correxcrate=" ROUND(SUM("$correvts")/SUM("$ontimeif")*3600, 1) AS correxcrate" 119 correxcrateerr=" ROUND("$excerr"/SUM("$ontimeif")*3600*SUM("$correvts")/SUM(fNumExcEvts), 1) AS correxcrateerr" 120 cu=" ROUND("$CU", 2) AS cu" 121 cuerr=" ROUND("$CUerr", 2) AS cuerr" 122 flux="ROUND("$CU" * "$crabflux", 2) AS flux" 123 fluxerr="ROUND("$CUerr" * "$crabflux", 2) AS fluxerr" 124 # for minute binning 125 ontime2=" ROUND(SUM(o.ot)/60., 1) AS ontime" 126 excrate2=" ROUND((SUM(o.sigevts)-SUM(o.bgevts))/SUM(o.ot)*3600, 1) AS excrate" 127 significance2=" ROUND(LiMa(SUM(o.sigevts),SUM(o.bgevts)), 1) AS significance" 128 numexc2="Sum(o.sigevts-o.bgevts) AS numexc" 129 numsig2="Sum(o.sigevts) AS numsig" 130 numbg2="Sum(o.bgevts) AS numbg" 131 excrateerr2=" ROUND("$excerr2"/SUM(o.ot)*3600, 1) AS excrateerr" 132 correxcrate2=" ROUND(SUM(o.corevts)/SUM(o.ot)*3600, 1) AS correxcrate" 133 correxcrateerr2=" ROUND("$excerr2"/SUM(o.ot)*3600*SUM(o.corevts)/(SUM(o.sigevts)-SUM(o.bgevts)), 1) AS correxcrateerr" 134 cu2=" ROUND("$CU2", 2) AS cu" 135 cuerr2=" ROUND("$CUerr2", 2) AS cuerr" 136 flux2="ROUND("$CU2" * "$crabflux", "$fluxprec") AS flux" 137 fluxerr2="ROUND("$CUerr2" *"$crabflux", "$fluxprec") AS fluxerr" 138 108 139 case $timeunit in 109 140 mjd) delta="(Mjd(MAX(fRunStop))-Mjd(Min(fRunStart)))/2" … … 141 172 ;; 142 173 esac 143 zenith="fZenithDistance" 144 thresh="IF(ISNULL(fThresholdMinSet),fThresholdMedian,fThresholdMinSet)" 145 # thomas correction factor 146 correvts=" fNumExcEvts*(pow(cos("$zenith"Mean*PI()/180),3)+14.8/21.9*pow(sin(2*"$zenith"Mean*PI()/180),5))/((1-0.00124/1.21*("$thresh"-500)*("$thresh">=500))) " 147 excerr="ExcErr(Sum(fNumSigEvts), SUM(fNumBgEvts))" 148 CU="SUM("$correvts"/CUQLA(fNight))/SUM("$ontimeif")*3600" 149 CUerr=$excerr"/SUM("$ontimeif")*3600*SUM("$correvts"/CUQLA(fNight))/SUM(fNumExcEvts)" 150 excerr2="ExcErr(SUM(o.sigevts),SUM(o.bgevts))" 151 CU2="SUM(o.corevts/o.cu)/SUM(o.ot)*3600" 152 CUerr2=$excerr2"/SUM(o.ot)*3600*SUM(o.corevts/o.cu)/(SUM(o.sigevts)-SUM(o.bgevts))" 153 154 ontime=" ROUND(SUM("$ontimeif")/60., 1) AS ontime" 155 excrate=" ROUND(SUM(fNumExcEvts)/SUM("$ontimeif")*3600, 1) AS excrate" 156 significance="ROUND(LiMa(Sum(fNumSigEvts), SUM(fNumBgEvts)), 1) AS significance" 157 numexc="Sum(fNumExcEvts) AS numexc" 158 numsig="Sum(fNumSigEvts) AS numsig" 159 numbg="Sum(fNumBgEvts) AS numbg" 160 excrateerr=" ROUND("$excerr"/SUM("$ontimeif")*3600, 1) AS excrateerr" 161 correxcrate=" ROUND(SUM("$correvts")/SUM("$ontimeif")*3600, 1) AS correxcrate" 162 # corerr = MMath::ErrorExc(excevtssum+bgevtssum, bgevtssum*5, 0.2)/ontimesum*3600.*corrate/excrate; 163 correxcrateerr=" ROUND("$excerr"/SUM("$ontimeif")*3600*SUM("$correvts")/SUM(fNumExcEvts), 1) AS correxcrateerr" 164 # correction on run basis 165 cu=" ROUND("$CU", 2) AS cu" 166 cuerr=" ROUND("$CUerr", 2) AS cuerr" 167 flux="ROUND("$CU" * "$crabflux", 2) AS flux" 168 fluxerr="ROUND("$CUerr" * "$crabflux", 2) AS fluxerr" 169 170 ontime2=" ROUND(SUM(o.ot)/60., 1) AS ontime" 171 excrate2=" ROUND((SUM(o.sigevts)-SUM(o.bgevts))/SUM(o.ot)*3600, 1) AS excrate" 172 significance2=" ROUND(LiMa(SUM(o.sigevts),SUM(o.bgevts)), 1) AS significance" 173 numexc2="Sum(o.sigevts-o.bgevts) AS numexc" 174 numsig2="Sum(o.sigevts) AS numsig" 175 numbg2="Sum(o.bgevts) AS numbg" 176 excrateerr2=" ROUND("$excerr2"/SUM(o.ot)*3600, 1) AS excrateerr" 177 correxcrate2=" ROUND(SUM(o.corevts)/SUM(o.ot)*3600, 1) AS correxcrate" 178 correxcrateerr2=" ROUND("$excerr2"/SUM(o.ot)*3600*SUM(o.corevts)/(SUM(o.sigevts)-SUM(o.bgevts)), 1) AS correxcrateerr" 179 cu2=" ROUND("$CU2", 2) AS cu" 180 cuerr2=" ROUND("$CUerr2", 2) AS cuerr" 181 flux2="ROUND("$CU2" * "$crabflux", "$fluxprec") AS flux" 182 fluxerr2="ROUND("$CUerr2" *"$crabflux", "$fluxprec") AS fluxerr" 183 174 175 # from and join of query 176 from=" FROM RunInfo LEFT JOIN "$table" USING (fNight, fRunID) " 177 178 # data check based on artificial trigger rate 179 # details see https://www.fact-project.org/logbook/showthread.php?tid=5790 180 #dch=" AND fR750Cor/fR750Ref >0.93 " 181 dch=" AND fR750Cor/fR750Ref BETWEEN 0.93 AND 1.3 " 182 183 # put together where-clause of query 184 # time range and source 185 where=" WHERE fSourceKey="$source" AND fNight BETWEEN "$nightmin" AND "$nightmax 186 where=$where" AND NOT ISNULL(fNumExcEvts) " 187 # some sanity checks 188 where=$where" AND fRunTypeKey=1 " 189 # zd cut 190 where=$where" AND fZenithDistanceMax < "$zdmax 191 # th cut 192 where=$where" AND fThresholdMedian < "$thmax 193 where=$where" "$dch 184 194 185 195 if [ $bin -le 0 ] … … 407 417 nightmin=20140714 408 418 nightmax=20140805 409 #get_results 419 get_results 420 421 bin=30 422 name="Mrk501_2014_forMAGIC30" 423 get_results 424 425 bin=0 426 name="P" 427 nightmin=20140501 428 nightmax=20140930 429 get_results 410 430 411 431 bin=20 … … 414 434 name="Mrk501_test" 415 435 get_results 416 417 #bin=30418 #name="Mrk501_2014_forMAGIC30"419 #get_results420 421 436 422 437
Note:
See TracChangeset
for help on using the changeset viewer.