Celebrity Deathmatch: Siegmund vs. Icetray


The problem: SPASE-AMANDA analysis folks still have to use "siegmund" to perform two tasks which are not available anywhere else: the "fixed-core" fit (where the core, or vertex, is fixed at the surface and only zenith and azimuth are varied), and the "ADCLDF" fit (where amplitudes are fit to a lateral distribution function. It would be nice to get rid of siegmund, since no one will maintain it anymore, ever.

The solution: use IceTray to perform these fits.

The Fixed-Core fit

In the old days, this was a simple matter of using "recoos" just like everyone else did, only fixing certain parameters (x,y,z) and leaving others free (theta, phi, and t).
The IceTray implementation is called "I3TMinuitLLHModule" in the "muon-llh-reco" project, and is available as part of icerec. This code, however, is only structured with five free parameters (x,y,z,theta, and phi) whereas we need t to also be a free parameter if the fit is going to work.
How exactly will this be done? I made a request to the author (John Pretz) to add this feature (time as a free parameter). But nothing will motivate a good programmer like John to implement something than to implement it first yourself as a bad programmer. :-) Kath's new implementation is called "I3TMinuitFixedVertexLLHModule". John may decide in the future to modify the muon-llh-reco project in such a way as to implement this differently (and probably better)... so stay tuned. But in the meantime, it works.
UPDATE: John has coded a 6-parameter version of muon-llh-reco... to do a fixed-core fit, you hold x, y, and z as constants. I've briefly tested it against my "fixedvertex" version, and although the results are very similar, it doesn't perform quite as well. I'm not sure why, and I haven't had time to investigate fully yet.

The new fixed-core fit was tested on one day of 2005 SPASE-AMANDA matched coincidence data, and also one day of 2003 data. Both had been independently reconstructed by Karen using siegmund, so that a direct comparison could be made between the siegmund implementation and the IceTray implementation. Here is a plot of the "performance" of the new fit. How well does it match the results of the old fit?
(Similar plot for 2003 here)

Some more detailed backstory

Want to know some grusome detail about the struggle to get this working? Click here

Conclusion: there are some issues of interest to programmers, but the fixed-core fit is working and ready for use.

The ADCLDF fit

In siegmund, this fit happened as a special likelihood function implemented in "recoos", called "spaseadc2". Such a thing did not exist in any form in IceTray, it had to be created from scratch.

For a detailed description of the "I3AmplitudeLDFModule", see this docs page. This was first tested on 2003 data, where it performed admirably against the siegmund original:

However, when run on 2005 data, it behaves much worse:

Why the difference? I don't know yet. I've checked things like the Bad-OM lists and hit cleaning... Perhaps something is different in amplitude-land in 2005? The next step is to look more deeply into the physics of what this fit does (for both 2003 and 2005), as we are using it on six optical strings for which this technique has never been tested.

Conclusion: the Amplitude fit still needs some checking.

The "Vanilla UPandel" fit

Just for grins, I tried using "muon-llh-reco" in "vanilla" mode as a regular UPandel fitter, with DirectWalk as a first guess, and comparing it to what sieglinde came up with during filtering. Here are "performance" plots similar to the ones above, but I'm not sure how good they are:

... but since this isn't used for composition, this comparison is low on my priority list. It might be of interest to other muon-llh-reco users however.

I want to try these fits! How do I join the party?

You will need: I intend to put together a meta-project with all this stuff in it, so that you will not have to fetch anything by hand (coming soon!)
UPDATE: The meta-project is ready! It's called "spase-amanda" and you can check it out with: svn co $SVN/meta-projects/spase-amanda

Here are:

Overview of what the processing script does: The script is divided into three processing stages (prefiltering, reconstruction, and booking) to save processing time when trying different things out. It looks long and horrible, but it's really not that bad... a lot of script space is taken up by sorting out all the things which are slightly different from year to year.

Please ask me if you are having trouble using these or have questions. They will probably evolve with time.


Webmaster: Katherine Rawlins (k a t h @ u a a . a l a s k a . e d u)