DaVinci status Juan Palacios LHCb Software Week 16-20 March, 2009.

8
DaVinci status Juan Palacios LHCb Software Week 16-20 March, 2009

Transcript of DaVinci status Juan Palacios LHCb Software Week 16-20 March, 2009.

Page 1: DaVinci status Juan Palacios LHCb Software Week 16-20 March, 2009.

DaVinci status

Juan Palacios

LHCb Software Week

16-20 March, 2009

Page 2: DaVinci status Juan Palacios LHCb Software Week 16-20 March, 2009.

17/3/09 Juan Palacios - NIKHEF 2

DaVinci v22r1

• DV v22r1released on 3rd March, 2009– Important bug-fixes– Tidy-up of configurables– CommonParticles in python– DecayTreeTuple re-structuring– Rich monitoring packages

• In the pipeline for DV v22r2– Automatic PV re-fitting– Particle -> MCParticle association

Page 3: DaVinci status Juan Palacios LHCb Software Week 16-20 March, 2009.

17/3/09 Juan Palacios - NIKHEF 3

DV v22r1 bug fixes

• Particle -> “best” PV relations– In some cases, wrong relation was stored when

creating particle in CombineParticles• Interplay of specialised memory allocators for event model

classes, on-demand nature of “best” PV getting

– Crash in cloneTrees• Stupid bug in cloning of Particle->PV relations tables

– Thanks to Patrick Spradlin for finding and acturately reporting both

• TrgVertexFitter (Patrick K)– Fixed treatment of vertexing neutrals

• Phi-gamma, pi0

Page 4: DaVinci status Juan Palacios LHCb Software Week 16-20 March, 2009.

17/3/09 Juan Palacios - NIKHEF 4

Aside: Particle->PV

• Particle -> PV relating has been restructured– Calculating and storing of P->PV relation de-coupled– Possible to run P -> PV relating logic independent of

what has been run before and without exporting the info• Operations on non-saved particles should probably use this to

be safe (the source of our previous problems)

– Old-style “Smart” method still possible • For particles that are going to be saved, hence used by other

algorithms

– Remember: the relators are now stand-alone, need no configuration, so the relating logic can even be run in GaudiPython on a DST, or on a MicroDST if all the PVs are there)

Page 5: DaVinci status Juan Palacios LHCb Software Week 16-20 March, 2009.

17/3/09 Juan Palacios - NIKHEF 5

CommonParticles

• All pythonified by Vanya & PK– Load python modules with standars particles names:

import ComonParticles.StdLoosePions # etc.

– StandardBasic and StandardIntermetiate loaded automatically by AnalysisConf

– But what’s in there? Can print the summary information from the given file without Gaudi:

% python $COMMONPARTICLESROOT/python/CommonParticles/StandardBasic.py

– In GaudiPython:import CommonParticles.Utils as CPUtilsImport CommonParticles.StandardIntermediatelocations = CPUtils.particles() # get the map of locationsprint CPUtils.locationsDoD( locations ) # print them

Page 6: DaVinci status Juan Palacios LHCb Software Week 16-20 March, 2009.

17/3/09 Juan Palacios - NIKHEF 6

DecayTreeTuple

• DecayTreeTuple re-structuring (Patrick K)– DecayTreeTuple templated

• Allows making MCParticle trees similarly to Particle trees

– EventTreeTuple supports making of ETC• See this morning’s tutorial by Patrick

Page 7: DaVinci status Juan Palacios LHCb Software Week 16-20 March, 2009.

17/3/09 Juan Palacios - NIKHEF 7

In the pipeline for v22r2

• PV-refitting / best PV merge– PVs will be re-fitted when the “best” PV of a

Particle is asked for– The best re-fitted PV and the relation will be saved

if the Particle is kept– The original PVs are accessible, as before– In CVS, controlled with ReFitPVs bool property of

DVALgorithm• Implemented in DVAlgorithm, which is in LHCb. Bug-fix

didn’t make it in time.• De-couple DVAlgorithm implementation using pimpl

idiom

Page 8: DaVinci status Juan Palacios LHCb Software Week 16-20 March, 2009.

17/3/09 Juan Palacios - NIKHEF 8

In the pipeline for v22r2

• Particle -> MCParticle association (Vava, Juan)– Simple tool interfaces

• Knows nothing about particle type• Disagreement on meaning of “simple”. Maybe provide

separate“expert” interface for association tuning?

– Simple to use implementations• Avoid tool configuration parameters• Do not export internal details to client code• Can this apply to “expert” interface too?

– More details tomorrow!

• MicroDST configurable– Currently users need to hack example script– Ease making of MicroDST with different selections