CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
EmulatedME0Segment Class Reference

#include <EmulatedME0Segment.h>

Inheritance diagram for EmulatedME0Segment:
RecSegment TrackingRecHit

Public Member Functions

double chi2 () const override
 Chi2 of the segment fit. More...
 
EmulatedME0Segmentclone () const override
 
int degreesOfFreedom () const override
 Degrees of freedom of the segment fit. More...
 
int dimension () const override
 Dimension (in parameter space) More...
 
 EmulatedME0Segment ()
 Default constructor. More...
 
 EmulatedME0Segment (const LocalPoint &origin, const LocalVector &direction, const AlgebraicSymMatrix &errors, const double chi2)
 Constructor. More...
 
LocalVector localDirection () const override
 Local direction. More...
 
LocalError localDirectionError () const override
 Error on the local direction. More...
 
LocalPoint localPosition () const override
 
LocalError localPositionError () const override
 
int nRecHits () const
 
AlgebraicVector parameters () const override
 Parameters of the segment, for the track fit in the order (dx/dz, dy/dz, x, y ) More...
 
AlgebraicSymMatrix parametersError () const override
 Covariance matrix of parameters() More...
 
void print () const
 
AlgebraicMatrix projectionMatrix () const override
 The projection matrix relates the trajectory state parameters to the segment parameters(). More...
 
std::vector< const TrackingRecHit * > recHits () const override
 Access to component RecHits (if any) More...
 
std::vector< TrackingRecHit * > recHits () override
 Non-const access to component RecHits (if any) More...
 
 ~EmulatedME0Segment () override
 Destructor. More...
 
- Public Member Functions inherited from RecSegment
 RecSegment (DetId id)
 
 RecSegment (TrackingRecHit::id_type id=0)
 
 ~RecSegment () override
 Destructor. More...
 
- Public Member Functions inherited from TrackingRecHit
virtual bool canImproveWithTrack () const
 
RecHitPointer cloneForFit (const GeomDet &idet) const
 
virtual TrackingRecHitcloneHit () const
 
virtual RecHitPointer cloneSH () const
 
const GeomDetdet () const
 
virtual const GeomDetUnitdetUnit () const
 
virtual float errorGlobalR () const
 
virtual float errorGlobalRPhi () const
 
virtual float errorGlobalZ () const
 
DetId geographicalId () const
 
virtual void getKfComponents (KfComponentsHolder &holder) const
 
unsigned int getRTTI () const
 
Type getType () const
 
virtual GlobalPoint globalPosition () const
 
virtual GlobalError globalPositionError () const
 
virtual bool hasPositionAndError () const
 to be redefined by daughter class More...
 
virtual TrackingRecHit const * hit () const
 
bool isValid () const
 
id_type rawId () const
 
virtual void recHitsV (std::vector< const TrackingRecHit * > &) const
 
virtual void recHitsV (std::vector< TrackingRecHit * > &)
 
virtual void setDet (const GeomDet &idet)
 
virtual bool sharesInput (const TrackingRecHit *other, SharedInputType what) const
 
virtual const Surfacesurface () const
 
 TrackingRecHit (const GeomDet &idet, TrackingRecHit const &rh)
 
 TrackingRecHit (const GeomDet &idet, Type type=valid)
 
 TrackingRecHit (const GeomDet &idet, unsigned int rt, Type type=valid)
 
 TrackingRecHit (DetId id, Type type=valid)
 
 TrackingRecHit (DetId id, unsigned int rt, Type type=valid)
 
 TrackingRecHit (id_type id=0, Type type=valid)
 
virtual ConstRecHitContainer transientHits () const
 
Type type () const
 
virtual float weight () const
 
virtual ~TrackingRecHit ()
 

Private Attributes

double theChi2
 
AlgebraicSymMatrix theCovMatrix
 
LocalVector theLocalDirection
 
LocalPoint theOrigin
 

Additional Inherited Members

- Public Types inherited from TrackingRecHit
typedef std::vector< ConstRecHitPointerConstRecHitContainer
 
using ConstRecHitPointer = std::shared_ptr< TrackingRecHit const >
 
typedef unsigned int id_type
 
typedef std::vector< ConstRecHitPointerRecHitContainer
 
using RecHitPointer = std::shared_ptr< TrackingRecHit const >
 
enum  SharedInputType { all, some }
 definition of equality via shared input More...
 
enum  Type {
  valid = 0, missing = 1, inactive = 2, bad = 3,
  missing_inner = 4, missing_outer = 5, inactive_inner = 6, inactive_outer = 7
}
 
- Static Public Attributes inherited from TrackingRecHit
static const int rttiShift = 24
 
static const int typeMask = 0xf
 
- Protected Member Functions inherited from TrackingRecHit
void setId (id_type iid)
 
void setRTTI (unsigned int rt)
 
void setType (Type ttype)
 

Detailed Description

Describes a simulated track segment in a z-plane modeling an ME0 chamber. It is modeled after CSCSegment, so it is a 4-dimensional object ( origin (x,y) , direction (x,y) ) Formally it must be defined as a LocalPoint and LocalError but we actually use the global coordinate system.

Author
David Nash

Definition at line 17 of file EmulatedME0Segment.h.

Constructor & Destructor Documentation

◆ EmulatedME0Segment() [1/2]

EmulatedME0Segment::EmulatedME0Segment ( )
inline

Default constructor.

Definition at line 20 of file EmulatedME0Segment.h.

20 : theOrigin(0, 0, 0), theLocalDirection(0, 0, 0), theCovMatrix(4, 0), theChi2(0.) {}

Referenced by clone().

◆ EmulatedME0Segment() [2/2]

EmulatedME0Segment::EmulatedME0Segment ( const LocalPoint origin,
const LocalVector direction,
const AlgebraicSymMatrix errors,
const double  chi2 
)

Constructor.

Definition at line 10 of file EmulatedME0Segment.cc.

14  : theOrigin(origin), theLocalDirection(direction), theCovMatrix(errors), theChi2(chi2) {}

◆ ~EmulatedME0Segment()

EmulatedME0Segment::~EmulatedME0Segment ( )
override

Destructor.

Definition at line 16 of file EmulatedME0Segment.cc.

16 {}

Member Function Documentation

◆ chi2()

double EmulatedME0Segment::chi2 ( ) const
inlineoverridevirtual

Chi2 of the segment fit.

Implements RecSegment.

Definition at line 53 of file EmulatedME0Segment.h.

53 { return theChi2; }

References theChi2.

◆ clone()

EmulatedME0Segment* EmulatedME0Segment::clone ( void  ) const
inlineoverridevirtual

Implements TrackingRecHit.

Definition at line 32 of file EmulatedME0Segment.h.

32 { return new EmulatedME0Segment(*this); }

References EmulatedME0Segment().

◆ degreesOfFreedom()

int EmulatedME0Segment::degreesOfFreedom ( ) const
inlineoverridevirtual

Degrees of freedom of the segment fit.

Implements RecSegment.

Definition at line 57 of file EmulatedME0Segment.h.

57 { return -1; } //Maybe change later?

◆ dimension()

int EmulatedME0Segment::dimension ( ) const
inlineoverridevirtual

Dimension (in parameter space)

Implements RecSegment.

Definition at line 55 of file EmulatedME0Segment.h.

55 { return 4; }

◆ localDirection()

LocalVector EmulatedME0Segment::localDirection ( ) const
inlineoverridevirtual

Local direction.

Implements RecSegment.

Definition at line 37 of file EmulatedME0Segment.h.

37 { return theLocalDirection; }

References theLocalDirection.

Referenced by operator<<().

◆ localDirectionError()

LocalError EmulatedME0Segment::localDirectionError ( ) const
overridevirtual

Error on the local direction.

Implements RecSegment.

Definition at line 22 of file EmulatedME0Segment.cc.

22  {
23  return LocalError(theCovMatrix[0][0], theCovMatrix[0][1], theCovMatrix[1][1]);
24 }

References theCovMatrix.

Referenced by operator<<().

◆ localPosition()

LocalPoint EmulatedME0Segment::localPosition ( ) const
inlineoverridevirtual

Implements TrackingRecHit.

Definition at line 34 of file EmulatedME0Segment.h.

34 { return theOrigin; }

References theOrigin.

Referenced by operator<<().

◆ localPositionError()

LocalError EmulatedME0Segment::localPositionError ( ) const
overridevirtual

Implements TrackingRecHit.

Definition at line 18 of file EmulatedME0Segment.cc.

18  {
19  return LocalError(theCovMatrix[2][2], theCovMatrix[2][3], theCovMatrix[3][3]);
20 }

References theCovMatrix.

Referenced by operator<<().

◆ nRecHits()

int EmulatedME0Segment::nRecHits ( ) const
inline

Definition at line 61 of file EmulatedME0Segment.h.

61 { return 0; } //theME0RecHits.size(); }

◆ parameters()

AlgebraicVector EmulatedME0Segment::parameters ( void  ) const
overridevirtual

Parameters of the segment, for the track fit in the order (dx/dz, dy/dz, x, y )

Implements TrackingRecHit.

Definition at line 26 of file EmulatedME0Segment.cc.

26  {
27  // For consistency with DT and what we require for the TrackingRecHit interface,
28  // the order of the parameters in the returned vector should be (dx/dz, dy/dz, x, z)
29 
31 
34  result[2] = theOrigin.x();
35  result[3] = theOrigin.y();
36 
37  return result;
38 }

References mps_fire::result, theLocalDirection, theOrigin, PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().

◆ parametersError()

AlgebraicSymMatrix EmulatedME0Segment::parametersError ( ) const
inlineoverridevirtual

Covariance matrix of parameters()

Implements TrackingRecHit.

Definition at line 44 of file EmulatedME0Segment.h.

44 { return theCovMatrix; }

References theCovMatrix.

◆ print()

void EmulatedME0Segment::print ( void  ) const

Definition at line 58 of file EmulatedME0Segment.cc.

58 { std::cout << *this << std::endl; }

References gather_cfg::cout.

◆ projectionMatrix()

AlgebraicMatrix EmulatedME0Segment::projectionMatrix ( ) const
overridevirtual

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

Implements TrackingRecHit.

Definition at line 55 of file EmulatedME0Segment.cc.

55 { return theProjectionMatrix; }

References theProjectionMatrix.

◆ recHits() [1/2]

std::vector<const TrackingRecHit*> EmulatedME0Segment::recHits ( ) const
inlineoverridevirtual

Access to component RecHits (if any)

Implements TrackingRecHit.

Definition at line 49 of file EmulatedME0Segment.h.

49 { return std::vector<const TrackingRecHit*>(); }

◆ recHits() [2/2]

std::vector<TrackingRecHit*> EmulatedME0Segment::recHits ( )
inlineoverridevirtual

Non-const access to component RecHits (if any)

Implements TrackingRecHit.

Definition at line 51 of file EmulatedME0Segment.h.

51 { return std::vector<TrackingRecHit*>(); }

Member Data Documentation

◆ theChi2

double EmulatedME0Segment::theChi2
private

Definition at line 71 of file EmulatedME0Segment.h.

Referenced by chi2().

◆ theCovMatrix

AlgebraicSymMatrix EmulatedME0Segment::theCovMatrix
private

Definition at line 70 of file EmulatedME0Segment.h.

Referenced by localDirectionError(), localPositionError(), and parametersError().

◆ theLocalDirection

LocalVector EmulatedME0Segment::theLocalDirection
private

Definition at line 69 of file EmulatedME0Segment.h.

Referenced by localDirection(), and parameters().

◆ theOrigin

LocalPoint EmulatedME0Segment::theOrigin
private

Definition at line 68 of file EmulatedME0Segment.h.

Referenced by localPosition(), and parameters().

EmulatedME0Segment::theLocalDirection
LocalVector theLocalDirection
Definition: EmulatedME0Segment.h:69
EmulatedME0Segment::theCovMatrix
AlgebraicSymMatrix theCovMatrix
Definition: EmulatedME0Segment.h:70
PV3DBase::x
T x() const
Definition: PV3DBase.h:59
gather_cfg.cout
cout
Definition: gather_cfg.py:144
PV3DBase::z
T z() const
Definition: PV3DBase.h:61
EmulatedME0Segment::EmulatedME0Segment
EmulatedME0Segment()
Default constructor.
Definition: EmulatedME0Segment.h:20
EmulatedME0Segment::chi2
double chi2() const override
Chi2 of the segment fit.
Definition: EmulatedME0Segment.h:53
errors
Definition: errors.py:1
AlgebraicVector
CLHEP::HepVector AlgebraicVector
Definition: AlgebraicObjects.h:13
LocalError
Definition: LocalError.h:12
PV3DBase::y
T y() const
Definition: PV3DBase.h:60
EmulatedME0Segment::theOrigin
LocalPoint theOrigin
Definition: EmulatedME0Segment.h:68
theProjectionMatrix
static const AlgebraicMatrix theProjectionMatrix
Definition: CSCSegment.cc:79
mps_fire.result
result
Definition: mps_fire.py:303
EmulatedME0Segment::theChi2
double theChi2
Definition: EmulatedME0Segment.h:71