...
Now that we have our clusters, we can analyze them. Cluster objects in org.lcsim have a number of methods for obtaining information about a cluster. One is the getShape() method, which returns an array of six doubles. As of this writing, the last three values are not implemented and always return zero. The first value appears to be a measurement of the shower's energy profile by depth in millimeters. The second two appear to give orthogonal measurements of the shower width. The algorithm uses an inertial tensor to generate these values (see org.lcsim.recon.cluster.util.TensorPropertyClusterCalculator for the nitty gritty details; I don't quite understand it myself). See simplePlotter.java for the code used to make these plots.
Panel |
---|
The first three values of the getShape() parameter for electrons and pions using only the highest energy cluster with no timing or energy cuts. |
...
As a simple first test, I trained an HMatrix using the first three values of the shape vector on electron clusters and calculated chi^2 values using the same electron data and pion data (see attached files SimpleHMatrixBuilder.java and ^SimpleHMatrixTester SimpleHMatrixTester.java). The histograms of these chi^2 values are below.
Panel |
---|
|
The electrons exhibit a very tightly constrained response, whereas the majority of the pions have a very high chi^2 value. There is a peak at 1 in the pion data, but it is one tenth the height of the electron peak. This is expected; the shape data for the pions showed small peaks at values near the electron peaks in all of the measurements. This implies that other categorizations must be used.