Minutes of the Monday Meeting, May 7, 2007.

Rob's Editorial comments are in italics.

When: Monday 1:30 PM
Present: Norman, Caroline, Dima, Hans, Jeremy, Rob, Tim, Jeremy

Candidate goals for this Week

This was copied from the whiteboard:

  1. Define classes for tracking infrastructure
  2. Define a cheater for SimTrackHit to whatever it is that is used as input for pattern recognition.
  3. Re: links back and forth between Geometry and TrackerHits
  4. Re: Forward geometry.
  5. How does the above affect tracking algorithms?

Dima's Geometry System

Dima showed some slides that were circulated by email.

The code discussed in these slides is available in: org.lcsim.contrib.onoprien.tracking.*

The original motivation for this code was for calorimeter assisted tracking in the forward region. The code uses both 1D and 2D readout. The code was developed some time ago but he has recently resurrected it.

When Dima wrote this code the geometry system was missing a lot of functionality. So he created it. With the recent work of Tim and Jeremy we have a much more functional geometry system. We now need to understand how to get one system from these two and make sure that it addresses everyone's needs.

Hans asked if this code supports alignment? Answer: it does not but it could.

Dima's code is flexible enough to store either hits on the cylindrical detector or hits on a polyhedral detector.

During the discussion it became clear that the word "Segmentation" was used in 2 different ways by various people in the room:

Aside: Another word that was used during the discussion, but not in Dima's talk, is "virtual segmentation". In this usage, segmentation is real if an object exists in the geometry system for each segment; for example there is an object to represent each wafer, about 10,000 to 20,000 in the vertex+tracking detectors. This, however, is not a practical solution for representing indvidual strips and pixels as there are too many of them. Instead there are objects that can compute which pixels or strips are hit given the intersection of a track with a silicon wafer; lists of hit strips and pixels are kept. This is refered to as virtual segmentation.

Dima's DigiTrackerHit:

Comparing DigiTrackerHit to RawTrackerHit.

Dima's code understands the concept of dead material between layers.

I believe that the new geometry does not yet understand material between layers. Is that correct? Does the existing geometry for the cyclindrical sensors understand this?

Dima's track finding code operates on TrackClusters, not on TrackerHits. TrackClusters are never modified after they are created. It creates TrackerHits after it has associated a a cluster with a track. This is different than the original intended concept of a TrackerHit, as the object that feeds pattern recognition. This is the consistent with the plans of the Fermilab group and of Tim.

Comparing Dima's picture Rob's

The heading refers to data flow pictures. Dima's is on page 4 of his slides (attached) and Rob's is on page 8 of his slides: http://docdb.fnal.gov/ILC-public/DocDB/ShowDocument?docid=402

Miscellaneous Points Made During the Discussions

  1. Nick: it's OK if we change TrackerHit but please just do it once.
  2. Nick is currently forced to check if covariance(z,z)=0 to check if a TrackerHit is barrel or endcap! So he welcomes better tools.
  3. Tim asked: consider the intersection of some track with the plane that contains a sensor. Who is responsible for deciding if the intersection point is within or outside the instrumented region of the sensor? We need to understand which code is responsible for this and how that condition is indicated. He drew an example of a stereo strips sensor in which the strips are not parallel to any edge. Remember too that sensors are not necessarily rectangles.
  4. How do we address a simple bookkeeping issue related to the following problem:
  5. In conjunction with 4), Norman pointed out that we should have an automated method for recording what versions of what code and what run time configuration information we used for a given run of the reconstruction code. At present the simulation records this information in the LCIO file. We have talked about doing the same for reconstruction but have not yet done it.
  6. Re: the ongoing saga about whether the new code will work with the cylindrical geometry or just the polyhedral geometry. We narrowed the question down a little. The question is whether all pattern recognition codes should be required to work with both. We did not reach an agreement on this but we did agree that the supporting tools should work with whichever geometry is present.
  7. Re: the IDecoder in Jeremy and Tim's new code. This is something new, not a variant of the 64 bit cell ID. It might be as simple as an integer 0....(N-1) where N is the number of sensors in the detector. This is similar to what Rob and Hans envisaged and similar to the internals of Dima's geometry system. So it looks like we are all on the same page about this.

For Tomorrow:

  1. Are we really all on the same page about miscellaneous item 7)?
  2. Get presentations from Dima, Nick, Rob, Norman(TRF) ( anyone else ) about what is in/(needed in) a cluster class.
  3. In light of 2, what is the fate of TrackerHit?