UNFINISHED - As long as this site is unfinished, you can find instructions in the attached talk
LHCb Stripping FAQ - Re-Stripping of MC in MicroDST format
Restrictions
In the case where your MC is persisted in the DST format, reconstruction information of the entire event is saved.
This is not the case for
MicroDST MC. It is unlikely, that re-stripping will result in the same data-sample that you would have got if you applied your stripping line during production. However, there is an algorithm in the
MicroDST production that copies reconstruction information matched to signal MC-Particles.
To check whether that algorithm ran during your production, see DUMMY.
It is important to note that the candidates you can get out of your MicroDST either passed any stripping line or are truth-matched (associated to the signal MC particles). This is different to DST, where you can in principal get every candidate.
All calculation requiring information of more than the candidate only, like Isolation variables in
RelatedInfoTools, cannot be performed during
MicroDST Re-stripping and must be left out.
How To
Firstly, one has to check whether that algorithm ran during the production. Therefore, look at the Option files of your production (can be found in the
bookkeeping
) and check whether the "isMC" flag is set to true in stripMicroDSTElements and in stripMicroDSTStreamConf in the
SelDSTWriter algorithm. In most cases the Writer is defined in
"$APPCONFIGOPTS/DaVinci/DV-Stripping-MC-muDST.py".
Check out Packages
To make the necessary changes to your stripping line (remove
RelatedInfoTools and such, changing cuts), check out the
right DaVinci and your desired stripping package (
StrippingSelections or
StrippingArchive). My example will use
StrippingSelections, which should be equivalent to
StrippingArchive if you checkout the right version of stripping (see
release notes
of your
DaVinci version).
lb-dev DaVinci/vXXrXpX
cd ./DaVinciDev_vXXrXpX
git lb-use Stripping
git lb-checkout Stripping/vXXrXXpX Phys/StrippingSelections
Next up, you also need to checkout
CommonParticles (
CommonParticlesArchive):
git lb-use Phys
git lb-checkout Phys/vXXrXXpX Phys/CommonParticles
Making the necessary changes
self.phi2MuMuControlLine = StrippingLine(PhimumuControl_name+'Line',
prescale = config['Phi2MuMuControlPrescale'],
postscale = config['Postscale'],
RelatedInfoTools = config['RelatedInfoTools_Phi2MuMuControl'],
MDSTFlag = False,
#RequiredRawEvents = ['Velo', 'Muon', 'Calo'],
algos = [ self.selPhi2MuMuControl ]
)
--
NiklasStefanNolte - 2018-02-20