Getting the L0 rates

  • Setup Moore with SetupProject or CMake
  • getpack TCK/L0TCK
  • make a new file in TCK/L0TCK/options
  • See e.g. L0DUConfig_July2015_0x0051.opts
  • Then add this to the list in TCK/L0TCK/options/L0DUConfig.opts
  • Then run the script below and look at the L0DUReportMonitor output in the log
  • There is some 25s NB data here /eos/lhcb/wg/HLT/BWdivData/Run0158045/

script to get L0 rates

from Gaudi.Configuration import *
from Configurables import L0App
L0App().TCK = '0x0052'
L0App().ReplaceL0Banks = True

L0App().EvtMax = 50000
from Configurables import CondDB
CondDB().IgnoreHeartBeat = True
CondDB().EnableRunChangeHandler = True
L0App().DDDBtag = "dddb-20150526"
L0App().CondDBtag = 'cond-20150617'
L0App().DataType = '2015'
# this is needed if you want to specify explicitely the L0 lookup table                                                                                                                                                                                         
from Configurables import L0Conf                                                                                                                                                                                                                               
L0Conf().L0MuonForceLUTVersion = "V7"                                                                                                                                                                                                                          

from Configurables import EventSelector
EventSelector().PrintFreq = 1000

# L0 filter                                                                                                                                                                                                                                                     
from Configurables import L0DUFromRawAlg
l0du_alg = L0DUFromRawAlg()

from Configurables import L0DUReportMonitor
l0du_mon = L0DUReportMonitor()

from Configurables import LoKiSvc
LoKiSvc().Welcome = False
from Configurables import LoKi__L0Filter
l0_filter = LoKi__L0Filter('L0Filter', Code = "L0_DECISION_PHYSICS")

# InputCopyStream                                                                                                                                                                                                                                               
filename = 'test'
from GaudiConf import IOHelper
from Configurables import InputCopyStream
input_copy = IOHelper().outputAlgs(filename + '.dst', InputCopyStream('CopyStream'), writeFSR = False)[0]

# for mdf output                                                                                                                                                                                                                                                
#from Configurables import LHCb__MDFWriter as MDFWriter                                                                                                                                                                                                         
#mdf_writer = MDFWriter('MDFWriter', Compress = 0, ChecksumType = 1, GenerateMD5 = True,                                                                                                                                                                        
#                       Connection = 'file://%s.mdf' % filename)                                                                                                                                                                                                

# Sequence                                                                                                                                                                                                                                                      
from Configurables import GaudiSequencer
from Gaudi.Configuration import ApplicationMgr
writer_seq = GaudiSequencer('WriterSeq')
writer_seq.Members = [l0du_alg, l0du_mon, l0_filter, input_copy]
ApplicationMgr().OutStream = [writer_seq]

# Timing table to make sure things work as intended                                                                                                                                                                                                             
from Configurables import AuditorSvc, LHCbTimingAuditor
ApplicationMgr().AuditAlgorithms = 1
if 'AuditorSvc' not in ApplicationMgr().ExtSvc:
AuditorSvc().Auditors.append(LHCbTimingAuditor(Enable = True))

-- Main.MikaVesterinen - 2015-08-23

Edit | Attach | Watch | Print version | History: r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r2 - 2015-12-17 - MikaVesterinen
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    LHCb All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback