1 / 27

Changes in TPC tracking code and seeding optimisation

Sylwester Radomski off-line week CERN, June 12, 2002. Changes in TPC tracking code and seeding optimisation. Sylwester Radomski GSI, Darmstadt S.Radomski@gsi.de Sylwester.Radomski@cern.ch. Sylwester Radomski off-line week CERN, June 12, 2002. Content. Introduction

regis
Download Presentation

Changes in TPC tracking code and seeding optimisation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Sylwester Radomski off-line week CERN, June 12, 2002 Changes in TPC tracking code and seeding optimisation Sylwester Radomski GSI, Darmstadt S.Radomski@gsi.de Sylwester.Radomski@cern.ch

  2. Sylwester Radomski off-line week CERN, June 12, 2002 Content • Introduction • Editorial changes in the code • Changes in the design of classes • Seeding algorithm review • Seeding parameters and tracking efficiency • Outlook

  3. Sylwester Radomski off-line week CERN, June 12, 2002 Intoduction • Historical background • In Strasbourg I spent a week working with Jouri and Sergei • To learn the art of tracking and understand TRD tracking • Good opportunity to revise the code • As a result of the meeting • Some editorial changes were made • Redesign functions – add new private helper functions • Structure of the classes was redesigned • The code was documented • It is still the same tracking - I do not pretend to be an author

  4. Sylwester Radomski off-line week CERN, June 12, 2002 Editorial changes • Declaration of a variable in the loop for(Int_t i=0; i<kLast; i++) { AliTPCcluster *c = fRow->GetCluster(i) … } • Replaced by AliCluster *c; for(Int_t i=0; i<kLast; i++) { c = fRow->GetCluster(i); … }

  5. Sylwester Radomski off-line week CERN, June 12, 2002 Exceptional Situations • Current treating exceptions if (...) { cerr << “File not found” << endl; return 7; } • Replaced by if (...) Error( “Method”, “File not found” ); • What is the standard way of treating exceptions in Alice Off-line project ? • Using cerr for standard output is common • cout, Error, Warning, Info ?

  6. Sylwester Radomski off-line week CERN, June 12, 2002 Functions • Baseline • make functions as short as possibe (less than one screen) • make classes as short and simple as possible • One class corresponds to one functionality • New functions in tracker • GetYRoad(track), GeyZRoad(track) • FindOptimal(track, row) • New functions in seed manager • AddCombinatorialSeeds(outRow, inRow, label) • AddExternalSeeds(inFile)

  7. Sylwester Radomski off-line week CERN, June 12, 2002 Documentation • Lack of a documentation is a common desease of our project • When You try to build a good algorythm and produce results • You care about documentation as much as about class structure • Three levels of documentation • Concept of the class with reference to algorythm / note / web page • Concept of a function • algorythm if complicated • explanation of the input parameters, unit, allowed values • assumption about environment (eg. gDirectory) • Comments in the code for developers • It seems reasonable that after algorythm is established • someone else is making revision and documentation

  8. Sylwester Radomski off-line week CERN, June 12, 2002 Multievent structure • Current structure • for every event create a tracker • track an event • delete a tracker • New structure • one tracker for a run (set of events with the same parameters) • process events in “gAlice” style tracker->GetEvent(nEvent); tracker->Clusters2Tracks(...); • after processing the run delete tracker • Needs coordination with Piotr Skowronski

  9. Sylwester Radomski off-line week CERN, June 12, 2002 Multievent structure • What is the real difference (now) • More elegant structure • Some savings on time (less constructors / destructors) • Do not count in generation/propagation/simulation/reconstruction time • Cleaning up memory improves our understanding of the code • Difference in future • The more complicated geometry the greater gain in time • In real experiment tracker will connect to a database or GRID center • geometry, alignment, calibration, process register • Important time savings • Reducing overall network traffic

  10. Sylwester Radomski off-line week CERN, June 12, 2002 Changes in the design • Old AliTPCtracker contain • computer science – loading/unloading data • mathematics – sorting, Kalman filter • tunable parameters – seedings, cuts • Was made to produce results not to looks nice • now is time to revise it • Baseline for new design • One class for one functionality • Split “the science of the tracking” and “the art” • Science – well established algorythms – do not touch label • Art – tunable parameters – try to optimize label

  11. Sylwester Radomski off-line week CERN, June 12, 2002 Classes • AliTPCtrack • AliTPCtracker : AliTPCSeed • AliTPCDetector : AliTPCSector, AliTPCRow • AliTPCseedManager • AliTPClabelManager • AliTPCutil • AliTPCtrackCut (in prototyping) • do not touch • try to optimize

  12. Sylwester Radomski off-line week CERN, June 12, 2002 Class Structure • AliTPCDetector • TPC tracker view of the clusters • to be replaced in future • Inner classes: AliTPCSector, AliTPCRow • Load and unload clusters • smart loading and unloading – when realy need data • Cleaning memory, prepering for a new event

  13. Sylwester Radomski off-line week CERN, June 12, 2002 Class Structure • AliTPCseedManager • Seeding was decupled from propagation • Allow mixing seeds from different sources • file (TRD) + combinatorial (not tested) • AddCombinatorialSeeds(outRow, inRow, label) • DefaultSeeds() • contain tunable parameters • In the future it should evolve into something like generators stack • Now it is created by a tracker class • In the future – created in a macro and passed as a parameter • instead of the inut file

  14. Sylwester Radomski off-line week CERN, June 12, 2002 Class Structure • AliTPClabelManager • CookLables • I will preffer keeping this functionality outside tracker class

  15. Sylwester Radomski off-line week CERN, June 12, 2002 Class Structure • AliTPCutil • Class with static methods • Mean uncertainties – historical aproximation • Standard functions named in good old Fortran style – f1, f2, f3 • It is better to have static functions than global ones • Can we make something like TMath for tracking ?

  16. Sylwester Radomski off-line week CERN, June 12, 2002 Seeding • Seeding is the most crucial point of a Kalman based tracking • if something is not seeded it will not be propagated • there are different seeding startegies and algorythms • Alogorythm of combinatorial seeding • Try to make a helix for three points • clusters of two rows + vertex constraint (3 cm uncertainty) • Seeding strategies • make rather good seeds and propagate them • it is difficult to make all good and only good seeds • make a lot of seeds and try to select them on the fly • drawback - strategy for cutting seeds • more multiple found tracks

  17. Sylwester Radomski off-line week CERN, June 12, 2002 Old Seeding Strategy • Use outhermost clusters becouse of lower efficiency • 95 – 76 • 87 – 67 • not a lowest multiplicity with tree pad size geoetry • Propagate 20 rows • if more than 10 clusters – keep • Sort in respect to transverse momentum • Propagate to the end • if more that 40 % clusters found keep (and use clusters)

  18. Sylwester Radomski off-line week CERN, June 12, 2002 New Seeding Strategy • Seed as much as resonable ( how much it is resnable ? ) • Propagate to row 40, select and sort in respect to transverse momentum • sorting decreases efficiency – use natural order (why ?) • For each track propagate to low radius of the outer sector and select • First to eat more to pay concept • Hard selection for 1 seeding lower for next seedings • Use (eat) custers • Propagate to innermost row and select • First to eat more to pay

  19. Sylwester Radomski off-line week CERN, June 12, 2002 Simulations • I performed simulations to measure efficiency • definition of efficieny from AliTPCComparision (good_track_tpc) • GeVSim event generator • 2000 Pi+, 2000 Pi- • 500 K+, 500 K- • 100 protons • Since GeVSim is purely thermal it underestimate high pt tracks • Number of good tracks - AliTPCComparision • 3992

  20. Sylwester Radomski off-line week CERN, June 12, 2002 Standard Seeding • Efficiency number of tracks 3552 not found tracks 391 fake tracks 11 multiple found 11 • Efficiency • 88 %

  21. Sylwester Radomski off-line week CERN, June 12, 2002 Add new seeding • In minumum occupancy • 63 – 50 • Efficiency number of tracks 3732 not found tracks 333 (58) fake tracks 11 multiple found 12 • Efficiency 90 % • Why do not add more seeding ?

  22. Sylwester Radomski off-line week CERN, June 12, 2002 Extreem seeding • Two new seedings • 45 – 30 • 20 - 10 • Efficiency (4, 5) found 3820 3906 ! found 313 295 fake 14 16 double 14 27 • Efficiency 90,5 % 91 % • Why do not add inner sector ?

  23. Sylwester Radomski off-line week CERN, June 12, 2002 Inner Seeding • Three new seedings in inner sectors • 62 – 50 • 50 – 40 • 35 – 28 • Efficiency 4003 4040 4079 276 267 261 16 17 17 27 32 40 • Efficiency 91,5 % 91,8 % 92 % • Some gain in low momentum but mainly refounding old tracks

  24. Sylwester Radomski off-line week CERN, June 12, 2002 Sumary of the results

  25. Sylwester Radomski off-line week CERN, June 12, 2002 Closer look • I introduced a new field in AliTPCtrack – fSeedLabel • make posible measurements of the seed efficincy • Seed parameters were optimised to give best purity seeding rows good fake contamination 1 95 76 3210 73 2 % 2 87 67 260 8 3 % 3 63 50 174 6 3,4 % 4 45 30 80 8 10 % 5 20 10 83 3 4 % 6 62 50 94 2 2 % 7 50 40 31 3 10 % 8 35 28 39 0 0 %

  26. Sylwester Radomski off-line week CERN, June 12, 2002 Quality cut for tracks • For “Extreem Seeding” startegy cuality cuts are crucial • Looked at different variables for goot and fake tracks for differnt seeds • Number of Clusters, Chi2, Chi2 per level of freedom • Except number of clusters they look almost the same • more investigation needed

  27. Sylwester Radomski off-line week CERN, June 12, 2002 Outlook • New structure for tracker classes developed and implemented • Still need discussion and prtotyping • Tracking efficieny for different seeding evoluated • Try to indentify variable to differ for good and fake tracks

More Related