hi, I wanted to get back on the issue of last week (fast fit <-> newton
and the elimination of track candidates). From chi: you always have to
always swim to get a chi2, from chris: our real problem is to get a chi2
to weed out bad tracks.
I am not entirely sure circle fit removes the "non-linear" part of a
trajectory. After all a circle is represented with a simple bilinear so
the trajectory remains non-linear also after subtraction. But yes, a
taylor approximation of the residual is in polynomial fashion and grade 1
polynomials are linear. That's beyond the point. See below:
I tried to see whether there are more (analytically solvable) constraints on
a track. I determined that at every instant our (2D!) equation of motion
in lab coordinates (the track) is something like
(x+v0(z)/w)^2 + (z-v0(x)/w)^2 = [v0(x)^2 + v0(z)^2]/w^2
where w = (q/m)B = (q/m) B(x,z) (nasty!). B=B_y(x,z) is always
perpendicular to the plane containing the track. One simple parametrization
for the field is B = x * exp(-x/r) i.e. the field does not depend on z, it rises
almost linearly with x and has a bump (max) at x=r after which it has a smooth
fall off (you can tune that in the exponential). Above v0(x) and v0(z) are
the x,z components of the velocity one infinitesimal time step before the
point x,z.
The main feature of our motion is that the center of the circle and its
radius change continuosly. Note that I have not really solved the eq of motion
(of course!!!) since X and Z depend on the velocities. Rather I have a non
liner diff. equation which I discretize and approximate locally.
One main feature of the circle fit (from my limited understanding of
it..) is that the radius of curvature is constant. This is certainly not
true since B changes. Also, circle fit uses only points not the stub
direction. This is "good" because you can determine the circle fit
directly from the cluster position (i.e. from hits, with no need to build
stubs/segments).
However the segment direction (to the extent B is constant over a layer)
is to be always perpendicular to the local radius of curvature. The slope
of the segment allows you to determine the ratio of x,z momentum
components, you know w if you know the local field magnitude at x,z and
of course you know x and z at the center of each superlayer.
=>
I think that once you have the segments you can analytically estimate the
size of the momentum.
You substitute for w, v0(x)/v0(z), X and Z in the above equation and solve
for v = sqrt(v0(x)^2 + v0(z)^2) which is the momentum. You do this 3 times,
one for each superlayer. Of course for a real track the momentum is constant
(in magnitude) over all superlayers. You can now consider all tracks candidates
and for each check if p1,p2,p3 (the 3 "candidate" values for the momentum) are
really always the same. In other words you compute the chi2 for the fit of a p0
function.
Hopefully one (or a few) candidate will survive the criterium. Note that
you have not started swimming yet!
P.S.
I started with
.. . .. .
x = - q z B/m z = q x B /m
and I solve it in a region where B=const. Note that I started from x=z=0
for simplicity.
-- ________________________________________________________________________________ Tancredi Botto, phone: +1-617-253-9204 mobile: +1-978-490-4124 research scientist MIT/Bates, 21 Manning Av Middleton MA, 01949 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^On Fri, 18 Apr 2003, Chris Crawford wrote:
> hi tancredi, > the problem we face now is not just the need to swim each candidate to > weed out the ones with bad chi^2; we actually need a preliminary fit > (few iterations) on each of the candidates before the chi square is > reliable enough to use as a cut criterion. hopefully this will be > solved with better wire chamber callibrations, and some improvements to > our fast fit. > > however, i agree with you that we can refine the fast fit with a > taylor-expanded function of the wire chamber stubs, and even calculate > an initial chi^2 using the same technique, to avoid swims in the initial > cut. this should be an intermediate stage between fast fit, and the > newton fitter. we can even use our existing code to fit for these > functions. > > for example: > x1,y1, x2,y2, x3,y3 -> p,th,phi,z (circle fit) > x1,y1, x2,y2, x3,y3 -> dp,dth,dphi,dz,chi2 > (5 taylor expansons in 6 dimensions of residual error) > then cut on chi2 from above polynomial function, and > feed the selected (p+dp, th+dth, phi+dphi, z+dz)'s > into the newton fitter > > using the taylor expansion to calculate the residual from the circle > fit instead of directly going to (p,th,phi,z) is a good idea because the > circle fit will deal with the nonlinear part of the function, leaving > something easier to fit. > i think it is a good idea to expand functions of (x_i) instead of > (p,th,phi,z) so that you can apply the functions directly without > inverting them. also stubs are the ideal values to use, and they > represent a minimal set of independent data from the wire chamber. the > two extra degrees of freedom also make a chi2 function possible. this > would be the only cut we would have to make on the link level. > this would be a relatively simple addition to the reconstruction > software, with the potential to dramatically speed it up. > --chris > > Tancredi Botto wrote: > > > > > > In final v2 candidate tracks will be fit only in the Wch (no > > > ^^^^^^^^^^^^^^^^^^^^^^^ > > > prototype implemented and > > > check into CVS. Need debug, test and optimization. The (no swimming) > > > comment is not true. The swim is basicaly our function to be minimized. No > > > fit can be done without swim. We can only reduce the number of swim, > > > but never NO SWIM. :) > > > > You are absolutely right, put like this it makes little sense. What I > > meant to say (correct me if I am wrong again) is that you do not need to > > swim all candidate tracks to eliminate those that are built from inconsistent > > (combinatorial?) segments. >
This archive was generated by hypermail 2.1.2 : Mon Feb 24 2014 - 14:07:29 EST