Class DetectorParticle

java.lang.Object
org.jlab.clas.detector.DetectorParticle
All Implemented Interfaces:
Comparable
Direct Known Subclasses:
DetectorParticlePOCA, DetectorParticleTraj

public class DetectorParticle extends Object implements Comparable
Author:
gavalian, baltzell
  • Field Details

    • DEFAULTQUALITY

      public static final Double DEFAULTQUALITY
    • sharedDetectors

      protected final org.jlab.detector.base.DetectorType[] sharedDetectors
    • responseStore

      protected final List<DetectorResponse> responseStore
    • detectorTrack

      protected DetectorTrack detectorTrack
  • Constructor Details

    • DetectorParticle

      public DetectorParticle()
    • DetectorParticle

      public DetectorParticle(DetectorTrack track)
    • DetectorParticle

      public DetectorParticle(int charge, double px, double py, double pz)
    • DetectorParticle

      public DetectorParticle(int charge, double px, double py, double pz, double vx, double vy, double vz)
  • Method Details

    • getStartTime

      public double getStartTime()
    • setStartTime

      public void setStartTime(double time)
    • createNeutral

      public static DetectorParticle createNeutral(double x, double y, double z, double vx, double vy, double vz)
    • createNeutral

      public static DetectorParticle createNeutral(double x, double y, double z)
    • createNeutral

      public static DetectorParticle createNeutral(DetectorResponse resp)
    • createNeutral

      public static DetectorParticle createNeutral(DetectorResponse resp, org.jlab.clas.physics.Vector3 vertex)
    • getTrackTrajectory

      public DetectorTrack.Trajectory getTrackTrajectory()
    • clear

      public void clear()
    • addResponse

      public void addResponse(DetectorResponse res, boolean match)
    • countResponses

      public int countResponses(org.jlab.detector.base.DetectorType type, int layer)
    • countResponses

      public int countResponses(org.jlab.detector.base.DetectorType type)
    • getPhysicsParticle

      public org.jlab.clas.physics.Particle getPhysicsParticle(int pid)
    • compare

      public double compare(org.jlab.clas.physics.Vector3 vec)
    • compare

      public double compare(double x, double y, double z)
    • getTrackIndex

      public int getTrackIndex()
    • getCovMatrix

      public float[][] getCovMatrix()
    • getCovMatrix

      public float getCovMatrix(int ii, int jj)
    • setScore

      public void setScore(int score)
      Particle score combined number that represents which detectors were hit HTCC - 1000, FTOF - 100, EC - 10 SCORE = HTCC + FTOF + EC
      Parameters:
      score -
    • setChi2

      public void setChi2(double chi2)
      Chi square of score determination.
      Parameters:
      chi2 -
    • getScore

      public int getScore()
      returns particle score.
      Returns:
    • isTriggerParticle

      public boolean isTriggerParticle()
      returns whether this is the trigger particle.
    • setTriggerParticle

      public void setTriggerParticle(boolean val)
      set this as the trigger particle.
    • getSector

      public int getSector(org.jlab.detector.base.DetectorType type, int layer)
    • getSector

      public int getSector(org.jlab.detector.base.DetectorType type)
    • getSector

      public int getSector()
      Deprecated.
      Just for backward compatibility for any external usage
    • getChi2

      public double getChi2()
      returns chi2 of score.
      Returns:
    • addResponse

      public void addResponse(DetectorResponse res)
      add detector response to the particle
      Parameters:
      res -
    • hasHit

      public boolean hasHit(org.jlab.detector.base.DetectorType type)
    • hasHit

      public boolean hasHit(org.jlab.detector.base.DetectorType type, int layer)
    • getDetectorResponses

      public List<DetectorResponse> getDetectorResponses()
    • getDetectorResponses

      public List<DetectorResponse> getDetectorResponses(org.jlab.detector.base.DetectorType type)
    • getHit

      public DetectorResponse getHit(org.jlab.detector.base.DetectorType type)
    • getHit

      public DetectorResponse getHit(org.jlab.detector.base.DetectorType type, int layer)
    • getResponse

      public DetectorResponse getResponse(org.jlab.detector.base.DetectorType type, int layer)
      Deprecated.
      Just for backward compatibility for any external usage
    • getTrack

      public DetectorTrack getTrack()
    • getBeta

      public double getBeta()
    • getNDF

      public double getNDF()
    • getTrackChi2

      public double getTrackChi2()
    • getTrackDetector

      public int getTrackDetector()
    • getTrackSector

      public int getTrackSector()
    • getTrackDetectorID

      public int getTrackDetectorID()
    • getTrackStatus

      public int getTrackStatus()
    • getFirstCross

      public org.jlab.geom.prim.Line3D getFirstCross()
    • getLastCross

      public org.jlab.geom.prim.Line3D getLastCross()
    • getStatus

      public DetectorParticleStatus getStatus()
    • getMass

      public double getMass()
    • getPid

      public int getPid()
    • getPidQuality

      public double getPidQuality()
    • setPidQuality

      public void setPidQuality(double q)
    • vector

      public org.jlab.clas.physics.Vector3 vector()
    • vertex

      public org.jlab.clas.physics.Vector3 vertex()
    • getPathLength

      public double getPathLength()
    • getCharge

      public int getCharge()
    • getPathLength

      public double getPathLength(org.jlab.geom.prim.Vector3D vec)
    • getPathLength

      public double getPathLength(double x, double y, double z)
    • getTime

      public double getTime(org.jlab.detector.base.DetectorType type)
    • getEnergyFraction

      public double getEnergyFraction(org.jlab.detector.base.DetectorType type)
    • getEnergy

      public double getEnergy(org.jlab.detector.base.DetectorType type)
    • getEnergy

      public double getEnergy(org.jlab.detector.base.DetectorType type, int layer)
    • getPathLength

      public double getPathLength(org.jlab.detector.base.DetectorType type, int layer)
    • getBeta

      public double getBeta(org.jlab.detector.base.DetectorType type, int layer, double startTime)
    • setStatus

      public void setStatus(double minNpheHtcc, double minNpheLtcc)
    • setBeta

      public void setBeta(double beta)
    • setMass

      public void setMass(double mass)
    • setPid

      public void setPid(int pid)
    • setCharge

      public void setCharge(int charge)
    • getDetectorHit

      public int getDetectorHit(List<DetectorResponse> hitList, org.jlab.detector.base.DetectorType type, int detectorLayer, double distanceThreshold)
    • getDetectorHitQuality

      public double getDetectorHitQuality(List<DetectorResponse> hitList, int index, org.jlab.geom.prim.Vector3D hitRes)
    • getDistance

      public org.jlab.geom.prim.Line3D getDistance(DetectorResponse response)
    • getTheoryBeta

      public double getTheoryBeta(int id)
    • getNphe

      public double getNphe(org.jlab.detector.base.DetectorType type)
    • getVertexTime

      public double getVertexTime(org.jlab.detector.base.DetectorType type, int layer)
    • getVertexTime

      public double getVertexTime(org.jlab.detector.base.DetectorType type, int layer, int pid)
    • getCherenkovSignal

      public int getCherenkovSignal(List<DetectorResponse> responses, org.jlab.detector.base.DetectorType type)
    • getTime

      public double getTime(org.jlab.detector.base.DetectorType type, int layer)
    • getNeutralBeta

      public double getNeutralBeta(org.jlab.detector.base.DetectorType type, List<Integer> layers, double startTime)
      Calculate beta for given detector type/layer, prioritized by layer:
    • setDedx

      public void setDedx()
      For charged particles with scintillator responses, use dx from its track's trajectory to calculate dedx. This overrides the dx provided from the scintillator services.
    • compareTo

      public int compareTo(Object o)
      Specified by:
      compareTo in interface Comparable
    • toString

      public String toString()
      Overrides:
      toString in class Object