ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/RateMonShiftTool_dev/StreamMonitor.py
Revision: 1.7
Committed: Thu Oct 18 11:42:45 2012 UTC (12 years, 6 months ago) by grchrist
Content type: text/x-python
Branch: MAIN
CVS Tags: V00-02-06, V00-02-05, HEAD
Changes since 1.6: +14 -14 lines
Log Message:
Updates for deployment at P5 and added parking list

File Contents

# Content
1 from DatabaseParser import *
2
3 class StreamMonitor:
4 def getStreamACoreRatesByLS(self,parser,ls_list,config,isCol=True):
5 a_rates = parser.GetTrigRatesInLSRange('AOutput',ls_list) # AOutput = Parking trigs + core trig
6 prompt_a_rates = parser.GetTrigRatesInLSRange('DQMOutput',ls_list)
7 b_rates = parser.GetTrigRatesInLSRange('BOutput',ls_list) # BOutput = Parking trigs ps'd by 20
8 ps_columns = parser.GetPSColumnsInLSRange(ls_list)
9
10 HLT_Stream_A = {}
11 for ls in ls_list:
12 a_rate = a_rates.get(ls,0)
13 prompt_a_rate = prompt_a_rates.get(ls,0)*10
14 b_rate = b_rates.get(ls,0)*20
15 if isCol and (ps_columns.get(ls) != config.CircBeamCol):
16 HLT_Stream_A[ls] = prompt_a_rate
17 else:
18 HLT_Stream_A[ls] = a_rate - b_rate
19
20 return HLT_Stream_A
21
22
23 def getStreamARatesByLS(self,parser,ls_list):
24 a_rates = parser.GetTrigRatesInLSRange('AOutput',ls_list) # AOutput = Parking trigs + core trig
25
26 return a_rates
27
28 def compareStreamARate(self, config, curr_stream_a, ls_list,av_inst_lumi,in_coll):
29 if curr_stream_a > config.MaxStreamARate:
30 bad_stream_a = True
31 else:
32 bad_stream_a = False
33
34 ## if in_coll:
35 ## try:
36 ## pkl_file = open(config.FitFileName, 'rb')
37 ## fit_input = pickle.load(pkl_file)
38
39 ## pred_stream_a = fit_input['HLT_Stream_A'][1]+fit_input['HLT_Stream_A'][2]*av_inst_lumi+fit_input['HLT_Stream_A'][3]*av_inst_lumi*av_inst_lumi
40 ## sigma = fit_input['HLT_Stream_A'][5]
41
42 ## per_diff = (curr_stream_a - pred_stream_a)/pred_stream_a * 100
43 ## sigma_diff = (curr_stream_a - pred_stream_a)/sigma
44
45 ## if abs(sigma_diff) > config.DefAllowRateSigmaDiff*2 and config.DefWarnOnSigmaDiff:
46 ## bad_stream_a = True
47 ## if abs(per_diff) > config.DefAllowRatePercDiff and not config.DefWarnOnSigmaDiff:
48 ## bad_stream_a = True
49
50 ## except: #No fit for stream a; if one is desired, run DatabaseRatePredictor.py with a trigger list including 'HLT_Stream_A'
51 ## pass
52
53 return bad_stream_a