CMS 3D CMS Logo

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

#include <PerigeeKinematicState.h>

Public Member Functions

bool hasError () const
 
bool isValid () const
 
const ExtendedPerigeeTrajectoryErrorperigeeError () const
 
 PerigeeKinematicState ()
 
const ExtendedPerigeeTrajectoryParametersperigeeParameters () const
 
const GlobalPoint referencePoint () const
 
const KinematicStatetheState () const
 
virtual ~PerigeeKinematicState ()
 

Private Member Functions

AlgebraicMatrix jacobianCurvilinear2Perigee (const FreeTrajectoryState &fts) const
 
 PerigeeKinematicState (const KinematicState &state, const GlobalPoint &pt)
 

Private Attributes

ExtendedPerigeeTrajectoryError cov
 
bool errorIsAvailable
 
KinematicState inState
 
ExtendedPerigeeTrajectoryParameters par
 
GlobalPoint point
 
bool vl
 

Friends

class TransientTrackKinematicStateBuilder
 

Detailed Description

Class caching the "extended" perigee parametrization for vertex fitting inside the KinematicFit library. Extended parameters are: (epsilon, rho, phi, theta_p, z_p, m) (see TrajectoryStateClosestToPoint class for reference)

Kirill Prokofiev, august 2003

Definition at line 21 of file PerigeeKinematicState.h.

Constructor & Destructor Documentation

◆ PerigeeKinematicState() [1/2]

PerigeeKinematicState::PerigeeKinematicState ( )
inline

Definition at line 23 of file PerigeeKinematicState.h.

23  {
24  vl = false;
25  errorIsAvailable = false;
26  }

References errorIsAvailable, and vl.

◆ ~PerigeeKinematicState()

virtual PerigeeKinematicState::~PerigeeKinematicState ( )
inlinevirtual

Definition at line 28 of file PerigeeKinematicState.h.

28 {}

◆ PerigeeKinematicState() [2/2]

PerigeeKinematicState::PerigeeKinematicState ( const KinematicState state,
const GlobalPoint pt 
)
private

Definition at line 6 of file PerigeeKinematicState.cc.

7  : point(pt), inState(state), errorIsAvailable(true), vl(true) {
8  if (!(state.isValid()))
9  throw VertexException("PerigeeKinematicState::kinematic state passed is not valid!");
10 
11  //working with parameters:
13  par = conversions.extendedPerigeeFromKinematicParameters(state, pt);
14 
15  //creating the error
16  AlgebraicSymMatrix77 const& err = state.kinematicParametersError().matrix();
17 
18  //making jacobian for curvilinear frame
19  JacobianCartesianToCurvilinear jj(state.freeTrajectoryState().parameters());
20  AlgebraicMatrix67 ki2cu;
21  ki2cu.Place_at(jj.jacobian(), 0, 0);
22  ki2cu(5, 6) = 1.;
23  AlgebraicMatrix66 cu2pe;
24  cu2pe.Place_at(PerigeeConversions::jacobianCurvilinear2Perigee(state.freeTrajectoryState()), 0, 0);
25  cu2pe(5, 5) = 1.;
26  AlgebraicMatrix67 jacobian = cu2pe * ki2cu;
27 
28  cov = ExtendedPerigeeTrajectoryError(ROOT::Math::Similarity(jacobian, err));
29 }

References pwdgSkimBPark_cfi::conversions, cov, submitPVResolutionJobs::err, PerigeeConversions::jacobianCurvilinear2Perigee(), findQualityFiles::jj, par, and DiDispStaMuonMonitor_cfi::pt.

Member Function Documentation

◆ hasError()

bool PerigeeKinematicState::hasError ( void  ) const
inline

Access methods

Definition at line 32 of file PerigeeKinematicState.h.

32  {
33  if (!(isValid()))
34  throw VertexException("PerigeeKinematicState::error is requested for the invalid state");
35  return errorIsAvailable;
36  }

References errorIsAvailable, and isValid().

Referenced by perigeeError().

◆ isValid()

bool PerigeeKinematicState::isValid ( void  ) const
inline

◆ jacobianCurvilinear2Perigee()

AlgebraicMatrix PerigeeKinematicState::jacobianCurvilinear2Perigee ( const FreeTrajectoryState fts) const
private

◆ perigeeError()

const ExtendedPerigeeTrajectoryError& PerigeeKinematicState::perigeeError ( ) const
inline

Returns the error matrix of extended perigee parametrization

Definition at line 59 of file PerigeeKinematicState.h.

59  {
60  if (!(isValid()))
61  throw VertexException("PerigeeKinematicState::requesting perigee error for invalid state");
62  if (!(hasError()))
63  throw VertexException("PerigeeKinematicState::requesting perigee error when none available");
64  return cov;
65  }

References cov, hasError(), and isValid().

Referenced by ParticleKinematicLinearizedTrackState::predictedStateError(), ParticleKinematicLinearizedTrackState::predictedStateMomentumError(), and ParticleKinematicLinearizedTrackState::predictedStateWeight().

◆ perigeeParameters()

const ExtendedPerigeeTrajectoryParameters& PerigeeKinematicState::perigeeParameters ( ) const
inline

Returns the extended perigee parameters

Definition at line 70 of file PerigeeKinematicState.h.

70  {
71  if (!(isValid()))
72  throw VertexException("PerigeeKinematicState::requesting perigee parameters for invalid state");
73  return par;
74  }

References isValid(), and par.

Referenced by ParticleKinematicLinearizedTrackState::predictedStateMomentumParameters(), and ParticleKinematicLinearizedTrackState::predictedStateParameters().

◆ referencePoint()

const GlobalPoint PerigeeKinematicState::referencePoint ( ) const
inline

Returns the reference point

Definition at line 49 of file PerigeeKinematicState.h.

49  {
50  if (!isValid())
51  throw VertexException("PerigeeKinematicState::point is requested for the invalid state");
52  return point;
53  }

References isValid(), and point.

◆ theState()

const KinematicState& PerigeeKinematicState::theState ( ) const
inline

Definition at line 40 of file PerigeeKinematicState.h.

40  {
41  if (!isValid())
42  throw VertexException("PerigeeKinematicState::initial state is requested for the invalid state");
43  return inState;
44  }

References inState, and isValid().

Referenced by ParticleKinematicLinearizedTrackState::computeChargedJacobians(), and ParticleKinematicLinearizedTrackState::computeNeutralJacobians().

Friends And Related Function Documentation

◆ TransientTrackKinematicStateBuilder

Definition at line 77 of file PerigeeKinematicState.h.

Member Data Documentation

◆ cov

ExtendedPerigeeTrajectoryError PerigeeKinematicState::cov
private

Definition at line 91 of file PerigeeKinematicState.h.

Referenced by perigeeError(), and PerigeeKinematicState().

◆ errorIsAvailable

bool PerigeeKinematicState::errorIsAvailable
private

Definition at line 93 of file PerigeeKinematicState.h.

Referenced by hasError(), and PerigeeKinematicState().

◆ inState

KinematicState PerigeeKinematicState::inState
private

Definition at line 92 of file PerigeeKinematicState.h.

Referenced by theState().

◆ par

ExtendedPerigeeTrajectoryParameters PerigeeKinematicState::par
private

Definition at line 90 of file PerigeeKinematicState.h.

Referenced by PerigeeKinematicState(), and perigeeParameters().

◆ point

GlobalPoint PerigeeKinematicState::point
private

Definition at line 89 of file PerigeeKinematicState.h.

Referenced by referencePoint().

◆ vl

bool PerigeeKinematicState::vl
private

Definition at line 94 of file PerigeeKinematicState.h.

Referenced by isValid(), and PerigeeKinematicState().

VertexException
Common base class.
Definition: VertexException.h:12
DiDispStaMuonMonitor_cfi.pt
pt
Definition: DiDispStaMuonMonitor_cfi.py:39
KinematicPerigeeConversions
Definition: KinematicPerigeeConversions.h:17
PerigeeKinematicState::cov
ExtendedPerigeeTrajectoryError cov
Definition: PerigeeKinematicState.h:91
PerigeeConversions::jacobianCurvilinear2Perigee
AlgebraicMatrix55 jacobianCurvilinear2Perigee(const FreeTrajectoryState &fts)
Definition: PerigeeConversions.cc:144
AlgebraicSymMatrix77
ROOT::Math::SMatrix< double, 7, 7, ROOT::Math::MatRepSym< double, 7 > > AlgebraicSymMatrix77
Definition: Matrices.h:9
PerigeeKinematicState::vl
bool vl
Definition: PerigeeKinematicState.h:94
PerigeeKinematicState::isValid
bool isValid() const
Definition: PerigeeKinematicState.h:38
AlgebraicMatrix67
ROOT::Math::SMatrix< double, 6, 7, ROOT::Math::MatRepStd< double, 6, 7 > > AlgebraicMatrix67
Definition: Matrices.h:11
ExtendedPerigeeTrajectoryError
Definition: ExtendedPerigeeTrajectoryError.h:7
PerigeeKinematicState::hasError
bool hasError() const
Definition: PerigeeKinematicState.h:32
PerigeeKinematicState::inState
KinematicState inState
Definition: PerigeeKinematicState.h:92
PerigeeKinematicState::errorIsAvailable
bool errorIsAvailable
Definition: PerigeeKinematicState.h:93
submitPVResolutionJobs.err
err
Definition: submitPVResolutionJobs.py:85
PerigeeKinematicState::point
GlobalPoint point
Definition: PerigeeKinematicState.h:89
AlgebraicMatrix66
ROOT::Math::SMatrix< double, 6, 6, ROOT::Math::MatRepStd< double, 6, 6 > > AlgebraicMatrix66
Definition: AlgebraicROOTObjects.h:62
RunInfoPI::state
state
Definition: RunInfoPayloadInspectoHelper.h:16
findQualityFiles.jj
string jj
Definition: findQualityFiles.py:188
pwdgSkimBPark_cfi.conversions
conversions
Definition: pwdgSkimBPark_cfi.py:10
PerigeeKinematicState::par
ExtendedPerigeeTrajectoryParameters par
Definition: PerigeeKinematicState.h:90
JacobianCartesianToCurvilinear
Definition: JacobianCartesianToCurvilinear.h:14