CMS 3D CMS Logo

DTRecSegment4D Class Reference

4-parameter RecHits for MuonBarrel DT (x,y, dx/dz, dy/dz) More...

#include <DataFormats/DTRecHit/interface/DTRecSegment4D.h>

Inheritance diagram for DTRecSegment4D:

RecSegment TrackingRecHit

List of all members.

Public Member Functions

virtual DTChamberId chamberId () const
 The (specific) DetId of the chamber on which the segment resides.
virtual double chi2 () const
 Chi2 of the segment fit.
virtual DTRecSegment4Dclone () const
virtual int degreesOfFreedom () const
 Degrees of freedom of the segment fit.
virtual int dimension () const
 Dimension (in parameter space).
 DTRecSegment4D (const DTSLRecSegment2D &zedSeg, const LocalPoint &posZInCh, const LocalVector &dirZInCh)
 Construct from Z projection.
 DTRecSegment4D (const DTChamberRecSegment2D &phiSeg)
 Construct from phi projection.
 DTRecSegment4D (const DTChamberRecSegment2D &phiSeg, const DTSLRecSegment2D &zedSeg, const LocalPoint &posZInCh, const LocalVector &dirZInCh)
 Construct from phi and Z projections.
 DTRecSegment4D ()
 Empty constructor.
bool hasPhi () const
 Does it have the Phi projection?
bool hasZed () const
 Does it have the Z projection?
virtual LocalVector localDirection () const
 Local direction in Chamber frame.
virtual LocalError localDirectionError () const
 Local direction error in the Chamber frame.
virtual LocalPoint localPosition () const
 Local position in Chamber frame.
virtual LocalError localPositionError () const
 Local position error in Chamber frame.
AlgebraicVector parameters () const
 Parameters of the segment, for the track fit.
AlgebraicSymMatrix parametersError () const
 Covariance matrix fo parameters().
const DTChamberRecSegment2DphiSegment () const
 The superPhi segment: 0 if no phi projection available.
virtual AlgebraicMatrix projectionMatrix () const
 The projection matrix relates the trajectory state parameters to the segment parameters().
virtual std::vector
< TrackingRecHit * > 
recHits ()
 Non-const access to component RecHits (if any).
virtual std::vector< const
TrackingRecHit * > 
recHits () const
 Access to component RecHits (if any).
void setCovMatrix (AlgebraicSymMatrix mat)
 Set covariance matrix.
void setDirection (LocalVector dir)
 Set direction.
void setPosition (LocalPoint pos)
 Set position.
const DTSLRecSegment2DzSegment () const
 The Z segment: 0 if not zed projection available.
 ~DTRecSegment4D ()
 Destructor.

Private Types

enum  Projection { full, phi, Z, none }
 Which projections are actually there. More...

Private Member Functions

DTChamberRecSegment2DphiSegment ()
 the superPhi segment
void setCovMatrixForZed (const LocalPoint &posZInCh)
DTSLRecSegment2DzSegment ()
 the Z segment

Private Attributes

AlgebraicSymMatrix theCovMatrix
int theDimension
LocalVector theDirection
DTChamberRecSegment2D thePhiSeg
LocalPoint thePosition
Projection theProjection
DTSLRecSegment2D theZedSeg

Friends

class DTSegmentUpdator


Detailed Description

4-parameter RecHits for MuonBarrel DT (x,y, dx/dz, dy/dz)

Date
2007/08/02 05:35:46
Revision
1.11
Author:
Stefano Lacaprara - INFN Legnaro <stefano.lacaprara@pd.infn.it>

Riccardo Bellan - INFN TO <riccardo.bellan@cern.ch>

Definition at line 25 of file DTRecSegment4D.h.


Member Enumeration Documentation

enum DTRecSegment4D::Projection [private]

Which projections are actually there.

Enumerator:
full 
phi 
Z 
none 

Definition at line 121 of file DTRecSegment4D.h.

00121 {full, phi, Z, none};


Constructor & Destructor Documentation

DTRecSegment4D::DTRecSegment4D (  )  [inline]

Empty constructor.

Definition at line 30 of file DTRecSegment4D.h.

Referenced by clone().

DTRecSegment4D::DTRecSegment4D ( const DTChamberRecSegment2D phiSeg,
const DTSLRecSegment2D zedSeg,
const LocalPoint posZInCh,
const LocalVector dirZInCh 
)

Construct from phi and Z projections.

Definition at line 20 of file DTRecSegment4D.cc.

References funct::cos(), DTRecSegment2D::covMatrix(), lat::endl(), Exception, TrackingRecHit::geographicalId(), DTRecSegment2D::localDirection(), DTRecSegment2D::localPosition(), DetId::rawId(), setCovMatrixForZed(), theCovMatrix, theDirection, thePosition, PV3DBase< T, PVType, FrameType >::theta(), Vector3DBase< T, FrameTag >::unit(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().

00023                                                            :
00024   RecSegment(phiSeg.chamberId()), 
00025   theProjection(full),
00026   thePhiSeg(phiSeg),
00027   theZedSeg(zedSeg),
00028   theDimension(4)
00029 {
00030   // Check consistency of 2 sub-segments
00031   if(DTChamberId(phiSeg.geographicalId().rawId()) != DTChamberId(zedSeg.geographicalId().rawId()))
00032     throw cms::Exception("DTRecSegment4D")
00033       <<"the z Segment and the phi segment have different chamber id"<<std::endl;
00034 
00035   // The position of 2D segments are defined in the SL frame: I must first
00036   // extrapolate that position at the Chamber reference plane
00037   LocalPoint posZAt0 = posZInCh +
00038     dirZInCh * (-posZInCh.z())/cos(dirZInCh.theta());
00039 
00040 
00041   thePosition=LocalPoint(phiSeg.localPosition().x(),posZAt0.y(),0.);
00042   LocalVector dirPhiInCh=phiSeg.localDirection();
00043 
00044   // given the actual definition of chamber refFrame, (with z poiniting to IP),
00045   // the zed component of direction is negative.
00046   theDirection=LocalVector(dirPhiInCh.x()/fabs(dirPhiInCh.z()),
00047                            dirZInCh.y()/fabs(dirZInCh.z()),
00048                            -1.);
00049   theDirection=theDirection.unit();
00050 
00051   // set cov matrix
00052   theCovMatrix=AlgebraicSymMatrix(4);
00053   theCovMatrix[0][0]=phiSeg.covMatrix()[0][0]; //sigma (dx/dz)
00054   theCovMatrix[0][2]=phiSeg.covMatrix()[0][1]; //cov(dx/dz,x)
00055   theCovMatrix[2][2]=phiSeg.covMatrix()[1][1]; //sigma (x)
00056   setCovMatrixForZed(posZInCh);
00057 }

DTRecSegment4D::DTRecSegment4D ( const DTChamberRecSegment2D phiSeg  ) 

Construct from phi projection.

Definition at line 60 of file DTRecSegment4D.cc.

References DTRecSegment2D::covMatrix(), DTRecSegment2D::localDirection(), DTRecSegment2D::localPosition(), theCovMatrix, theDirection, thePhiSeg, and thePosition.

00060                                                                   :
00061   RecSegment(phiSeg.chamberId()), 
00062   theProjection(phi),
00063   thePhiSeg(phiSeg),
00064   theZedSeg(DTSLRecSegment2D()),
00065   theDimension(2)
00066 {
00067   thePosition=thePhiSeg.localPosition();
00068   
00069   theDirection=thePhiSeg.localDirection();
00070 
00071   // set cov matrix
00072   theCovMatrix=AlgebraicSymMatrix(4);
00073   theCovMatrix[0][0]=phiSeg.covMatrix()[0][0]; //sigma (dx/dz)
00074   theCovMatrix[0][2]=phiSeg.covMatrix()[0][1]; //cov(dx/dz,x)
00075   theCovMatrix[2][2]=phiSeg.covMatrix()[1][1]; //sigma (x)
00076 }

DTRecSegment4D::DTRecSegment4D ( const DTSLRecSegment2D zedSeg,
const LocalPoint posZInCh,
const LocalVector dirZInCh 
)

Construct from Z projection.

Definition at line 79 of file DTRecSegment4D.cc.

References funct::cos(), setCovMatrixForZed(), theCovMatrix, theDirection, thePosition, PV3DBase< T, PVType, FrameType >::theta(), and PV3DBase< T, PVType, FrameType >::z().

00081                                                             :
00082   RecSegment(zedSeg.superLayerId().chamberId()),
00083   theProjection(Z),
00084   thePhiSeg(DTChamberRecSegment2D()),
00085   theZedSeg(zedSeg),
00086   theDimension(2)
00087 {
00088   
00089   LocalPoint posZAt0=posZInCh+
00090     dirZInCh*(-posZInCh.z()/cos(dirZInCh.theta()));
00091   
00092   thePosition=posZAt0;
00093   theDirection = dirZInCh;
00094 
00095   // set cov matrix
00096   theCovMatrix=AlgebraicSymMatrix(4);
00097   setCovMatrixForZed(posZInCh);
00098 }

DTRecSegment4D::~DTRecSegment4D (  ) 

Destructor.

Definition at line 101 of file DTRecSegment4D.cc.

00101 {}


Member Function Documentation

DTChamberId DTRecSegment4D::chamberId (  )  const [virtual]

The (specific) DetId of the chamber on which the segment resides.

Definition at line 272 of file DTRecSegment4D.cc.

References TrackingRecHit::geographicalId().

Referenced by DTLocalTriggerTask::computeCoordinates(), DTChamberEfficiencyTask::interpolate(), DTChamberEfficiencyTask::isGoodSegment(), and DTLocalTriggerTask::runSegmentAnalysis().

00272                                             {
00273   return DTChamberId(geographicalId());
00274 }

double DTRecSegment4D::chi2 (  )  const [virtual]

Chi2 of the segment fit.

Implements RecSegment.

Definition at line 192 of file DTRecSegment4D.cc.

References DTRecSegment2D::chi2(), hasPhi(), hasZed(), HLT_VtxMuL3::result, thePhiSeg, and theZedSeg.

Referenced by DTChamberEfficiencyTask::getBestSegment(), DTChamberEfficiencyTask::isGoodSegment(), and operator<<().

00192                                   {
00193   double result=0;
00194   if (hasPhi()) result+=thePhiSeg.chi2();
00195   if (hasZed()) result+=theZedSeg.chi2();
00196   return result;
00197 }

virtual DTRecSegment4D* DTRecSegment4D::clone ( void   )  const [inline, virtual]

Implements TrackingRecHit.

Definition at line 46 of file DTRecSegment4D.h.

References DTRecSegment4D().

00046 { return new DTRecSegment4D(*this);}

int DTRecSegment4D::degreesOfFreedom (  )  const [virtual]

Degrees of freedom of the segment fit.

Implements RecSegment.

Definition at line 200 of file DTRecSegment4D.cc.

References DTRecSegment2D::degreesOfFreedom(), hasPhi(), hasZed(), HLT_VtxMuL3::result, thePhiSeg, and theZedSeg.

Referenced by DTChamberEfficiencyTask::getBestSegment(), DTChamberEfficiencyTask::isGoodSegment(), and operator<<().

00200                                            {
00201   int result=0;
00202   if (hasPhi()) result+=thePhiSeg.degreesOfFreedom();
00203   if (hasZed()) result+=theZedSeg.degreesOfFreedom();
00204   return result;
00205 }

virtual int DTRecSegment4D::dimension (  )  const [inline, virtual]

Dimension (in parameter space).

Implements RecSegment.

Definition at line 79 of file DTRecSegment4D.h.

References theDimension.

Referenced by DTCalibValidation::compute(), operator<<(), parameters(), parametersError(), and projectionMatrix().

00079 { return theDimension; }

bool DTRecSegment4D::hasPhi (  )  const [inline]

Does it have the Phi projection?

Definition at line 92 of file DTRecSegment4D.h.

References full, phi, and theProjection.

Referenced by TrackDetectorAssociator::addTAMuonSegmentMatch(), DTChamberEfficiencyTask::analyze(), chi2(), degreesOfFreedom(), DTSegmentUpdator::fit(), DTChamberEfficiencyTask::getBestSegment(), DTChamberEfficiencyTask::interpolate(), DTChamberEfficiencyTask::isGoodSegment(), phiSegment(), recHits(), CosmicMuonTrajectoryBuilder::t0(), and DTSegmentUpdator::update().

00092 {return (theProjection==full | theProjection==phi);}

bool DTRecSegment4D::hasZed (  )  const [inline]

Does it have the Z projection?

Definition at line 95 of file DTRecSegment4D.h.

References full, theProjection, and Z.

Referenced by TrackDetectorAssociator::addTAMuonSegmentMatch(), DTChamberEfficiencyTask::analyze(), chi2(), degreesOfFreedom(), DTSegmentUpdator::fit(), DTChamberEfficiencyTask::getBestSegment(), DTChamberEfficiencyTask::interpolate(), DTChamberEfficiencyTask::isGoodSegment(), recHits(), DTSegmentUpdator::update(), and zSegment().

00095 {return (theProjection==full | theProjection==Z);}

virtual LocalVector DTRecSegment4D::localDirection (  )  const [inline, virtual]

Local direction in Chamber frame.

Implements RecSegment.

Definition at line 67 of file DTRecSegment4D.h.

References theDirection.

Referenced by DTSegment4DQuality::analyze(), DTCalibValidation::compute(), DTLocalTriggerTask::computeCoordinates(), operator<<(), and DTSegmentUpdator::update().

00067 { return theDirection; }

LocalError DTRecSegment4D::localDirectionError (  )  const [virtual]

Local direction error in the Chamber frame.

Implements RecSegment.

Definition at line 187 of file DTRecSegment4D.cc.

References theCovMatrix.

Referenced by DTSegment4DQuality::analyze().

00187                                                      {
00188   return LocalError(theCovMatrix[0][0],theCovMatrix[0][1],theCovMatrix[1][1]);
00189 }

virtual LocalPoint DTRecSegment4D::localPosition (  )  const [inline, virtual]

Local position in Chamber frame.

Implements TrackingRecHit.

Definition at line 61 of file DTRecSegment4D.h.

References thePosition.

Referenced by DTSegment4DQuality::analyze(), DTChamberEfficiencyTask::analyze(), DTCalibValidation::compute(), DTLocalTriggerTask::computeCoordinates(), DTChamberEfficiencyTask::interpolate(), operator<<(), and DTSegmentUpdator::update().

00061 { return thePosition;}

LocalError DTRecSegment4D::localPositionError (  )  const [virtual]

Local position error in Chamber frame.

Implements TrackingRecHit.

Definition at line 182 of file DTRecSegment4D.cc.

References theCovMatrix.

Referenced by DTSegment4DQuality::analyze().

00182                                                     {
00183   return LocalError(theCovMatrix[2][2],theCovMatrix[2][3],theCovMatrix[3][3]);
00184 }

AlgebraicVector DTRecSegment4D::parameters ( void   )  const [virtual]

Parameters of the segment, for the track fit.

For a 4D segment: (dx/dy,dy/dz,x,y) For a 2D, phi-only segment: (dx/dz,x) For a 2D, Z-only segment: (dy/dz,y)

Implements TrackingRecHit.

Definition at line 104 of file DTRecSegment4D.cc.

References dimension(), phi, HLT_VtxMuL3::result, theDirection, thePosition, theProjection, PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), Z, and PV3DBase< T, PVType, FrameType >::z().

00104                                                  {
00105   if (dimension()==4) {
00106     // (dx/dz,dy/dz,x,y)
00107     AlgebraicVector result(4);
00108     result[2] = thePosition.x();
00109     result[3] = thePosition.y();
00110     result[0] = theDirection.x()/theDirection.z();
00111     result[1] = theDirection.y()/theDirection.z();    
00112     return result;
00113   } 
00114 
00115   AlgebraicVector result(2);
00116   if (theProjection==phi) {
00117     // (dx/dz,x)  
00118     result[1] = thePosition.x();
00119     result[0] = theDirection.x()/theDirection.z();
00120   } else if (theProjection==Z) {
00121     // (dy/dz,y) (note we are in the chamber r.f.)
00122     result[1] = thePosition.y();
00123     result[0] = theDirection.y()/theDirection.z();
00124   }
00125   return result;
00126 }

AlgebraicSymMatrix DTRecSegment4D::parametersError (  )  const [virtual]

Covariance matrix fo parameters().

Implements TrackingRecHit.

Definition at line 129 of file DTRecSegment4D.cc.

References dimension(), phi, HLT_VtxMuL3::result, theCovMatrix, theProjection, and Z.

00129                                                          { 
00130 
00131   if (dimension()==4) {
00132     return theCovMatrix;
00133   }
00134 
00135   AlgebraicSymMatrix result(2);
00136   if (theProjection==phi) {
00137     result[0][0] = theCovMatrix[0][0]; //S(dx/dz)
00138     result[0][1] = theCovMatrix[0][2]; //Cov(dx/dz,x)
00139     result[1][1] = theCovMatrix[2][2]; //S(x)
00140   } else if (theProjection==Z) {
00141     result[0][0] = theCovMatrix[1][1]; //S(dy/dz)
00142     result[0][1] = theCovMatrix[1][3]; //Cov(dy/dz,y)
00143     result[1][1] = theCovMatrix[3][3]; //S(y)
00144   }
00145   return result;
00146 }

DTChamberRecSegment2D* DTRecSegment4D::phiSegment (  )  [inline, private]

the superPhi segment

Definition at line 125 of file DTRecSegment4D.h.

References thePhiSeg.

00125 {return &thePhiSeg;}

const DTChamberRecSegment2D* DTRecSegment4D::phiSegment (  )  const [inline]

The superPhi segment: 0 if no phi projection available.

Definition at line 98 of file DTRecSegment4D.h.

References hasPhi(), and thePhiSeg.

Referenced by TrackDetectorAssociator::addTAMuonSegmentMatch(), DTCalibValidation::compute(), DTSegmentUpdator::fit(), DTChamberEfficiencyTask::getBestSegment(), DTChamberEfficiencyTask::isGoodSegment(), recHits(), CosmicMuonTrajectoryBuilder::t0(), and DTSegmentUpdator::update().

00098                                                   {
00099     return hasPhi()? &thePhiSeg: 0;
00100   }

AlgebraicMatrix DTRecSegment4D::projectionMatrix (  )  const [virtual]

The projection matrix relates the trajectory state parameters to the segment parameters().

Implements TrackingRecHit.

Definition at line 149 of file DTRecSegment4D.cc.

References dimension(), phi, theProjection, and Z.

00149                                                        {
00150   static bool isInitialized=false;
00151   static AlgebraicMatrix the4DProjectionMatrix(4, 5, 0); 
00152   static AlgebraicMatrix the2DPhiProjMatrix(2, 5, 0);
00153   static AlgebraicMatrix the2DZProjMatrix(2, 5, 0);
00154 
00155   if (!isInitialized) {
00156     the4DProjectionMatrix[0][1] = 1;
00157     the4DProjectionMatrix[1][2] = 1;
00158     the4DProjectionMatrix[2][3] = 1;
00159     the4DProjectionMatrix[3][4] = 1;
00160 
00161     the2DPhiProjMatrix[0][1] = 1;
00162     the2DPhiProjMatrix[1][3] = 1;
00163 
00164     the2DZProjMatrix[0][2] = 1;
00165     the2DZProjMatrix[1][4] = 1;
00166 
00167     isInitialized= true;
00168   }
00169 
00170   if (dimension()==4) { 
00171     return the4DProjectionMatrix;
00172   } else if (theProjection==phi) {
00173     return the2DPhiProjMatrix;
00174   } else if (theProjection==Z) {
00175     return the2DZProjMatrix;
00176   } else {
00177     return AlgebraicMatrix();
00178   }
00179 }

std::vector< TrackingRecHit * > DTRecSegment4D::recHits (  )  [virtual]

Non-const access to component RecHits (if any).

Implements TrackingRecHit.

Definition at line 261 of file DTRecSegment4D.cc.

References hasPhi(), hasZed(), phiSegment(), and zSegment().

00261                                                   {
00262 
00263   std::vector<TrackingRecHit*> pointersOfRecHits; 
00264 
00265   if (hasPhi()) pointersOfRecHits.push_back(phiSegment());
00266   if (hasZed()) pointersOfRecHits.push_back(zSegment());
00267   
00268   return pointersOfRecHits;
00269 }

std::vector< const TrackingRecHit * > DTRecSegment4D::recHits (  )  const [virtual]

Access to component RecHits (if any).

Implements TrackingRecHit.

Definition at line 250 of file DTRecSegment4D.cc.

References hasPhi(), hasZed(), phiSegment(), and zSegment().

00250                                                               {
00251   std::vector<const TrackingRecHit*> pointersOfRecHits; 
00252 
00253   if (hasPhi()) pointersOfRecHits.push_back(phiSegment());
00254   if (hasZed()) pointersOfRecHits.push_back(zSegment());
00255 
00256   return pointersOfRecHits;
00257 }

void DTRecSegment4D::setCovMatrix ( AlgebraicSymMatrix  mat  )  [inline]

Set covariance matrix.

Definition at line 114 of file DTRecSegment4D.h.

References theCovMatrix.

Referenced by DTSegmentUpdator::fit().

00114 { theCovMatrix = mat; }

void DTRecSegment4D::setCovMatrixForZed ( const LocalPoint posZInCh  )  [private]

Definition at line 208 of file DTRecSegment4D.cc.

References DTRecSegment2D::parametersError(), theCovMatrix, theZedSeg, and PV3DBase< T, PVType, FrameType >::z().

Referenced by DTRecSegment4D(), and DTSegmentUpdator::fit().

00208                                                                  {
00209   // Warning!!! the covariance matrix for Theta SL segment is defined in the SL
00210   // reference frame, here that in the Chamber ref frame must be used.
00211   // For direction, no problem, but the position is extrapolated, so we must
00212   // propagate the error properly.
00213 
00214   // many thanks to Paolo Ronchese for the help in deriving the formulas!
00215 
00216   // y=m*z+q in SL frame
00217   // y=m'*z+q' in CH frame
00218 
00219   // var(m') = var(m)
00220   theCovMatrix[1][1] = theZedSeg.parametersError()[0][0]; //sigma (dy/dz)
00221 
00222   // cov(m',q') = DeltaZ*Var(m) + Cov(m,q)
00223   theCovMatrix[1][3] =
00224     posZInCh.z()*theZedSeg.parametersError()[0][0]+
00225     theZedSeg.parametersError()[0][1]; //cov(dy/dz,y)
00226 
00227   // Var(q') = DeltaZ^2*Var(m) + Var(q) + 2*DeltaZ*Cov(m,q)
00228   // cout << "Var(q') = DeltaZ^2*Var(m) + Var(q) + 2*DeltaZ*Cov(m,q)" << endl;
00229   // cout << "Var(q')= " << posZInCh.z()*posZInCh.z() << "*" <<
00230   //   theZedSeg.parametersError()[0][0] << " + " << 
00231   //   theZedSeg.parametersError()[1][1] << " + " << 
00232   //   2*posZInCh.z() << "*" << theZedSeg.parametersError()[0][1] ;
00233   theCovMatrix[3][3] =
00234     (posZInCh.z()*posZInCh.z())*theZedSeg.parametersError()[0][0] +
00235     theZedSeg.parametersError()[1][1] +
00236     2*posZInCh.z()*theZedSeg.parametersError()[0][1];
00237   // cout << " = " << theCovMatrix[3][3] << endl;
00238 }

void DTRecSegment4D::setDirection ( LocalVector  dir  )  [inline]

Set direction.

Definition at line 111 of file DTRecSegment4D.h.

References theDirection.

Referenced by DTSegmentUpdator::fit().

00111 { theDirection = dir; }

void DTRecSegment4D::setPosition ( LocalPoint  pos  )  [inline]

Set position.

Definition at line 108 of file DTRecSegment4D.h.

References thePosition.

Referenced by DTSegmentUpdator::fit().

00108 { thePosition = pos; }

DTSLRecSegment2D* DTRecSegment4D::zSegment (  )  [inline, private]

the Z segment

Definition at line 128 of file DTRecSegment4D.h.

References theZedSeg.

00128 {return &theZedSeg;}

const DTSLRecSegment2D* DTRecSegment4D::zSegment (  )  const [inline]

The Z segment: 0 if not zed projection available.

Definition at line 103 of file DTRecSegment4D.h.

References hasZed(), and theZedSeg.

Referenced by TrackDetectorAssociator::addTAMuonSegmentMatch(), DTSegment4DQuality::analyze(), DTCalibValidation::compute(), DTSegmentUpdator::fit(), DTChamberEfficiencyTask::getBestSegment(), DTChamberEfficiencyTask::isGoodSegment(), recHits(), and DTSegmentUpdator::update().

00103                                            {
00104     return hasZed()? &theZedSeg : 0;
00105   }


Friends And Related Function Documentation

friend class DTSegmentUpdator [friend]

Definition at line 28 of file DTRecSegment4D.h.


Member Data Documentation

AlgebraicSymMatrix DTRecSegment4D::theCovMatrix [private]

Definition at line 142 of file DTRecSegment4D.h.

Referenced by DTRecSegment4D(), localDirectionError(), localPositionError(), parametersError(), setCovMatrix(), and setCovMatrixForZed().

int DTRecSegment4D::theDimension [private]

Definition at line 147 of file DTRecSegment4D.h.

Referenced by dimension().

LocalVector DTRecSegment4D::theDirection [private]

Definition at line 131 of file DTRecSegment4D.h.

Referenced by DTRecSegment4D(), localDirection(), parameters(), and setDirection().

DTChamberRecSegment2D DTRecSegment4D::thePhiSeg [private]

Definition at line 144 of file DTRecSegment4D.h.

Referenced by chi2(), degreesOfFreedom(), DTRecSegment4D(), and phiSegment().

LocalPoint DTRecSegment4D::thePosition [private]

Definition at line 130 of file DTRecSegment4D.h.

Referenced by DTRecSegment4D(), localPosition(), parameters(), and setPosition().

Projection DTRecSegment4D::theProjection [private]

Definition at line 122 of file DTRecSegment4D.h.

Referenced by hasPhi(), hasZed(), parameters(), parametersError(), and projectionMatrix().

DTSLRecSegment2D DTRecSegment4D::theZedSeg [private]

Definition at line 145 of file DTRecSegment4D.h.

Referenced by chi2(), degreesOfFreedom(), setCovMatrixForZed(), and zSegment().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:19:00 2009 for CMSSW by  doxygen 1.5.4