#include <ClosestApproachInRPhi.h>
Public Member Functions | |
virtual bool | calculate (const TrajectoryStateOnSurface &sta, const TrajectoryStateOnSurface &stb) |
virtual bool | calculate (const FreeTrajectoryState &sta, const FreeTrajectoryState &stb) |
virtual ClosestApproachInRPhi * | clone () const |
ClosestApproachInRPhi () | |
virtual GlobalPoint | crossingPoint () const |
virtual float | distance () const |
virtual std::pair< GlobalPoint, GlobalPoint > | points () const |
virtual bool | status () const |
std::pair < GlobalTrajectoryParameters, GlobalTrajectoryParameters > | trajectoryParameters () const |
~ClosestApproachInRPhi () | |
Public Member Functions inherited from ClosestApproachOnHelices | |
ClosestApproachOnHelices () | |
virtual | ~ClosestApproachOnHelices () |
Private Member Functions | |
bool | compute (const TrackCharge &chargeA, const GlobalVector &momentumA, const GlobalPoint &positionA, const TrackCharge &chargeB, const GlobalVector &momentumB, const GlobalPoint &positionB) |
Static Private Member Functions | |
static void | circleParameters (const TrackCharge &charge, const GlobalVector &momemtum, const GlobalPoint &position, double &xc, double &yc, double &r, double bz) |
static GlobalTrajectoryParameters | newTrajectory (const GlobalPoint &newpt, const GlobalTrajectoryParameters &oldpar, double bz) |
static int | transverseCoord (double cxa, double cya, double ra, double cxb, double cyb, double rb, double &xg1, double &yg1, double &xg2, double &yg2) |
static double | zCoord (const GlobalVector &mom, const GlobalPoint &pos, double r, double xc, double yc, double xg, double yg) |
Private Attributes | |
double | bz |
GlobalTrajectoryParameters | paramA |
GlobalTrajectoryParameters | paramB |
GlobalPoint | posA |
GlobalPoint | posB |
bool | status_ |
Given two trajectory states, computes the two points of closest approach in the transverse plane for the helices extrapolated from these states. 1) computes the intersections of the circles in transverse plane. Two cases: - circles have one or two intersection points;
Definition at line 18 of file ClosestApproachInRPhi.h.
|
inline |
|
inline |
Definition at line 23 of file ClosestApproachInRPhi.h.
|
virtual |
Implements ClosestApproachOnHelices.
Definition at line 8 of file ClosestApproachInRPhi.cc.
References TrajectoryStateOnSurface::charge(), bookConverter::compute(), TrajectoryStateOnSurface::freeState(), TrajectoryStateOnSurface::globalMomentum(), TrajectoryStateOnSurface::globalParameters(), TrajectoryStateOnSurface::globalPosition(), MagneticField::inTesla(), GlobalTrajectoryParameters::magneticField(), FreeTrajectoryState::parameters(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by HLTMuon::analyze(), NuclearVertexBuilder::closestApproach(), V0Fitter::fitAll(), HLTDiMuonGlbTrkFilter::hltFilter(), HLTMuonTrackMassFilter::hltFilter(), HLTMuonDimuonL3Filter::hltFilter(), HLTMuonTrimuonL3Filter::hltFilter(), and ConversionProducer::preselectTrackPair().
|
virtual |
Implements ClosestApproachOnHelices.
Definition at line 26 of file ClosestApproachInRPhi.cc.
References FreeTrajectoryState::charge(), bookConverter::compute(), MagneticField::inTesla(), GlobalTrajectoryParameters::magneticField(), FreeTrajectoryState::momentum(), FreeTrajectoryState::parameters(), FreeTrajectoryState::position(), and PV3DBase< T, PVType, FrameType >::z().
|
staticprivate |
temporary code, to be replaced by call to curvature() when bug is fixed.
end of temporary code
Definition at line 174 of file ClosestApproachInRPhi.cc.
References funct::abs(), PV3DBase< T, PVType, FrameType >::transverse(), PV3DBase< T, PVType, FrameType >::x(), and PV3DBase< T, PVType, FrameType >::y().
|
inlinevirtual |
Clone method
Implements ClosestApproachOnHelices.
Definition at line 52 of file ClosestApproachInRPhi.h.
References ClosestApproachInRPhi().
|
private |
Definition at line 69 of file ClosestApproachInRPhi.cc.
References funct::abs(), and archive::flag.
|
virtual |
arithmetic mean of the two points of closest approach
Implements ClosestApproachOnHelices.
Definition at line 52 of file ClosestApproachInRPhi.cc.
References Exception.
Referenced by NuclearVertexBuilder::FillVertexWithCrossingPoint(), V0Fitter::fitAll(), NuclearVertexBuilder::isGoodSecondaryTrack(), and ConversionProducer::preselectTrackPair().
|
virtual |
distance between the two points of closest approach in 3D
Implements ClosestApproachOnHelices.
Definition at line 61 of file ClosestApproachInRPhi.cc.
References Exception.
Referenced by HLTMuon::analyze(), V0Fitter::fitAll(), HLTDiMuonGlbTrkFilter::hltFilter(), HLTMuonTrackMassFilter::hltFilter(), HLTMuonDimuonL3Filter::hltFilter(), HLTMuonTrimuonL3Filter::hltFilter(), NuclearVertexBuilder::isGoodSecondaryTrack(), and print().
|
staticprivate |
Definition at line 136 of file ClosestApproachInRPhi.cc.
References GlobalTrajectoryParameters::charge(), GlobalTrajectoryParameters::magneticField(), GlobalTrajectoryParameters::momentum(), GlobalTrajectoryParameters::position(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
|
virtual |
Returns the two PCA on the trajectories.
Implements ClosestApproachOnHelices.
Definition at line 43 of file ClosestApproachInRPhi.cc.
References Exception.
|
inlinevirtual |
Implements ClosestApproachOnHelices.
Definition at line 31 of file ClosestApproachInRPhi.h.
References status_.
Referenced by HLTMuon::analyze(), V0Fitter::fitAll(), HLTDiMuonGlbTrkFilter::hltFilter(), HLTMuonTrackMassFilter::hltFilter(), HLTMuonDimuonL3Filter::hltFilter(), HLTMuonTrimuonL3Filter::hltFilter(), and ConversionProducer::preselectTrackPair().
pair< GlobalTrajectoryParameters, GlobalTrajectoryParameters > ClosestApproachInRPhi::trajectoryParameters | ( | ) | const |
Returns not only the points, but the full GlobalTrajectoryParemeters at the points of closest approach
Definition at line 125 of file ClosestApproachInRPhi.cc.
References Exception, and run_regression::ret.
|
staticprivate |
Definition at line 205 of file ClosestApproachInRPhi.cc.
References funct::abs(), archive::flag, jetcorrextractor::sign(), mathSSE::sqrt(), and findQualityFiles::v.
|
staticprivate |
Definition at line 272 of file ClosestApproachInRPhi.cc.
References funct::abs(), phi, alignCSCRings::r, mathSSE::sqrt(), PV3DBase< T, PVType, FrameType >::transverse(), x, PV3DBase< T, PVType, FrameType >::x(), detailsBasic3DVector::y, PV3DBase< T, PVType, FrameType >::y(), detailsBasic3DVector::z, and PV3DBase< T, PVType, FrameType >::z().
|
private |
Definition at line 100 of file ClosestApproachInRPhi.h.
|
private |
Definition at line 99 of file ClosestApproachInRPhi.h.
|
private |
Definition at line 99 of file ClosestApproachInRPhi.h.
|
private |
Definition at line 98 of file ClosestApproachInRPhi.h.
|
private |
Definition at line 98 of file ClosestApproachInRPhi.h.
|
private |
Definition at line 101 of file ClosestApproachInRPhi.h.
Referenced by ClosestApproachInRPhi(), and status().