CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Types
reco::GhostTrackState Class Reference

#include <GhostTrackState.h>

Inheritance diagram for reco::GhostTrackState:
ProxyBase11< T >

Public Types

typedef BasicGhostTrackState::CovarianceMatrix CovarianceMatrix
 
typedef BasicGhostTrackState::Vertex Vertex
 
- Public Types inherited from ProxyBase11< T >
using pointer = std::shared_ptr< T >
 

Public Member Functions

double axisDistance (const GlobalPoint &point, const GlobalVector &dir) const
 
double axisDistance (const GhostTrackPrediction &pred) const
 
CovarianceMatrix cartesianCovariance () const
 
GlobalError cartesianError () const
 
double flightDistance (const GlobalPoint &point, const GlobalVector &dir) const
 
 GhostTrackState (const TransientTrack &track)
 
 GhostTrackState (const GlobalPoint &pos, const CovarianceMatrix &cov)
 
 GhostTrackState (const GlobalPoint &pos, const GlobalError &error)
 
 GhostTrackState (const VertexState &state)
 
GlobalPoint globalPosition () const
 
bool isTrack () const
 
bool isValid () const
 
bool isVertex () const
 
double lambda () const
 
double lambdaError (const GhostTrackPrediction &pred, const GlobalError &pvError=GlobalError()) const
 
bool linearize (const GhostTrackPrediction &pred, bool initial=false, double lambda=0.)
 
bool linearize (const GhostTrackPrediction &pred, double lambda)
 
void reset ()
 
void setWeight (double weight)
 
const TransientTracktrack () const
 
const TrajectoryStateOnSurfacetsos () const
 
Vertex vertexStateOnGhostTrack (const GhostTrackPrediction &pred, bool withMeasurementError=true) const
 
Vertex vertexStateOnMeasurement (const GhostTrackPrediction &pred, bool withGhostTrackError=true) const
 
double weight () const
 
- Public Member Functions inherited from ProxyBase11< T >
void check () const
 
const Tdata () const
 
void destroy () noexcept
 
bool isValid () const
 
template<typename U >
ProxyBase11operator= (std::shared_ptr< U > p)
 
ProxyBase11operator= (ProxyBase11 &&other) noexcept=default
 
ProxyBase11operator= (const ProxyBase11 &other)=default
 
 ProxyBase11 ()
 
 ProxyBase11 (T *p)
 
template<typename U >
 ProxyBase11 (std::shared_ptr< U > p)
 
 ProxyBase11 (ProxyBase11 &&other) noexcept=default
 
 ProxyBase11 (ProxyBase11 const &other)=default
 
int references () const
 
void reset ()
 
TsharedData ()
 
void swap (ProxyBase11 &other) noexcept
 
TunsharedData ()
 
 ~ProxyBase11 () noexcept
 

Private Types

typedef BasicGhostTrackState::Proxy Base
 

Detailed Description

Definition at line 21 of file GhostTrackState.h.

Member Typedef Documentation

◆ Base

Definition at line 22 of file GhostTrackState.h.

◆ CovarianceMatrix

Definition at line 25 of file GhostTrackState.h.

◆ Vertex

Definition at line 26 of file GhostTrackState.h.

Constructor & Destructor Documentation

◆ GhostTrackState() [1/4]

GhostTrackState::GhostTrackState ( const TransientTrack track)

Definition at line 34 of file GhostTrackState.cc.

const TransientTrack & track() const
BasicGhostTrackState::Proxy Base

◆ GhostTrackState() [2/4]

GhostTrackState::GhostTrackState ( const GlobalPoint pos,
const CovarianceMatrix cov 
)

Definition at line 36 of file GhostTrackState.cc.

◆ GhostTrackState() [3/4]

GhostTrackState::GhostTrackState ( const GlobalPoint pos,
const GlobalError error 
)

◆ GhostTrackState() [4/4]

GhostTrackState::GhostTrackState ( const VertexState state)

Definition at line 42 of file GhostTrackState.cc.

43  : Base(new VertexGhostTrackState(state.position(), state.error().matrix())) {}
BasicGhostTrackState::Proxy Base

Member Function Documentation

◆ axisDistance() [1/2]

double GhostTrackState::axisDistance ( const GlobalPoint point,
const GlobalVector dir 
) const

Definition at line 64 of file GhostTrackState.cc.

References DeadROC_duringRun::dir, globalPosition(), mag(), and point.

Referenced by axisDistance().

64  {
65  return (globalPosition() - point).cross(dir.unit()).mag();
66 }
GlobalPoint globalPosition() const
T mag() const
The vector magnitude. Equivalent to sqrt(vec.mag2())
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5

◆ axisDistance() [2/2]

double GhostTrackState::axisDistance ( const GhostTrackPrediction pred) const

Definition at line 68 of file GhostTrackState.cc.

References axisDistance(), reco::GhostTrackPrediction::direction(), and reco::GhostTrackPrediction::origin().

68  {
69  return axisDistance(pred.origin(), pred.direction());
70 }
double axisDistance(const GlobalPoint &point, const GlobalVector &dir) const
const GlobalVector direction() const
const GlobalPoint origin() const

◆ cartesianCovariance()

CovarianceMatrix reco::GhostTrackState::cartesianCovariance ( ) const
inline

Definition at line 38 of file GhostTrackState.h.

References ProxyBase11< T >::data().

38 { return data().cartesianCovariance(); }
const T & data() const
Definition: ProxyBase11.h:51

◆ cartesianError()

GlobalError reco::GhostTrackState::cartesianError ( ) const
inline

Definition at line 37 of file GhostTrackState.h.

References ProxyBase11< T >::data().

37 { return data().cartesianError(); }
const T & data() const
Definition: ProxyBase11.h:51

◆ flightDistance()

double GhostTrackState::flightDistance ( const GlobalPoint point,
const GlobalVector dir 
) const

Definition at line 60 of file GhostTrackState.cc.

References DeadROC_duringRun::dir, globalPosition(), and point.

60  {
61  return (globalPosition() - point).dot(dir.unit());
62 }
GlobalPoint globalPosition() const
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5

◆ globalPosition()

GlobalPoint reco::GhostTrackState::globalPosition ( ) const
inline

Definition at line 36 of file GhostTrackState.h.

References ProxyBase11< T >::data().

Referenced by axisDistance(), and flightDistance().

36 { return data().globalPosition(); }
const T & data() const
Definition: ProxyBase11.h:51

◆ isTrack()

bool GhostTrackState::isTrack ( ) const

Definition at line 45 of file GhostTrackState.cc.

References ProxyBase11< T >::data().

45 { return dynamic_cast<const TrackGhostTrackState *>(&data()) != nullptr; }
const T & data() const
Definition: ProxyBase11.h:51

◆ isValid()

bool reco::GhostTrackState::isValid ( void  ) const
inline

◆ isVertex()

bool GhostTrackState::isVertex ( ) const

Definition at line 47 of file GhostTrackState.cc.

References ProxyBase11< T >::data().

47 { return dynamic_cast<const VertexGhostTrackState *>(&data()) != nullptr; }
const T & data() const
Definition: ProxyBase11.h:51

◆ lambda()

double reco::GhostTrackState::lambda ( ) const
inline

Definition at line 40 of file GhostTrackState.h.

References ProxyBase11< T >::data().

Referenced by linearize().

40 { return data().lambda(); }
const T & data() const
Definition: ProxyBase11.h:51

◆ lambdaError()

double GhostTrackState::lambdaError ( const GhostTrackPrediction pred,
const GlobalError pvError = GlobalError() 
) const

Definition at line 72 of file GhostTrackState.cc.

References conv, reco::GhostTrackPrediction::direction(), isValid(), GlobalErrorBase< T, ErrorWeightType >::matrix(), reco::GhostTrackPrediction::rho2(), mathSSE::sqrt(), and vertexStateOnGhostTrack().

72  {
73  if (!isValid())
74  return -1.;
75 
76  return std::sqrt(ROOT::Math::Similarity(conv(pred.direction()),
77  (vertexStateOnGhostTrack(pred).second.matrix() + pvError.matrix())) /
78  pred.rho2());
79 }
const GlobalVector direction() const
Vertex vertexStateOnGhostTrack(const GhostTrackPrediction &pred, bool withMeasurementError=true) const
T sqrt(T t)
Definition: SSEVec.h:23
const AlgebraicSymMatrix33 matrix() const
EPOS::IO_EPOS conv

◆ linearize() [1/2]

bool reco::GhostTrackState::linearize ( const GhostTrackPrediction pred,
bool  initial = false,
double  lambda = 0. 
)
inline

Definition at line 47 of file GhostTrackState.h.

References lambda(), and ProxyBase11< T >::unsharedData().

Referenced by reco::PositiveSideGhostTrackFitter::fit(), and TemplatedSecondaryVertexProducer< IPTI, VTX >::produce().

47  {
48  return unsharedData().linearize(pred, initial, lambda);
49  }
double lambda() const
T & unsharedData()
Definition: ProxyBase11.h:56

◆ linearize() [2/2]

bool reco::GhostTrackState::linearize ( const GhostTrackPrediction pred,
double  lambda 
)
inline

Definition at line 50 of file GhostTrackState.h.

References lambda(), and ProxyBase11< T >::unsharedData().

50 { return unsharedData().linearize(pred, lambda); }
double lambda() const
T & unsharedData()
Definition: ProxyBase11.h:56

◆ reset()

void reco::GhostTrackState::reset ( void  )
inline

Definition at line 46 of file GhostTrackState.h.

References ProxyBase11< T >::unsharedData().

46 { unsharedData().reset(); }
T & unsharedData()
Definition: ProxyBase11.h:56

◆ setWeight()

void reco::GhostTrackState::setWeight ( double  weight)
inline

Definition at line 64 of file GhostTrackState.h.

References ProxyBase11< T >::unsharedData().

Referenced by TemplatedSecondaryVertexProducer< IPTI, VTX >::produce().

64 { unsharedData().setWeight(weight); }
Definition: weight.py:1
T & unsharedData()
Definition: ProxyBase11.h:56

◆ track()

const TransientTrack & GhostTrackState::track ( ) const

Definition at line 56 of file GhostTrackState.cc.

References ProxyBase11< T >::data(), getTrack(), and reco::TrackGhostTrackState::track().

56 { return getTrack(&data())->track(); }
const TransientTrack & track() const
static const TrackGhostTrackState * getTrack(const BasicGhostTrackState *basic)
const T & data() const
Definition: ProxyBase11.h:51

◆ tsos()

const TrajectoryStateOnSurface & GhostTrackState::tsos ( ) const

Definition at line 58 of file GhostTrackState.cc.

References ProxyBase11< T >::data(), getTrack(), and reco::TrackGhostTrackState::tsos().

58 { return getTrack(&data())->tsos(); }
const TrajectoryStateOnSurface & tsos() const
static const TrackGhostTrackState * getTrack(const BasicGhostTrackState *basic)
const T & data() const
Definition: ProxyBase11.h:51

◆ vertexStateOnGhostTrack()

Vertex reco::GhostTrackState::vertexStateOnGhostTrack ( const GhostTrackPrediction pred,
bool  withMeasurementError = true 
) const
inline

Definition at line 56 of file GhostTrackState.h.

References ProxyBase11< T >::data().

Referenced by lambdaError().

56  {
57  return data().vertexStateOnGhostTrack(pred, withMeasurementError);
58  }
const T & data() const
Definition: ProxyBase11.h:51

◆ vertexStateOnMeasurement()

Vertex reco::GhostTrackState::vertexStateOnMeasurement ( const GhostTrackPrediction pred,
bool  withGhostTrackError = true 
) const
inline

Definition at line 59 of file GhostTrackState.h.

References ProxyBase11< T >::data().

59  {
60  return data().vertexStateOnMeasurement(pred, withGhostTrackError);
61  }
const T & data() const
Definition: ProxyBase11.h:51

◆ weight()

double reco::GhostTrackState::weight ( ) const
inline

Definition at line 63 of file GhostTrackState.h.

References ProxyBase11< T >::data().

63 { return data().weight(); }
const T & data() const
Definition: ProxyBase11.h:51