CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions
StripCPEfromTrackAngle Class Reference

#include <StripCPEfromTrackAngle.h>

Inheritance diagram for StripCPEfromTrackAngle:
StripCPE StripClusterParameterEstimator

Public Member Functions

StripClusterParameterEstimator::LocalValues localParameters (const SiStripCluster &, const GeomDetUnit &, const LocalTrajectoryParameters &) const
 
 StripCPEfromTrackAngle (edm::ParameterSet &conf, const MagneticField &mag, const TrackerGeometry &geom, const SiStripLorentzAngle &lorentz, const SiStripBackPlaneCorrection &backPlaneCorrection, const SiStripConfObject &confObj, const SiStripLatency &latency)
 
- Public Member Functions inherited from StripCPE
LocalVector driftDirection (const StripGeomDetUnit *det) const
 
StripClusterParameterEstimator::LocalValues localParameters (const SiStripCluster &cl, const GeomDetUnit &) const
 
 StripCPE (edm::ParameterSet &conf, const MagneticField &, const TrackerGeometry &, const SiStripLorentzAngle &, const SiStripBackPlaneCorrection &, const SiStripConfObject &, const SiStripLatency &)
 
- Public Member Functions inherited from StripClusterParameterEstimator
virtual LocalValues localParameters (const SiStripCluster &cluster, const GeomDetUnit &gd, const TrajectoryStateOnSurface &tsos) const
 
virtual VLocalValues localParametersV (const SiStripCluster &cluster, const GeomDetUnit &gd) const
 
virtual VLocalValues localParametersV (const SiStripCluster &cluster, const GeomDetUnit &gd, const TrajectoryStateOnSurface &tsos) const
 
virtual ~StripClusterParameterEstimator ()
 

Additional Inherited Members

- Public Types inherited from StripClusterParameterEstimator
typedef std::pair< LocalPoint,
LocalError
LocalValues
 
typedef std::vector< LocalValuesVLocalValues
 
- Protected Member Functions inherited from StripCPE
Param const & param (const GeomDetUnit &det) const
 
- Protected Attributes inherited from StripCPE
const SiStripBackPlaneCorrectionBackPlaneCorrectionMap_
 
const TrackerGeometrygeom_
 
const SiStripLorentzAngleLorentzAngleMap_
 
const MagneticFieldmagfield_
 
const bool peakMode_
 
std::vector< float > xtalk1
 
std::vector< float > xtalk2
 

Detailed Description

Definition at line 6 of file StripCPEfromTrackAngle.h.

Constructor & Destructor Documentation

StripCPEfromTrackAngle::StripCPEfromTrackAngle ( edm::ParameterSet conf,
const MagneticField mag,
const TrackerGeometry geom,
const SiStripLorentzAngle lorentz,
const SiStripBackPlaneCorrection backPlaneCorrection,
const SiStripConfObject confObj,
const SiStripLatency latency 
)
inline

Definition at line 14 of file StripCPEfromTrackAngle.h.

21  : StripCPE(conf, mag, geom, lorentz, backPlaneCorrection, confObj, latency ) {}
StripCPE(edm::ParameterSet &conf, const MagneticField &, const TrackerGeometry &, const SiStripLorentzAngle &, const SiStripBackPlaneCorrection &, const SiStripConfObject &, const SiStripLatency &)
Definition: StripCPE.cc:11

Member Function Documentation

StripClusterParameterEstimator::LocalValues StripCPEfromTrackAngle::localParameters ( const SiStripCluster cluster,
const GeomDetUnit det,
const LocalTrajectoryParameters ltp 
) const
virtual

Reimplemented from StripClusterParameterEstimator.

Definition at line 24 of file StripCPEfromTrackAngle.cc.

References funct::abs(), SiStripCluster::amplitudes(), StripCPE::Param::backplanecorrection, SiStripCluster::barycenter(), StripCPE::Param::coveredStrips(), StripCPE::Param::drift, f, StripTopology::localError(), StripTopology::localPosition(), PV3DBase< T, PVType, FrameType >::mag(), StripCPE::Param::maxLength, LocalTrajectoryParameters::momentum(), AlCaHLTBitMon_ParallelJobs::p, StripCPE::param(), LocalTrajectoryParameters::position(), StripCPE::Param::thickness, StripCPE::Param::topology, LocalTrajectoryParameters::vector(), and PV3DBase< T, PVType, FrameType >::z().

24  {
25 
26  StripCPE::Param const & p = param(det);
27 
28  LocalVector track = ltp.momentum();
29  track *=
30  (track.z()<0) ? std::abs(p.thickness/track.z()) :
31  (track.z()>0) ? -std::abs(p.thickness/track.z()) :
32  p.maxLength/track.mag() ;
33 
34  const unsigned N = cluster.amplitudes().size();
35  const float fullProjection = p.coveredStrips( track+p.drift, ltp.position());
36  const float uerr2 = stripErrorSquared( N, std::abs(fullProjection) );
37  const float strip = cluster.barycenter() - 0.5f*(1.f-p.backplanecorrection) * fullProjection
38  + 0.5f*p.coveredStrips(track, ltp.position());
39 
40  return std::make_pair( p.topology->localPosition(strip, ltp.vector()),
41  p.topology->localError(strip, uerr2, ltp.vector()) );
42 }
LocalPoint position() const
Local x and y position coordinates.
float thickness
Definition: StripCPE.h:45
StripTopology const * topology
Definition: StripCPE.h:43
float backplanecorrection
Definition: StripCPE.h:47
AlgebraicVector5 vector() const
T mag() const
Definition: PV3DBase.h:67
T z() const
Definition: PV3DBase.h:64
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
double f[11][100]
float barycenter() const
LocalVector momentum() const
Momentum vector in the local frame.
float coveredStrips(const LocalVector &, const LocalPoint &) const
Definition: StripCPE.cc:76
#define N
Definition: blowfish.cc:9
virtual LocalError localError(float strip, float stripErr2) const =0
float maxLength
Definition: StripCPE.h:45
Param const & param(const GeomDetUnit &det) const
Definition: StripCPE.h:51
LocalVector drift
Definition: StripCPE.h:44
virtual LocalPoint localPosition(float strip) const =0
const std::vector< uint8_t > & amplitudes() const