Kalman Filter Update 2

As noted in my previous post, I have now updated my filter to store the slope of the particle’s path in the y-z plane (this is the plane in which the magnet will bend the particle’s path) instead of the angle at which it is travelling. This allows for better accuracy in tracking the particle. I was able to finish applying this to the magnet-off data sample (as the name implies, the magnet was turned off, so that the particle should just travel in a straight line) and obtained good agreement between data and prediction.

The next step was to do the same thing with the magnet turned on. Since the magnetic field is only important within a region of space between the 2nd and 3rd wire chambers, I was able to project the particle’s path as before between wire chambers 1 and 2 and between wire chambers 3 and 4. Between wire chambers 2 and 3, however, the particle’s path is bent by the magnetic field, which I will need to take into account. To do this, I┬ámodeled┬áthe field as a single momentum “kick.” That is, I assumed that the field was concentrated at one point, so that, rather than having to model some sort of complicated curved path, I would just have to worry about a single angle, which, as it turns out, is given (in radians) by -120 divided by the particle’s momentum in MeV/c. I was able to derive formulae relating the amount of bend to changes in the slope of the particle’s path and changes in its hit location at wire chamber 3. However, the Kalman filter is implemented in terms of matrix multiplication, so I had to linearize these formulae by using a Taylor series about an initial angle of 0. As it turns out, this was giving me massive errors in predicting the particle’s hit location at wire chamber 4, since, with initial angles on the order of 17 degrees, a Taylor series about 0 was a bad idea. Switching to taking the Taylor series around 17 degrees resulted in more accurate predictions for the hit locations in wire chambers 3 and 4. Despite all these complications, there was one great advantage to using the data from the magnet-on runs: by measuring the change in the angle of the particles track between wirechambers 1 and 2 and wire chambers 3 and 4, we were able to determine its momentum, which gave us improved multiple scattering errors. (In the magnet-off runs, we just had to guess, so I had given all the particles a momentum of 800 MeV/c.)

Accurate predictions are a very important part of a Kalman filter. However, it is also necessary to know the errors in this prediction, and, for wire chambers 3 and 4, our predicted standard deviations were roughly half what we saw in the distribution of the data. After rooting around in the code for a bit, I talked with my adviser, who suggested taking into account errors in the momentum measurements. Any errors there would translate into errors in the amount of bend as the particle traveled through the magnetic field, resulting in new sources of error in its hit location and slope of path at wire chambers 3 and 4. Having done this, I obtained predicted errors which matched the observed errors reasonably well.