Sti Vmc V Perevoztchikov Brookhaven National Laboratory USA
Sti. Vmc V. Perevoztchikov Brookhaven National Laboratory, USA STAR
Sti. TGeo helper Sti. Vmc is based on TGeo representation of geometry. But there is no direct dependency between them. All the communication goes thru Sti. TGeo helper class. This class contains: • Simple array of pointers to St. Volu. Info objects. TGeo. Volume: : Get. Number() used as an index. These objects keep specific Sti information, related to each volume. • Contains global Sti. Hit container, only for hits used in Seed. Finder. • Map container of St. Hit. Plane(s) with Hardware. Position of St. Hit as a key STAR Victor Perevoztchikov, BNL Star. Soft local
St. Volu. Info class For each TGeo. Volume could be related one St. Volu. Info object which contains: • Some flags, like: • It is a module, like TPCE, SVTT; • It is a Module with Hits; : • Active module; • It is a Hit. Plane STAR Victor Perevoztchikov, BNL Star. Soft local
St. Hit. Plane. Info class • • • St. Hit. Plane. Info inherited from St. Volu. Info class and used instead of it for sensitive volumes : Center of Hit plane in mother system; Direction of Hit plane in mother system; Hit container, simultaneously sorted by two variables, like Phi/Z Phi/Rxy etc…; : Pointer to functor, which provides activity of sensitive sub volume. Map container of St. Hit. Plane objects. These ones related to each TGeo. Volume instantiation. It is sorted by TGeo path of founded object. STAR Victor Perevoztchikov, BNL Star. Soft local
Sti. Hit. Plane class This class represents concrete sensitive detector. It’s functionality close to Sti. Detector. Contains: • Center of Hit plane in global system; • Direction of Hit plane in global system; • Hit container, simultaneously sorted by two variables, like Phi/Z Phi/Rxy etc…; : • Pointer to functor, which provides activity of sensitive sub volume. • Container of St. Hit. Plane and St. Hit. Tube classes. These classes STAR Victor Perevoztchikov, BNL Star. Soft local
Sti. Hit. Loader Loading of hits is made maximally independent of hit nature and origin. To add into Sti. Vmc new detector there is no need to modify even one line of code. No more Sti. Ssd, Sti. Svt, Sti. Tpc, Sti. Rn. D and Sti. XXX classes. Sti. Hit. Loader does the following: Iterate via St. Event. Hit. Iter iterator; u Adds it to St. TGeo. Helper object; u St. TGeo. Helper tries to find according St. Hit. Plane in St. Hit. Plane map container : by St. Hit hardware position. u. If not found, search volume it in TGeo. Manager by x, y, z. l. If not found, hit ignored; l. Get volume id and get according St. Hit. Plane. Info; l. Get St. Hit. Plane by path and save it into St. Hit. Plane map. u u Save hit into St. Hit. Plane object. STAR Victor Perevoztchikov, BNL Star. Soft local
Sti. Hit. Loader(2) If geometry is not aligned, some hits could not find their volume. How many? Sti. Maker: INFO Sti. Maker: INFO - St. TGeo. Helper: : Add. Hit : Hit in /HALL_1/CAVE_1/TPCE_1/TPGV_1/TPSS_3 Not Found - St. TGeo. Helper: : Add. Hit : Hit in /HALL_1/CAVE_1/TPCE_1/TPGV_1/TPSS_9 Not Found - Sti. Hit. Loader: : Load. Hits : Loaded 14711 good and failed 25 Tpc hits - Sti. Hit. Loader: : Load. Hits : Loaded 14711 good and failed 25 of all hits : So in case of pp 2009 a 0. 2% of hits lost. So not aligned TPC geometry does not affect reconstruction. STAR Victor Perevoztchikov, BNL Star. Soft local
Sti. Seed. Finder in Sti. Vmc used similar to Sti algorithm. The difference only different hit container. In Sti. Vmc used 3 keys map container. In the following pictures: u Seeds + unused TPC outer hits; u Only unused TPC outer hits; : You can see that new Sti. Seed. Finder is rather good. On the picture with only unused hits you can notice the real tracks. STAR Victor Perevoztchikov, BNL Star. Soft local
Seeds + all hits : STAR Victor Perevoztchikov, BNL Star. Soft local
Unused hits. : STAR Victor Perevoztchikov, BNL Star. Soft local
Hit Errors D w STAR Victor Perevoztchikov, BNL Star. Soft local
Hit error parameterization Track direction T. STAR Victor Perevoztchikov, BNL Star. Soft local
Hit error + diffusion Electron cloud around the track increased due to diffusion. Diffusion along Z and in X, Y directions is different and additional dispersion could be written as: Resulting parameterization is: STAR Victor Perevoztchikov, BNL Star. Soft local
Old Sti Hit errors Comparing this with the previous it is unfortunately evident that old Sti error parameterization is completely wrong. All our production was made with wrong errors. Fortunately it does not mean that results are wrong, but accuracy is not such good as it could be. It could affect only such very precise physics as D 0. STAR Victor Perevoztchikov, BNL Star. Soft local
DCA plane hit errors It will be shown later that the best plane for a fit is DCA plane is a plane orthogonal track direction and includes hit point and DCA point to this hit. Projecting hit errors on detector plane into DCA plane along the track direction gives errors: You see, these formulas are much simpler than in detector plane and there is no any bad divisions by zero, like in previous case. So DCA plane is much better for fit. All these formulas were tested by Monte-Carlo, which gave exactly same result. STAR Victor Perevoztchikov, BNL Star. Soft local
Navigation Sti. Navigate class provides navigation thru geometry volumes. In current version it is based on VMC navigation but in future probably directly on Tgeo. Sti. Navigate: • Initialized by current space point, direction and momentum; • Navigates thru volumes. On each volume: • Updates matrix of derivatives, using helix approximation; • Calculates energy loss and multiple scattering; • If volume is sensitive and active, navigation is stopped; • Then get from Sti. Hit. Plane double sorted Sti. Hit container, Sti. Hit. Plane direction, passed length, accumulated material info, position, track parameters and errors, volume path, derivative matrix. • Fitting started. STAR Victor Perevoztchikov, BNL Star. Soft local
Fitting Let consider simplified, 2 d case. Hitting plane along Y axis, track crossed Y axis with angle α wrt X axis. So : global track parameter α projected into local Y and proportional to sin(α). u when α << 1, then sin(α ) = α – α**3/6, second term is very small and projection from global to local system is linear. u Projections of error matrix is also linear. u In local frame fit is linear. Back transformation of fitted parameters and errors is linear too. When α is small then curvature ρ is also projected into local Y linearly. So life is good. But when α >1 , life is bad. Linearization is wrong, linear fit is wrong, Backward transformation into global is also wrong. All the times, when I saw unstable fit in Sti, it was α >1 STAR Victor Perevoztchikov, BNL Star. Soft local
Fit continue Could we do something with bad fit with α > 1? Yes, we can! Why we fit in local frame? There are only two reasons: We know that track is crossing our hit plane; u We know hit errors on this plane; u Let invent another local frame, where linearization is working always. The evident candidate is DCA frame. This frame is: Plane perpendicular to the track and crossing the hit point. Look the following picture. STAR Victor Perevoztchikov, BNL Star. Soft local
DCA Frame α d D α δd β δD STAR Victor Perevoztchikov, BNL Star. Soft local
Picture caption Vertical bold line: Hit Plane; u Green star: Hit on hit plane; u Red star: DCA point of track wrt hit (green star). Arrow is a predicted track with the parameters in DCA point. u Blue star is a new position of track with the modified parameters in this point; u α is a crossing angle of the predicted track; u β is an angle between predicted track and fitted o α ne; u α+β is a crossing angle of the fitted track; u D is the distance between hit and crossing point of the predicted track; u D+δD is the distance between hit and crossing point of the fitted track; STAR Star. Soft local Victor Perevoztchikov, BNL u
Picture caption continue d is the distance between hit and DCA point of the predicted track; u d+δd is the distance between hit and fitted track point in DCA plane; u STAR Victor Perevoztchikov, BNL Star. Soft local
Fitting in DCA frame In DCA frame, linearization with β and d is correct, track is perpendicular to DCA plane. In hit plane we minimizing the: ((D+δD) / σ)**2 where σ is a hit error. Let express it in DCA parameters. Looking on the previous picture and using sine rule: (D+δD) / cos(β) = (d+δd) / cos(α+β) In linearization β is small and cos(β) = 1 Then: ((D+δD) / σ)**2 == ((d+δd) / (σ * cos(α+β) )**2 STAR Victor Perevoztchikov, BNL Star. Soft local
Fitting in DCA frame(2) ((D+δD) / σ)**2 == ((d+δd) / (σ * cos(α+β) ))**2 So now we can minimize: ((d+δd) / (σ * cos(α+β) ))**2 It still does not look like much better. Still cos(α+β) when α is not small could not be linearized. But now is a time to remember that for TPC and for all other detectors: σ = σ0 / cos(α+β) So cos(α+β) is canceled out. We minimize: ((d+δd) / σ0)**2 without any loss of accuracy. STAR Victor Perevoztchikov, BNL Star. Soft local
Local or DCA frame? From the discussion above it is clear that fit in DCA frame always is better than in local one. In addition , fit in DCA frame is irrelevant to hit plane orientation. It is proper for TPC, FTPC and all other detectors. But amount of computation in DCA is slightly bigger. I propose to use strategy: u. TPC like detector: |α| < 0. 5 use local frame fit. It is about 90% of all tracks; u. TPC like detector: |α| > 0. 5 use DCA frame fit. u. Not a TPC like detector: use DCA frame fit. STAR Victor Perevoztchikov, BNL Star. Soft local
The role of alignment We see, that for fit, we need only: u To know the space position of the hits; u Hit errors. These errors are calculated from hit plane orientation and predicted track parameters; Hit plane position is not used at all. Hit errors are proportional to 1/cos(α). So for small α to know precise orientation of hit plane is not too important. Some inaccuracy arise only for |α| > 1. But even here it is not dangerous. Even completely wrong errors do not lead to the shifted estimate. Only estimation error are increased in this case. So some inaccuracy in the hit errors is not too critical. Precise alignment of hit planes is not important for fit. STAR Victor Perevoztchikov, BNL Star. Soft local
The role of alignment(2) The correct geometry description is important for accounting energy loss and multiple scattering. We see it Sti, which does not work properly for UPC, due to wrong Sti geometry. In the same time alignment of dead material volumes also not important. The correct, “ideal” geometry is absolutely enough for the material accounting. Precise Geometry alignment is not important for reconstruction. STAR Victor Perevoztchikov, BNL Star. Soft local
What is already done(Old) St. Event St. Hit iterator; u. TGeo. Volume iterator; u. Sti. TGeo helper class; u. Multi key (2 & 3) sorted container. 3 key global hit container used in seed finder. 2 key hit container in each hit plane. u Seed. Finder based on 3 key sorted container. u Helix derivatives matrix u. Sti. Navigate is ready. u. Multiple scattering and energy loss accounting implemented and working also for geometry comparison. u STAR Victor Perevoztchikov, BNL Star. Soft local
What is already done(Now) Sti. Hit. Loader, no dependency of detectors ; u. Sti. Default Seed Finder. Now tuned for TPC but only tuned; u. Sti. Geometry. Loader, with no detector dependency; u. Propagation thru TGeo using TGeant 3 + derivatives and errors u. Hit. Error. Calculator with two modes: u Standard detector plane errors l. DCA plane errors l STAR Victor Perevoztchikov, BNL Star. Soft local
Sti. Hit. Loader Loading of hits is made maximally independent of hit nature and origin. To add into Sti. Vmc new detector there is no need to modify even one line of code. No more Sti. Ssd, Sti. Svt, Sti. Tpc, Sti. Rn. D and Sti. XXX classes. Sti. Hit. Loader does the following: u Iterate via St. Event. Hit. Iter iterator; : u Adds it to St. TGeo. Helper object; u St. TGeo. Helper searches according St. Hit. Plane in St. Hit. Plane map container by St. Hit hardware position. u. If not found, search volume it in TGeo. Manager by x, y, z. If not found, hit ignored; l. Get volume id and get according St. Hit. Plane. Info; l. Get St. Hit. Plane by path and save it into St. Hit. Plane map. l STAR Victor Perevoztchikov, BNL Star. Soft local
Seeds + all hits : STAR Victor Perevoztchikov, BNL Star. Soft local
Unused hits. : STAR Victor Perevoztchikov, BNL Star. Soft local
Geant track propagation : STAR Victor Perevoztchikov, BNL Star. Soft local
What is needed to be done Sti. Track. Finder (copy & paste from old Sti); u. Sti. Track. Fitter (copy & paste from old Sti); u. Sti. Refit (copy & paste from old Sti); u. Total reshape. u When: with free hands, beginning of June. But free hands is impossible, so +1 month. : STAR Victor Perevoztchikov, BNL Star. Soft local
Fitted tracks propagation : STAR Victor Perevoztchikov, BNL Star. Soft local
Status Jul 2010 To avoid clashes with Sti new Sti is renamed to Stv. Now alpha version of Stv is ready. What is included? u Hit loader; u. Seed Finder; u. Track finder , based on Kalman fitter/filter; u. Vertex finder (not PPV); u. St. Event filler; u. Pull filler What is not: u No backward track finder; u No smoother or refit; u. No primary track fitter; STAR Victor Perevoztchikov, BNL Star. Soft local
Comparison and testing Right now real comparison is not possible yet. It is related to new hit error model. Before testing, we must obtain hit error parameters. For Sti. Fiterr application is used. There is no such application for Stv yet. During this week I hope the new Stv. Fit. Err will be ready. Then the end of Jul and Aug I will perform the testing and comparison. In parallel all the “NO” points above will be implemented. If above will be successful, in September, the massive testing will be performed STAR Victor Perevoztchikov, BNL Star. Soft local
Local Y pull distribution STAR Victor Perevoztchikov, BNL Star. Soft local
l. ZPull STAR Victor Perevoztchikov, BNL Star. Soft local
l. YHit STAR Victor Perevoztchikov, BNL Star. Soft local
l. ZHit STAR Victor Perevoztchikov, BNL Star. Soft local
Status Nov 2010 Geometry loader: u. Loads TGeo geometry. Automatically recognize sensitive volumes, their orientations, positions. Creates structures to support hits Hit Loader: u. Loads hits. Automatically recognition to which volume each hit belongs. No need for RND developer to create specific software for each version of detector. Geant geometry is enough. Seed finder & Track reconstruction is ready. Track smoother or refit is ready; Primary track assignment and fitting in process. Right now is mainly tuning and testing STAR Victor Perevoztchikov, BNL Star. Soft local
Fitted tracks propagation : STAR Victor Perevoztchikov, BNL Star. Soft local
Unused hits. : STAR Victor Perevoztchikov, BNL Star. Soft local
Status Feb 2011 Alpha version is finished. Now testing. For test was selected file st_physics_10169042_raw_4030001. daq First 10000 events was used. Sti has 260 good globals per event. Stv 349. 34% more Sti has 10 good primary per event. Stv 17. 70% more Sti has 4% primaries per global. Stv 5% Sti 28 hits per global. Stv 21. Stv 25% less Sti 32 hits per Primary. Stv 22. Stv 32% less (? ? ? ) Sti Dca 00, Dca. XY & Dca. Z are much worse then Stv ones(? ? ? ) STAR Victor Perevoztchikov, BNL Star. Soft local
Sti/Stv: good globals & primaries STAR Victor Perevoztchikov, BNL Star. Soft local
Sti/Stv: Hits globals & primaries. STAR Victor Perevoztchikov, BNL Star. Soft local
Sti/Stv: Dca globals of primaries. STAR Victor Perevoztchikov, BNL Star. Soft local
Status Feb 2011. Discussion Stv has more globals but less hits per global. Why? Let us count total amount of global hits. Sti = 260*28 = 7280 Stv= 349*22 = 7678. It looks like Sti steals hits from other tracks. Then these robbed tracks became bad (<15 hits) Now the same for primaries: Sti=10*32 = 320 Stv=17*22 = 374. The previous guess works here as well Now why Dca’s for Sti are such bad? The same explanation fits. Wrong hits stolen by Sti deteriorate Dca’s Of course, it is only guess. STAR Victor Perevoztchikov, BNL Star. Soft local
- Slides: 48