Testing Shower Filter Code - June 5
original version of analysiscut.cc
first version of analysiscut2.cc
-> Produces this filtered list: March 1,
2004
newer version of analysiscut2.cc
-> Produces this filtered list: March 1, 2004
CTShowerDocumentation
New version of analysis cut seems to work. The one shower which was
previously being misclassified as a chicos shower now correctly shows up
as a chiquita shower. In addition, two junk showers that were getting
through before don't now. (They also were being misclassified as chicos
showers, and therefore not having the accidentals stripped out of them
before making the NN/TRMS cuts. After the cuts they each had only 3 sites.)
The logic used in the current incarnation of analysiscut is as follows:
Does the shower have at least one non-CIT1000 event?
- No - Junk. (No need to look at all the CIT1000 noise.)
- Yes - Is there at least one non-Chiquita trigger?
- Yes - Is it a Chicos shower? (Does it pass NN-NoChiquita and Trms?)
- Yes - Write to Chicos showers.
- No - Is there at least one Chiquita/03/96/105 trigger?
- No - Junk. (Chicos noise.)
- Yes - Is it a Chiquita shower?
(Strip accidentals and check NN-WithChiquita and Trms.)
- Yes - Write to Chiquita showers.
- No - Junk.
- No - Is there at least one Chiquita/03/96/105 trigger? (There must
be. This check is only here since it is the same block of code as above.)
- No - Junk. (Should never hit this branch.)
- Yes - Is it a Chiquita shower?
(Strip accidentals and check NN-WithChiquita and Trms.)
- Yes - Write to Chiquita showers.
- No - Junk.
Basically this sets the qualifications for showers as follows:
- Chicos showers:
- Must have a trigger that is not Chiquita
(i.e., not 100x, 2001, 3001, or 4001).
- Must have 3/5 nearest neighbors from an array that does not include
the Chiquita sites.
- Must have Trms < 10.
- Chiquita showers:
- Must not be a Chicos shower.
- Must have a trigger that is Chiquita or Caltech 03, Poly, or PCC.
- Must have 3/5 nearest neighbors from an array including Chiquita, after
accidentals (hits more than 10 us away) have been stripped out.
- Must have Trms < 10.
The logic used in the original version of dailyshower/analysiscut is:
Does the shower have at least 3/5 nearest neighbors and pass Trms < 10?
- No - Junk
- Yes - Does the shower pass cit.ApplyCut? (Only Chiquita triggers, or a non-Chiquita trigger and fewer than 3 Chicos matches.)
- Yes - Write to Chiquita showers.
- No - Does the shower pass nn.ApplyCut? (Has at least 3/5 Chicos neighbors.)
- Yes - Write to Chicos showers.
- No - Does the shower have a non-Chiquita/03/96/105 trigger?
- Yes - Write to Chicos showers.
- No - Write to Chiquita showers.
This sets the qualifications for showers as follows:
- Chicos showers:
- Must have a trigger that is not Chiquita (i.e., not 100x, 2001, 3001,
or 4001). (This is checked in cit.ApplyCut.)
- Must have 3/5 nearest neighbors from an array that does not include
the Chiquita sites.
- Must have Trms < 10.
- Chiquita showers:
- Must not be a Chicos shower.
- Must have a trigger that is Chiquita or Caltech 03, Poly, or PCC
OR have a non-Chiquita/03/96/105 trigger and fewer than 3 Chicos matches.
- Must have 3/5 nearest neighbors from an array including Chiquita.
- Must have Trms < 10.
There is one difference between the resulting classification of showers in
the new and old versions: Suppose there were a site that was not either
Chiquita (100x, 2001, 3001, 4001) or Caltech 03, Poly, or PCC which had a
Chiquita site as one of the 5 nearest neighbors. If that site were the only
trigger in a shower, and one of the 3 nearest neighbours hit was the Chiquita
site, that shower would be classified as Chiquita in the old version, and
junk in the new version.
I made it that way figuring that it shouldn't be a
Chicos shower if it didn't pass the nearest-neighbor cut without chiquita, but
no non-chiquita triggers are being included in the analysis of chiquita showers
I was working on. I don't think any site in the Chicos array besides Caltech 3,
PCC, and Poly has a Chiquita site as a nearest neighbor anyway, so this case
should never occur. However, it might be wise to allow for it in case the
configuration of the array changes... This could be done by taking out the
line which tests whether there is a Chiquita/03/96/105 trigger from the new
version. However, this would result in all junk Chicos noise being checked
twice, slowing the run time. I think I will just add a note to the code
suggesting the check be taken out if the configuration of the array
changes.