Table of Contents

Stripping

Idea

Stripping is the idea of only fully reconstructing interesting decays, which can easily be accessed afterwards. It can cause a lot of pain, though…

Documentation

A lot of documentation can be found under: https://twiki.cern.ch/twiki/bin/view/LHCb/LHCbStripping

How to get the name of the lines

To know how to access your line in your options file, you have to know the name of it. To find this out, do the following:

SetupProject DaVinci vXrYpZ
python
from StrippingSettings.Stripping12 import StreamCalibration
locations = {} 
for line in StreamCalibration.stream.lines :
   locations[ line.name()] = str(StreamCalibration.stream.name()) + '/' + str(line.outputLocation())
for line, loc in locations.iteritems() : 
   print line, loc

From Stripping 13 on, you have to do something like:

from StrippingSelections.Utils import buildStreams
streams = buildStreams('Stripping13')
 
for stream in streams:
    if(stream.name() == "Calibration"):
        for line in stream.lines :
           print line.name(), "\t", line.outputLocation()

How to access the event

To access the event, you have to set the correct path, f.ex:

MyParticles = DataOnDemand(Location = '/Event/Dimuon/Phys/DiMuonIncLine')

or you can set the RootInTES

MyParticles = DataOnDemand(Location = 'Phys/DiMuonIncLine')
MyGaudiSequence.RootInTES = "/Event/Dimuon"

Note that you should not set RootInTES in the stripping, as it can cause problems (but can be useful for debugging sometimes).

How to test stripping lines on the GRID

First you have to make sure, the SDSTs as well as the RAW files are accessible and are staged in (as in the test-samples). In ganga then you can do the following (in addition to the usual things):

j.inputdata = DaVinci().readInputData('/someDirectory/something_SDST.py')
j.inputdata.depth = 2

where it is crucial that you set j.inputdata.depth = 2 to make sure the RAW files can be accessed.