CMS 3D CMS Logo

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

#include <BTLRecHitsErrorEstimatorIM.h>

Public Member Functions

 BTLRecHitsErrorEstimatorIM (const MTDGeomDet *det, const LocalPoint &lp)
 
LocalError localError () const
 

Static Public Member Functions

static float positionError ()
 

Private Attributes

const MTDGeomDetdet_
 
const LocalPointlp_
 

Detailed Description

Definition at line 22 of file BTLRecHitsErrorEstimatorIM.h.

Constructor & Destructor Documentation

◆ BTLRecHitsErrorEstimatorIM()

BTLRecHitsErrorEstimatorIM::BTLRecHitsErrorEstimatorIM ( const MTDGeomDet det,
const LocalPoint lp 
)
inline

Definition at line 24 of file BTLRecHitsErrorEstimatorIM.h.

24  : det_(det), lp_(lp) {
26  throw cms::Exception("BTLRecHitsErrorEstimatorIM")
27  << "This is an object from Endcap. Only use it for the Barrel!" << std::endl;
28  }
29  }

References Exception, GeomDetEnumerators::isEndcap(), GeomDetType::subDetector(), and GeomDet::type().

Member Function Documentation

◆ localError()

LocalError BTLRecHitsErrorEstimatorIM::localError ( ) const
inline

position error, refer to: https://indico.cern.ch/event/825902/contributions/3455359/attachments/1858923/3054344/residual_calculation_0607.pdf

Definition at line 30 of file BTLRecHitsErrorEstimatorIM.h.

30  {
33  const float positionError2 = std::pow(positionError(), 2);
34  const ProxyMTDTopology& topoproxy = static_cast<const ProxyMTDTopology&>(det_->topology());
35  const RectangularMTDTopology& topo = static_cast<const RectangularMTDTopology&>(topoproxy.specificTopology());
36  MeasurementPoint mp = topo.measurementPosition(lp_);
37  MeasurementError simpleRect(1. / 12., 0, 1. / 12.);
38  LocalError error_before = topo.localError(mp, simpleRect);
39  LocalError error_modified(positionError2, error_before.xy(), error_before.yy());
40  return error_modified;
41  }

References det_, lp_, positionError(), funct::pow(), ProxyMTDTopology::specificTopology(), GeomDet::topology(), LocalError::xy(), and LocalError::yy().

Referenced by MTDThresholdClusterizer::copy_to_buffer().

◆ positionError()

static float BTLRecHitsErrorEstimatorIM::positionError ( )
inlinestatic

Definition at line 42 of file BTLRecHitsErrorEstimatorIM.h.

42  {
43  constexpr float positionError = 0.6f;
44  return positionError;
45  }

Referenced by localError(), and BTLUncalibRecHitAlgo::makeRecHit().

Member Data Documentation

◆ det_

const MTDGeomDet* BTLRecHitsErrorEstimatorIM::det_
private

Definition at line 48 of file BTLRecHitsErrorEstimatorIM.h.

Referenced by localError().

◆ lp_

const LocalPoint& BTLRecHitsErrorEstimatorIM::lp_
private

Definition at line 49 of file BTLRecHitsErrorEstimatorIM.h.

Referenced by localError().

Point2DBase
Definition: Point2DBase.h:9
GeomDetType::subDetector
SubDetector subDetector() const
Definition: GeomDetType.h:21
LocalError::xy
float xy() const
Definition: LocalError.h:23
GeomDet::type
virtual const GeomDetType & type() const
Definition: GeomDet.cc:69
ProxyMTDTopology::specificTopology
virtual const PixelTopology & specificTopology() const
Definition: ProxyMTDTopology.h:89
GeomDet::topology
virtual const Topology & topology() const
Definition: GeomDet.cc:67
BTLRecHitsErrorEstimatorIM::det_
const MTDGeomDet * det_
Definition: BTLRecHitsErrorEstimatorIM.h:48
MeasurementError
Definition: MeasurementError.h:8
LocalError
Definition: LocalError.h:12
RectangularMTDTopology
Definition: RectangularMTDTopology.h:39
ProxyMTDTopology
Definition: ProxyMTDTopology.h:28
BTLRecHitsErrorEstimatorIM::lp_
const LocalPoint & lp_
Definition: BTLRecHitsErrorEstimatorIM.h:49
Exception
Definition: hltDiff.cc:246
funct::pow
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:29
GeomDetEnumerators::isEndcap
bool isEndcap(GeomDetEnumerators::SubDetector m)
Definition: GeomDetEnumerators.cc:62
BTLRecHitsErrorEstimatorIM::positionError
static float positionError()
Definition: BTLRecHitsErrorEstimatorIM.h:42
LocalError::yy
float yy() const
Definition: LocalError.h:24