iceCube.uhe.analysis
Class Criteria

java.lang.Object
  extended by iceCube.uhe.analysis.Criteria

public class Criteria
extends java.lang.Object

Criteria class defines requrements of the IceCube EHE events that are subject to futher analysis. This will be "signal cut".

   The criteria you can set are the followings :
   (a) log Npe > certain value
          AND
   (a') (cosZenith - cosZenMin)*(logNpeMax-logNpeMin)
               -(cosZenMax-cosZenMin)(logNpe-logNpeMin)<0
   (a'')  OR
         cosZenith < highestOfCosZenith && logNpe > lowestOfLogNpe
         AND
   (a''') zenith angle simple cut
         cosZenith < cosZenCut downCut = true
         cosZenith > cosZenCut downCut = false

         AND
   (b)  Number of DOMs > certain value
         AND
   (c)  first guess Quality > certain value
         AND
   (d) COB/Cascade vertex - origin you set < max threshold of distance

   Theshold values in each of these can be set by calling the relevant
   method.
   
When the method setEHESuperCut() is called,,however, the criterua set for the EHE super CUT determines if a given event passes the criteria. The present super CUT developed by Aya Ishihara (aya@hepburn.s.chiba-u.jp) categorize events into the four groups as

    Npe-ATWD > Npe-FADC  &&  | Npe-ATWD < Npe-FADC  &&
    cobZ =[min max]          | cobZ =[min max]  
    ----------------------------------------------------
    Npe-ATWD > Npe-FADC  &&  | Npe-ATWD < Npe-FADC  &&
    cobZ out of [min max]    | cobZ  out of [min max]  


   Written originally by S. Yoshida for the IceCube EHE anaysis
   2007/1/26

   Rewritten by S. Yoshida to include the EHE super Cut 2007/12/01
   


Field Summary
protected  boolean isEHESuperCut
           
protected  double maxCobZ
           
protected static int maxNumberOfVertex
          maximum number of the vertex points on the logNpe-cosTheta plane to define the EHE super cut
protected  double minCobZ
           
protected  int minNDOMsInEHESuperCut
           
protected static int numberOfEventCategory
          number of the event category
protected  int[] numberOfVertex
          number of the vertex points on the logNpe-cosTheta plane set by the method setEHESuperCut()
protected static double[][] vertexDefaultLocationX
          The default vertex X location on the logNpe-CosZenith plane in the EHE super cut.
protected static double[][] vertexDefaultLocationY
          The default vertex y location on the logNpe-CosZenith plane in the EHE super cut.
 
Constructor Summary
Criteria()
          constructor.
 
Method Summary
 boolean doesThisEventPass(I3Particle iceParticle)
          Determine if the iceParticle satisfies the criteria
protected  boolean doesThisEventPassEHESuperCut(I3Particle iceParticle)
          Tell Whether this event passes the "EHE super cut" .
protected  boolean doesThisEventPassSimpleCut(I3Particle iceParticle)
          Tell Whether this event passes the "simple cut" .
protected  boolean isATWDNpeLarger(I3Particle iceParticle)
          Tell whether this event has ATWD-based NPEs larger than ones based on FADC.
protected  boolean isCOBZwithinRange(I3Particle iceParticle)
          Tell whether this event has z depth of the Center of Brightness vertex within a given range set by the method setEHESuperCut().
protected  boolean isThisEventInTheGZKRegion(I3Particle iceParticle, int category)
          Tell if this event is within the GZK boundary set by the method setEHESuperCUT(category, vertex) in the corresponding event category.
protected  void setEHESuperCut()
          set all the GZK boundary values of Npe and cosZenith in the "EHE Super Cut" for all of the event categories with the default settings.
protected  void setEHESuperCut(int category)
          set all the GZK boundary values of Npe and cosZenith in the "EHE Super Cut" for a given event categories with the default settings.
protected  void setEHESuperCut(int category, J3Vector vertex)
          set all the GZK boundary values of Npe and cosZenith in the "EHE Super Cut" for each of the four event categories:
 void setMaxDistance(double distance, J3Vector origin)
          Sets the maximum distance : The COB/Cascade vertex - origin must be shorter than this value.
 void setMinimumBound(double highestOfCosZenith, double lowestOfLogNpe)
          Set the highest cosZenith and the lowest LogNpe -- Criterion (a'')
 void setNPEScalingFactor(double factor)
          Set the NPE scaling factor (default:1.0).
 void setRangeOfCosineOfZenith(double minCosTheta, double maxCosTheta, double minLogNpe, double maxLogNpe)
          Sets the range of the line on cosZenith -logNpe plain.
 void setSimpleCosZenithCut(double cosZenCut, boolean downCut)
          Set the simple zenith Cut -- Criterion (a''')/
 void setThresholdOfFirstGuessQuality(double fgThreshold)
          Sets the threshold of the First Guess fitting quality.
 void setThresholdOfLogNpe(double logNpe)
          Set the threshold of Log10(Npe) no matter where an event comes from.
 void setThresholdOfNDOMs(int nDOMs)
          Set the threshold of Number Of DOMs.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

isEHESuperCut

protected boolean isEHESuperCut

minCobZ

protected double minCobZ

maxCobZ

protected double maxCobZ

minNDOMsInEHESuperCut

protected int minNDOMsInEHESuperCut

numberOfEventCategory

protected static int numberOfEventCategory
number of the event category


maxNumberOfVertex

protected static int maxNumberOfVertex
maximum number of the vertex points on the logNpe-cosTheta plane to define the EHE super cut


numberOfVertex

protected int[] numberOfVertex
number of the vertex points on the logNpe-cosTheta plane set by the method setEHESuperCut()


vertexDefaultLocationX

protected static double[][] vertexDefaultLocationX
The default vertex X location on the logNpe-CosZenith plane in the EHE super cut. Used in the setEHESuperCut()


vertexDefaultLocationY

protected static double[][] vertexDefaultLocationY
The default vertex y location on the logNpe-CosZenith plane in the EHE super cut. Used in the setEHESuperCut()

Constructor Detail

Criteria

public Criteria()
constructor. Nothing is determined

Method Detail

setThresholdOfLogNpe

public void setThresholdOfLogNpe(double logNpe)
Set the threshold of Log10(Npe) no matter where an event comes from. This requirement corresponds to (a) in the description you find at top of this class.


setRangeOfCosineOfZenith

public void setRangeOfCosineOfZenith(double minCosTheta,
                                     double maxCosTheta,
                                     double minLogNpe,
                                     double maxLogNpe)
Sets the range of the line on cosZenith -logNpe plain. This requirement corresponds to (a') in the description you find at top of this class.


setMinimumBound

public void setMinimumBound(double highestOfCosZenith,
                            double lowestOfLogNpe)
Set the highest cosZenith and the lowest LogNpe -- Criterion (a'')


setSimpleCosZenithCut

public void setSimpleCosZenithCut(double cosZenCut,
                                  boolean downCut)
Set the simple zenith Cut -- Criterion (a''')/


setThresholdOfNDOMs

public void setThresholdOfNDOMs(int nDOMs)
Set the threshold of Number Of DOMs. Condition (b)


setThresholdOfFirstGuessQuality

public void setThresholdOfFirstGuessQuality(double fgThreshold)
Sets the threshold of the First Guess fitting quality. Condition (c)


setMaxDistance

public void setMaxDistance(double distance,
                           J3Vector origin)
Sets the maximum distance : The COB/Cascade vertex - origin must be shorter than this value. Condition (d)


setNPEScalingFactor

public void setNPEScalingFactor(double factor)
Set the NPE scaling factor (default:1.0). This factor accounts a possible rescaling of Energy-NPE due to the systematic errors. NPE of I3Particle is multiplied by this factor whenever the event cut is applied.


doesThisEventPass

public boolean doesThisEventPass(I3Particle iceParticle)
Determine if the iceParticle satisfies the criteria


doesThisEventPassSimpleCut

protected boolean doesThisEventPassSimpleCut(I3Particle iceParticle)
Tell Whether this event passes the "simple cut" . Called inside the method doesThisEventPass() when the EHE super cut does not apply.


doesThisEventPassEHESuperCut

protected boolean doesThisEventPassEHESuperCut(I3Particle iceParticle)
Tell Whether this event passes the "EHE super cut" . Called inside the method doesThisEventPass() when the EHE super cut applies. The criteria is defined for each of the four following event categories :

                      
       Npe-ATWD > Npe-FADC  &&  | Npe-ATWD < Npe-FADC  &&
       cobZ =[min max]          | cobZ =[min max]  
       ----------------------------------------------------
                      
       Npe-ATWD > Npe-FADC  &&  | Npe-ATWD < Npe-FADC  &&
       cobZ out of [min max]    | cobZ  out of [min max]  

       


isThisEventInTheGZKRegion

protected boolean isThisEventInTheGZKRegion(I3Particle iceParticle,
                                            int category)
Tell if this event is within the GZK boundary set by the method setEHESuperCUT(category, vertex) in the corresponding event category. Note that in the "EHE Super Cut", the GZK boundary in the logNPE-cosZenith plane is defined individually in each of the category.


setEHESuperCut

protected void setEHESuperCut(int category,
                              J3Vector vertex)
set all the GZK boundary values of Npe and cosZenith in the "EHE Super Cut" for each of the four event categories:

                      
       Npe-ATWD > Npe-FADC  &&  | Npe-ATWD < Npe-FADC  &&
       cobZ =[min max]          | cobZ =[min max]  
       ----------------------------------------------------
                      
       Npe-ATWD > Npe-FADC  &&  | Npe-ATWD < Npe-FADC  &&
       cobZ out of [min max]    | cobZ  out of [min max]  

       
The GZK boundary are defined by connecting the lines from the i-th point to the i+1 th point. When you call this method for the first time, the first point is set by J3Vector vertex. The 2nd point is set in the next call of this method. Just keep going. By doing so you can set the successive points to form the GZK boundary for a given category. The vector Vertex should contain (x,y) = (logNpe,cosZenith).


setEHESuperCut

protected void setEHESuperCut(int category)
set all the GZK boundary values of Npe and cosZenith in the "EHE Super Cut" for a given event categories with the default settings.


setEHESuperCut

protected void setEHESuperCut()
set all the GZK boundary values of Npe and cosZenith in the "EHE Super Cut" for all of the event categories with the default settings.


isATWDNpeLarger

protected boolean isATWDNpeLarger(I3Particle iceParticle)
Tell whether this event has ATWD-based NPEs larger than ones based on FADC. Used in the EHE super Cut


isCOBZwithinRange

protected boolean isCOBZwithinRange(I3Particle iceParticle)
Tell whether this event has z depth of the Center of Brightness vertex within a given range set by the method setEHESuperCut(). Used in the EHE super Cut