GSI Forum
GSI Helmholtzzentrum für Schwerionenforschung

Home » PANDA » PandaRoot » Tracking » Helix and FairTrackParH
Helix and FairTrackParH [message #9038] Wed, 22 July 2009 17:37 Go to next message
StefanoSpataro is currently offline  StefanoSpataro
Messages: 2736
Registered: June 2005
Location: Torino
first-grade participant

From: *to.infn.it
Hello,
I would like to understand the helix parameters used in FairTrackParH, which are different from the ones present in the old-style PndTpcLheTrack.

Could somebody write, according to our "standard" definition of helix parameters, how our track is represented?
The helix parameters are: x0, y0, z0, lambda, phi, charge (even if it is q/p in FairTrackParH).
How can I know the following functions?

x = x(s)
y = y(s)
z = z(s)
px = px(s)
py = py(s)
pz = pz(s)


I have checked some tracking papers but without founding this representation. This is very important for fast correlation inside the barrel.

Thanks in advance.
Re: Helix and FairTrackParH [message #9040 is a reply to message #9038] Thu, 23 July 2009 10:24 Go to previous messageGo to next message
Alberto Rotondi is currently offline  Alberto Rotondi
Messages: 9
Registered: June 2007
occasional visitor
From: *presid.infn.it
Dear Stefano,

the system is called Global Cartesian in the enclosed Wittek report. We call it MARS (MAster Reference System).
There are routines MARS to SD, MARS to SC and vice versa in the GEANE interface. If you have problems to use them also Lia can help.
Best regards Alberto
  • Attachment: wittek.pdf
    (Size: 170.46KB, Downloaded 6005 times)
Re: Helix and FairTrackParH [message #9047 is a reply to message #9040] Thu, 23 July 2009 13:00 Go to previous messageGo to next message
StefanoSpataro is currently offline  StefanoSpataro
Messages: 2736
Registered: June 2005
Location: Torino
first-grade participant

From: *to.infn.it
Hello,
thanks for the Wittek paper. I have read it and found the formula for the momenta:

px = p cos(lambda) cos(phi)
py = p cos(lambda) sin(phi)
pz = p sin(lambda)


(which is also present in your tracking report).
But this is just the "static" relation between angles and momentum coordinated in a well defined point. What I need is the coordinated px py pz along the track, starting from the first point up to the last point (where pz remains constant, while px and py rotate). Therefore, this formula does not help me.

In Lia's thesis, page 42 (50 in the pdf), there is the following formula:

x(s) = x0 + Rh[cos(phi0+h s cos(lambda)/Rh) - cos(phi0)]
y(s) = y0 + Rh[sin(phi0+h s cos(lambda)/Rh) - sin(phi0)]
z(s) = z0 + s sin(lambda)


but unfortunately nothing for momenta.
Are those parameters (phi0 lambda R) the same of the ones in FairTrackParH? Is it possible to use this representation as it is with our trackbase code, or maybe x0 y0 z0 are calcualted ina well defined point, phi0 is defined in a different way, and so on?

Thanks in advance to everybody who could answer to my questions.
Re: Helix and FairTrackParH [message #9048 is a reply to message #9047] Thu, 23 July 2009 13:44 Go to previous messageGo to next message
Gianluigi Boca is currently offline  Gianluigi Boca
Messages: 177
Registered: March 2004
first-grade participant
From: *gsi.de
hi Stefano,
I don't know if this answers your question.
Find the momenta at any given point of the trajectory is rather trivial when one knows the initial momentum and the radius and conter of the helix.
It is just enough to remember that for Panda Px**2 + Py**2 is constant and that the momentum in the XY plane is always perpendicular to the radius of the helix.

Does this answer your question?

Tschus und aufwiedersehen !

Gianluigi
Re: Helix and FairTrackParH [message #9051 is a reply to message #9048] Thu, 23 July 2009 15:45 Go to previous messageGo to next message
StefanoSpataro is currently offline  StefanoSpataro
Messages: 2736
Registered: June 2005
Location: Torino
first-grade participant

From: *to.infn.it
Hi,
the only point is that in this representation I do not have the center of the circle, then I have no idea on what is the phi of my point, and I cannot rotate. And where is defined phi0?
I would like some explanations on this side, or better I would like to read the equations.
Re: Helix and FairTrackParH [message #9057 is a reply to message #9051] Thu, 23 July 2009 18:15 Go to previous messageGo to next message
Gianluigi Boca is currently offline  Gianluigi Boca
Messages: 177
Registered: March 2004
first-grade participant
From: *gsi.de
ok, here is the recipy.
You need to know only the starting point of the track and the starting momentum.
Then :

1) find the centre of the Helix circle in the XY plane by drawing
a segment perpendicular to the 2-dimensional (Px, Py) vector.
Such a segment has direction (-Py, Px). Find the
point on such segment that is a Radius distant from the initial
point of the track. That is the center of the trajectory.
Here there is an ambiguity that depends on the charge of the
track. In other words, you must know the charge of track in
order to decide on which side the center lies.
2) You fi0 is defined by the starting point of your track with
respect to any arbitrary but chosen once for all reference
frame in the XY plane.

If you want you can call me on the phone (+496159711680) for better
explanations.

Gianluigi
Re: Helix and FairTrackParH [message #9058 is a reply to message #9057] Thu, 23 July 2009 18:26 Go to previous messageGo to next message
StefanoSpataro is currently offline  StefanoSpataro
Messages: 2736
Registered: June 2005
Location: Torino
first-grade participant

From: *to.infn.it
Hi,
considering that there parameters are the official ones for FairTrackParH and that somebody has implemented them, I was hoping to have exactly his definition, in order to avoid misunderstanding. Without the exact definition, I cannot evaluate the equations.
Re: Helix and FairTrackParH [message #9059 is a reply to message #9058] Thu, 23 July 2009 19:41 Go to previous messageGo to next message
Lia Lavezzi
Messages: 291
Registered: May 2007
Location: Torino
first-grade participant

From: *47-151.net24.it
Hi Stefano,

just to clarify the meaning of the different parametrizations:

1) in FairTrackParH you have the 5 parameters: q/p, lambda, phi, yperp, zperp.
q/p is the charge over momentum, lambda and phi are the dip and polar angles which describe the direction of the particle, yperp and zperp are the coordinates of the point in the SC reference frame (the one perpendicular to the momentum). Using the functions of that class you can also get the position and momentum in the master reference frame;

2) in the equations you cited from my thesis, x0, y0, z0 define the starting point of the helix, phi0 is the azimuthal angle of the starting point with respect to the helix axis, lambda is the dip angle and Rh is the radius of curvature of the helix.

So, I don' t think you can directly apply the equations in 2) to the track from 1) since phi and phi0 should be different: in fact phi0 is calculated with respect to the helix axis and so they would coincide only if the helix axis was coincident with the beam.

If you want to apply the x(s), y(s), z(s) equations you should choose as starting point the one you get with GetPosition in FairTrackParH and then apply them, but you have to calculate the corresponding phi0, since it is not directly given by GetPhi in FairTrackParH.

Concerning the momentum calculation I guess that once you have the helix described in the x(s), y(s), z(s) point you can obtain the px and py coordinates by considering the transverse momentum as tangent to the track (a circle) in that point and then projecting it on the x/y directions, can' t you?

If I find the exact equations for the momentum I will post a message!
Ciao,
Lia.
Re: Helix and FairTrackParH [message #9060 is a reply to message #9059] Thu, 23 July 2009 20:04 Go to previous messageGo to next message
StefanoSpataro is currently offline  StefanoSpataro
Messages: 2736
Registered: June 2005
Location: Torino
first-grade participant

From: *15-87-r.retail.telecomitalia.it
Lia Lavezzi wrote on Thu, 23 July 2009 19:41


1) in FairTrackParH you have the 5 parameters: q/p, lambda, phi, yperp, zperp.
q/p is the charge over momentum, lambda and phi are the dip and polar angles which describe the direction of the particle, yperp and zperp are the coordinates of the point in the SC reference frame (the one perpendicular to the momentum). Using the functions of that class you can also get the position and momentum in the master reference frame;



Let me correct you, in FairTrackParH the parameters are:

 /** fLm = Dip angle **/
 Double_t fLm; 
 /**fPhi = azimuthal angle **/
 Double_t fPhi;
 /** Points coordinates in SC system */
 Double_t fX_sc, fY_sc, fZ_sc;


Or at least these are the data members and the parameters used in the helix constructor.
There is no xperp, yperp and phi0, but x_sc, y_sc, z_sc and phi.
Apart from lambda I have no idea on what the other parameters are.

Quote:


2) in the equations you cited from my thesis, x0, y0, z0 define the starting point of the helix, phi0 is the azimuthal angle of the starting point with respect to the helix axis, lambda is the dip angle and Rh is the radius of curvature of the helix.

So, I don' t think you can directly apply the equations in 2) to the track from 1) since phi and phi0 should be different: in fact phi0 is calculated with respect to the helix axis and so they would coincide only if the helix axis was coincident with the beam.



Well, can I consider x_sc y_sx z_sc as the starting point of the helix? In this case can phi be considered as phi0?

Quote:


If you want to apply the x(s), y(s), z(s) equations you should choose as starting point the one you get with GetPosition in FairTrackParH and then apply them, but you have to calculate the corresponding phi0, since it is not directly given by GetPhi in FairTrackParH.
...



For this reason I think it would be good to have written somewhere thh definition of the FairTrackParH parameters, to avoid misunderstanding (such as phi and phi0) and in order to avoid ambiguity.
Re: Helix and FairTrackParH [message #9061 is a reply to message #9060] Thu, 23 July 2009 22:02 Go to previous messageGo to next message
Lia Lavezzi
Messages: 291
Registered: May 2007
Location: Torino
first-grade participant

From: *47-151.net24.it
Quote:

Quote:

1) in FairTrackParH you have the 5 parameters: q/p, lambda, phi, yperp, zperp.
q/p is the charge over momentum, lambda and phi are the dip and polar angles which describe the direction of the particle, yperp and zperp are the coordinates of the point in the SC reference frame (the one perpendicular to the momentum). Using the functions of that class you can also get the position and momentum in the master reference frame;


Let me correct you, in FairTrackParH the parameters are:

/** fLm = Dip angle **/
Double_t fLm;
/**fPhi = azimuthal angle **/
Double_t fPhi;
/** Points coordinates in SC system */
Double_t fX_sc, fY_sc, fZ_sc;

Ok, it' s just a matter of names Wink
If you have a look in the FairTrackParH.h, the comment at the beginning contains the 5 parameters:
q/p, lambda, phi, y_perp, z_perp
In the code the name of the parameters are:
fLm = lambda
fPhi = phi
fX_sc = x_perp
fY_sc = y_perp
fZ_sc = z_perp
Concerning the names of the coordinate, let me explain: usually the SC frame coordinates are marked as "orthogonal" x, "orthogonal" y and "orthogonal" z, just because the SC frame has its yz plane orthogonal to the track momentum.
When you describe the track you need, of the 5 parameters, 1 parameter to describe the momentum magnitude (fQp is a data member of FairTrackPar), 2 to describe the direction (lambda/phi) and 2 to describe the position (y and z... call them _perp or _sc, they are the same thing).

Quote:

Well, can I consider x_sc y_sx z_sc as the starting point of the helix? In this case can phi be considered as phi0?

Actually I don' t think so: phi is given with respect to the z axis, while phi0 is given with respect to an axis which passes through the center of curvature of the helix; you could consider phi = phi0 only if the helix axis was the z axis. At least this is what I understand...

Quote:

For this reason I think it would be good to have written somewhere thh definition of the FairTrackParH parameters, to avoid misunderstanding (such as phi and phi0) and in order to avoid ambiguity.

There is a definition of the parameters in our report on GEANE, since the parameters for both FairTrackParP and FairTrackParH are the ones used there (in GEANE, I mean) in the SD and SC frame. Maybe we can add a link in the code comment to easily get it. Would it be useful?

Ciao,
Lia.

Re: Helix and FairTrackParH [message #9069 is a reply to message #9061] Fri, 24 July 2009 13:18 Go to previous message
StefanoSpataro is currently offline  StefanoSpataro
Messages: 2736
Registered: June 2005
Location: Torino
first-grade participant

From: *to.infn.it
Quote:


Ok, it' s just a matter of names Wink
Ok, but you can
If you have a look in the FairTrackParH.h, the comment at the beginning contains the 5 parameters:
q/p, lambda, phi, y_perp, z_perp
In the code the name of the parameters are:
fLm = lambda
fPhi = phi
fX_sc = x_perp
fY_sc = y_perp
fZ_sc = z_perp



It is a matter of names only if you know what those names mean (not my case) Smile And once they are also called in a different way, the amount of confusion in my mind increases.

However, it seems I do not need those parameters for my helix, even because all the defnitions are to move from one system to another, but what I need is how the position/momentum variates along the track.
I have found a document in internet that explains what I need, to characterize my track:

center of the helix (to calculate drho, and phi0)
radius of the helix (to calculate drho)
pt (to calculate k)
lambda


Of these 5 params, I have already lambda, pt, and the radius can be calculated from p. I am only missing the center of the helix, that can be calculated with the suggested method of Gianluigi.

I will try and cross my fingers hoping that it will work.


Previous Topic: Event Display and PndTrack
Next Topic: point of closest approach
Goto Forum:
  


Current Time: Wed Nov 27 21:48:58 CET 2024

Total time taken to generate the page: 0.00801 seconds