CTShower Testing - Apr. 11, 2006

Mirror of the best candidate showers page.

CTShower Documentation

It was noticed in the meeting on Friday that the chisq output is not the same between v3.01 and Dummy reconstructions. It seems that something odd is going on in Rext_Shawn... when the function which evaluates the location chisq is called, it changes the fit results.

The two functions which update the chisq values are fcnChiSqAngle and fcnChiSqCore. The two variables which hold the angle and location chisq values are minchisq and minminusloglik, respectively. I haven't figured out how calling these functions can be changing the fit parameters after the minimization routine has finished.

The following reconstructions show the results of uncommenting either one function or the other in Rext_Shawn (or switching the variable that they save the result to). Version C is the way v3.01 was implemented originally. The DummyReconstruct routine calls a function called UpdateChiSqs, which calls both fcnChiSqAngle(minchisq) and fcnChiSqCore(minminusloglik). Inserting this function directly into Rext_Shawn gives the same results as version E below.

A. Shower 1, version 2.35 Xangle = 0.12, Xloc = 0.68

B. Version 3.01, no chisq evaluation Xangle = 0.12, Xloc = 0.68
The fit is different but similar.
As expected, the chisq values are not updated from the 2.35 starting point.

C. Version 3.01, fcnChiSqAngle(minchisq) Xangle = 0.08, Xloc = 0.68
Only the angle chisq is updated (as expected); fit is the same as B.

D. Version 3.01, fcnChiSqCore(minminusloglik) Xangle = 0.08, Xloc = 29777.27
The fit changes substantially, and both chisq values are different.

E. Version 3.01, both of the above Xangle = 0.00, Xloc = 29777.27
The fit is the same as D, but the angle chisq is different.
Changing the order in which fcnChiSqAngle and fcnChiSqCore are called has no effect.

F. Version 3.01, fcnChiSqAngle(minminusloglik) Xangle = 0.08, Xloc = 0.00
The fit is slightly different from D.

G. Version 3.01, fcnChiSqCore(minchisq) Xangle = 29777.27, Xloc = 0.78
The fit is the same as D.
Xangle is the same as Xlocation in D, which is expected, since the the value should just be saved to a different variable.