Main Page | Class List | File List | Class Members | File Members | Related Pages

CSCHit Class Reference

The CSCHit class contains ponters to the 3-5 strips that belong to a muon hit. More...

#include <CSCHit.h>

List of all members.

Public Member Functions

 CSCHit ()
 Constructor for intialization.
 ~CSCHit ()
 Destructor.
void Set (CSCCluster *cluster, int i)
 This method is only used by the CSCHitList() to fill the class with raw data.
void Print ()
 Prints a summary of the parameters to stdout.
CSCStripGetStrip (int relIndex)
 Provides access to the uderlying CSCStrip() objects.
double GetPosition ()
void SetPosition (double p)
 This method sets the position of the hit to a given value.
double GetPeakingTime ()
double GetAmplitude ()
int GetChannelID ()
 Get the channel ID.
int GetLayer ()
int IsTransverse ()
int IsLargeChamber ()
double GetSum ()
double GetCOG ()
double GetParabola ()
int GetPhi ()
int GetID ()
int GetDistance ()
 returns the distance to the nearest hit, or 199 if there is no other hit in this layer.
void SetDistance (int d)
 This method is only used by the Hit finding algorithm.
int GetChannel ()
CSCHitGetMatch ()
 Future feature, might not be implemented.
void SetMatch (CSCHit *h)
 Future feature, might not be implemented.
double GetChi2 ()
double Profile (double pos)
 Charge-sharing profile for a typical hit in this chamber.


Detailed Description

The CSCHit class contains ponters to the 3-5 strips that belong to a muon hit.

The class provides corrected position interpolation, peaking time, and the sum of all charges.

A CSCCluster() can contain several CSCHHits. Hit finding is done in the CSCHitList() class.

The parabolic estimate of the peaking time and amplitude is applied to the central 3 strips when the hit is created in the hit list.

Status:
90% complete and well tested.


Member Function Documentation

double CSCHit::GetAmplitude  )  [inline]
 

Returns:
the amplitude of the center strip in ADC counts.
To get the corrected time, use
      50ns * peakingTime - 25ns * samplingPhase
      
See also:
CSCChamber->GetPhase()

int CSCHit::GetChannel  )  [inline]
 

Returns:
the channel number of the center strip. Add a position interpolation value to this integer to get a hit position.

int CSCHit::GetChannelID  )  [inline]
 

Get the channel ID.

The channel ID identifies the positon of the channel in ATLAS. It consists of 13 bits:

                                          
  0000 0000 0000 000S PPPE MLLD CCCC CCCC
  S: Size bit (1:big or 0:small CSC chamber)
  P: Phi angle 0-7
  E: Eta (endcap) 0: eta=-1: endcap C, 1: eta=1, endcap A)
  M: Multilayer (1 for the initial scope)
  L: Layer 0-3
  D: Direction (D = 0 for precision, 1 for transverse)
  C: Channel number of the first channel                                  
  

Returns:
the channelID.

double CSCHit::GetChi2  )  [inline]
 

Returns:
the chi-squared value for the agreement of the central 3 amplitudes with the expected charge-sharing profile.
This is a distribution with 2 degrees of freedom, so a cut at 6 can distinguish bad hits from well-formed hits.

double CSCHit::GetCOG  )  [inline]
 

Returns:
the center-of-gravity interpolation result, ranging nominally from -0.5 to 0.5. The raw interpolation value has been linearly corrected, i.e. multiplied by 1.18.
This interpolation is less precise than the one returned by GetParabola().

int CSCHit::GetID  )  [inline]
 

Returns:
the 17 bit channel ID. See http://positron.ps.uci.edu/~schernau/ROD/2rt/CSCDataFormat.html
Use GetChannel(), GetLayer(), IsTransverse(), and GetPhi() for easier access to the ID information.

int CSCHit::GetLayer  )  [inline]
 

Returns:
the layer number of the hit in the range 0-3.

double CSCHit::GetParabola  )  [inline]
 

Returns:
the parabolic interpolation result, ranging nominally from -0.5 to 0.5. The raw interpolation value has been non-linearly corrected to minimize differences between measured and expected positions. The correction is done for X and Y hits in the small chambers, but not yet for the large chambers.

double CSCHit::GetPeakingTime  )  [inline]
 

Returns:
the peaking time of the center strip. The unit is sampling intervals, either 25ns or 50 ns. This value should be corrected by the sampling phase.

int CSCHit::GetPhi  )  [inline]
 

Returns:
the phi position of the chamber in the range 0-7.

double CSCHit::GetPosition  )  [inline]
 

Returns:
the hit position calculated by the parabola interpolation. This position is the sum of the interpolation and the channel number of the center strip.

CSCStrip * CSCHit::GetStrip int  relIndex  ) 
 

Provides access to the uderlying CSCStrip() objects.

Parameters:
relIndex is the index relative to the center strip: +1 is the index of the strip to the right of the center, -1 is the index of the strip to the left of the center.
Returns:
a pointer to the CSCStrip() object, or NULL if the index is out of range. Indices 0, +1 and -1 are always valid, but hits at the edge of the chamber might not have valid strips at the +2 or -2 index. Most Hits, however, should have 5 strips.

double CSCHit::GetSum  )  [inline]
 

Returns:
the sum of the amplitudes of the central 3 strips. The unit is ADC counts.

int CSCHit::IsLargeChamber  )  [inline]
 

Returns:
0 if this is a small CSC chamber, or 1 if it is a large one.

int CSCHit::IsTransverse  )  [inline]
 

Returns:
0 if this is a X hit, or 1 if it is a Y hit.

double CSCHit::Profile double  pos  ) 
 

Charge-sharing profile for a typical hit in this chamber.

This fuction selects the right profile for small or large chambers, and for X and Y hits.

Parameters:
pos is the inter-strip position. If the position is at 0.1, then the pos value for the left charge is -0.9, for the center strip it is 0.1, and for the right strip it is 1.1.
Returns:
the fraction of the total charge that is expected at the position pos. Multiply by GetSum() to get the ADC value.
See also:
GetChi2().

void CSCHit::SetPosition double  p  )  [inline]
 

This method sets the position of the hit to a given value.

This value replaces the one calculated by the parabola interpolation. Can be used to place missing hits or to store results of new interpolations.

Parameters:
p the new position, a fractional strip number.


The documentation for this class was generated from the following files:
Generated on Wed Oct 29 10:35:18 2008 for CSCRead by  doxygen 1.3.9.1