예제 #1
0
    def _configureInput(self):
        """
        Tune initialisation 
        """

        # Input data type
        inputType = self.getProp("InputType").upper()

        # Get the event time (for CondDb) from ODIN
        from Configurables import EventClockSvc
        EventClockSvc().EventTimeDecoder = "OdinTimeDecoder"

        # if property set explcicitly - use it!
        if self.isPropertySet('EnableUnpack'):
            unPack = self.getProp('EnableUnpack')
            DstConf(EnableUnpack=unPack)
            PhysConf(EnableUnpack=unPack)
        elif inputType != "MDF":
            defaultUnpacking = ["Reconstruction", "Stripping"]
            DstConf(EnableUnpack=defaultUnpacking)
            PhysConf(EnableUnpack=defaultUnpacking)
        if inputType != "MDST":
            if self.getProp("Simulation"):
                DstConf().setProp("SimType", "Full")
        return inputType
예제 #2
0
    def _init(self):
        from Configurables import (PhysConf, AnalysisConf)

        inputType = self.getProp("InputType").upper()

        initSeqs = []

        if ((inputType != 'MDST') & (inputType != "MDF") &
            (inputType != "DIGI")):
            physinit = PhysConf().initSequence()  # PhysConf initSequence
            # Analysis
            AnalysisConf().RedoMCLinks = self.getProp("RedoMCLinks")
            analysisinit = AnalysisConf().initSequence()
            initSeqs = [physinit, analysisinit]
#        if inputType == 'RDST' :
#            log.info('Setting HltDecReportsDecoders RawEventLocations to ["pRec/RawEvent"]')
#            from DAQSys.Decoders import DecoderDB
#            from DAQSys.DecoderClass import decodersForBank
#            for bank in ["Sel","Dec","Vertex","Track"]:
#                for d in decodersForBank(DecoderDB,"Hlt"+bank+"Reports"):
#                    d.overrideInputs("pRec/RawEvent")
#                    #d.setup()
#            from Configurables import ANNDispatchSvc
#
#            ANNDispatchSvc().RawEventLocation = "pRec/RawEvent"

        return GaudiSequencer('DaVinciEventInitSeq',
                              Members=initSeqs,
                              IgnoreFilterPassed=True)
 def _fixMCDATAConfig():
     #from Configurables import DaVinci
     from Configurables import PhysConf
     #if (DaVinci().getProp("Simulation")):
     if (PhysConf().getProp("Simulation")):
         from Gaudi.Configuration import allConfigurables
         for c in allConfigurables.values():
             if hasattr(c, "MC_recovery"):
                 c.MC_recovery = True
예제 #4
0
 def _configureSubPackages(self):
     """
     Define DB and so on
     """
     # Delegate handling to LHCbApp configurable
     self.setOtherProps(LHCbApp(), [
         "DataType", "CondDBtag", "DDDBtag", "DQFLAGStag", "Simulation",
         "IgnoreDQFlags"
     ])
     self.setOtherProps(
         PhysConf(), ["DataType", "Simulation", "InputType", "Detectors"])
     self.setOtherProps(AnalysisConf(), ["DataType", "Simulation"])
     self.setOtherProps(DstConf(), ["DataType"])
예제 #5
0
appMgr = ApplicationMgr()
appMgr.OutputLevel = 6
appMgr.ExtSvc += [ 'ToolSvc', 'AuditorSvc' ]

appMgr.HistogramPersistency = "ROOT"
ntSvc = NTupleSvc()
appMgr.ExtSvc += [ ntSvc ]

from Configurables import ( LHCbApp, PhysConf, AnalysisConf,
                            DstConf, LumiAlgsConf, DDDBConf )

#LHCbApp().DDDBtag   = "dddb-20150724"
#LHCbApp().CondDBtag = "cond-20150805"

# Can be enabled for next full stack release
PhysConf().OutputLevel     = appMgr.OutputLevel
#AnalysisConf().OutputLevel = appMgr.OutputLevel

datatype =  "2015"
PhysConf().DataType      = datatype
AnalysisConf().DataType  = datatype
LumiAlgsConf().DataType  = datatype
DDDBConf().DataType      = datatype

inputType = "DST"
LumiAlgsConf().InputType = inputType
PhysConf().InputType     = inputType

unPack = ["Reconstruction"]
PhysConf().EnableUnpack = unPack
DstConf().EnableUnpack  = unPack
예제 #6
0
# Rerun PID Reco + Remake ProtoParticles
#================================================================
from Configurables import (DaVinci, RecSysConf, GaudiSequencer, ProcessPhase,
                           PhysConf)

from STTools import STOfflineConf
STOfflineConf.DefaultConf().configureTools()

# Create the top level Conf object and set some general options from DV
rConf = RecSysConf("RecSysConf")
DaVinci().setOtherProps(rConf, ["Simulation", "DataType"])

# Only run PID + Protoparticles
rConf.RecoSequence = ["CALO", "PROTO"]
rConf.SkipTracking = True
PhysConf().CaloReProcessing = True

# list of algs to prepend to DV
palgs = []

# Create the Reco process phase
reco = ProcessPhase("Reco")
palgs += [reco]

# Re-pack the new CALO output
from Configurables import CaloDstPackConf
caloPackSeq = GaudiSequencer("CaloPacking")
caloPack = CaloDstPackConf(Enable=True)
caloPack.Sequence = caloPackSeq
caloPack.AlwaysCreate = True
caloPack.EnableChecks = False
예제 #7
0
ApplicationMgr().ExtSvc += [ 'DataOnDemandSvc' ]

if options.data:
    importOptions(options.data)

## Moore settings
app = LHCbApp()
app.EvtMax = options.nevents
app.CondDBtag = 'sim-20131023-vc-md100'
app.DDDBtag = 'dddb-20130929-1'
app.DataType   = '2015'
app.Simulation = True

ApplicationMgr().HistogramPersistency = "ROOT"

PhysConf(EnableUnpack = ["Reconstruction", "Stripping"])
DstConf(EnableUnpack = ["Reconstruction", "Stripping"])
if app.getProp('Simulation'):
    from Configurables import SimConf
    SimConf(EnableUnpack = True, EnablePack = False)

EventSelector().PrintFreq = 100

eos_dir = '/eos/lhcb/grid/prod/lhcb/MC/Dev/XDST/00034704/0000'
p = subprocess.Popen(['/afs/cern.ch/project/eos/installation/0.3.15/bin/eos.select', 'ls', eos_dir],
                     stdout = subprocess.PIPE, stderr = subprocess.STDOUT)
o, e = p.communicate()
input_files = sorted(['root://eoslhcb.cern.ch/' + os.path.join(eos_dir, f.strip()) for f in o.split()])

seq = GaudiSequencer( "TopSequence" )