Home » Software Tools » LCIO » Vertex class
Re: Vertex class [message #473 is a reply to message #472 ] Tue, 16 May 2006 08:16 Go to previous messageGo to previous message
gaede
Messages: 177
Registered: January 2004
Location: DESY, Hamburg
To ease the discussion in the forum I am positing here a copy of Sonja's document:

PROPOSAL FOR EXTENSION OF LCIO (version 1, 14th May 2006)

Implementation of a new Vertex class with the following structure is proposed:
Vertex class:
+~Vertex()
+getMomentum() : const float*
+getMass() : float
+getCharge() : float
+getPosition() : const FloatVec&
+getCovMatrix() : const FloatVec&
+getChi2() : float
+getProbability() : float
+getDistanceToPreviousVertex() : float
+getErrorDistanceToPreviousVertex() : float
+getParameters() : const LCParameters&
+getTracks() : const TrackVec&
+addTrack() : void
+getPreviousVertex() : Vertex&


Additionally, we ask for adding the following two methods to the ReconstructedParticle class:

+getVertices() : const VertexVec&
+addVertex() : void


Other output from the LCFI Vertex Package, relating to jets, can be stored within the existing structure implemented by the ReconstructedParticle class. Variables that used to be provided by the FORTRAN code would be made accessible using the getParameters() method of the ParticleID object returned by each ReconstructedParticle.

As suggested by Frank Gaede, input variables for the flavour tag would be stored in an LCGenericObject collection, running parallel to the collection of jets (or LCGenericObject instances, linked to the respective jet by LCRelation objects).

An additional ParticleID object attached to the ReconstructedParticle used for the jet would hold the neural net flavour tags and an identifier for the networks used to obtain these tags, which would refer to a database of neural nets to be made available on the web.


QUESTIONS

1) Rather than using methods getDistanceToPreviousVertex. getErrorDistanceToPreviousVertex, it would in principle be preferable to provide methods
+getDistanceToVertex( Vertex& ) : float and 
+getErrorDistanceToVertex( Vertex& ) : float

It is unclear to us, whether that would be compatible with the approach of LCIO, which in the first place seems to provide storage classes.

2) Similarly, one might in principle want to remove tracks from a vertex object. We have not included a method to do this in the current proposal, since there does not seem to be anything equivalent for the existing LCIO classes, but would welcome advice on this point.

Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic:LCParameters FORTRAN support
Next Topic:LCIO v01-08 released
Goto Forum:
  


Current Time: Mon Feb 20:16:28 Pacific Standard Time 2010
.:: Contact :: Home ::.

Powered by: FUDforum 2.7.6.
Copyright ©2001-2006 FUD Forum Bulletin Board Software