CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DualBzeroReferenceTrajectory.cc
Go to the documentation of this file.
1 
2 
4 
6 
9 
11 
13  const ConstRecHitContainer& forwardRecHits,
14  const ConstRecHitContainer& backwardRecHits,
15  const MagneticField* magField,
16  const reco::BeamSpot& beamSpot,
18  : DualReferenceTrajectory(tsos.localParameters().mixedFormatVector().kSize - 1,
19  numberOfUsedRecHits(forwardRecHits) + numberOfUsedRecHits(backwardRecHits) - 1,
20  config),
21  theMomentumEstimate(config.momentumEstimate) {
22  theValidityFlag = construct(tsos, forwardRecHits, backwardRecHits, magField, beamSpot);
23 }
24 
27  double mass,
28  MaterialEffects materialEffects,
29  const PropagationDirection propDir,
30  const MagneticField* magField,
31  bool useBeamSpot,
32  const reco::BeamSpot& beamSpot) const {
33  if (materialEffects >= breakPoints)
34  throw cms::Exception("BadConfig") << "[DualBzeroReferenceTrajectory::construct] Wrong MaterialEffects: "
35  << materialEffects;
36 
37  ReferenceTrajectoryBase::Config config(materialEffects, propDir, mass, theMomentumEstimate);
38  config.useBeamSpot = useBeamSpot;
39  config.hitsAreReverse = false;
40  return new BzeroReferenceTrajectory(referenceTsos, recHits, magField, beamSpot, config);
41 }
42 
44  AlgebraicVector param = asHepVector<5>(referenceTsos.localParameters().mixedFormatVector());
45  return param.sub(2, 5);
46 }
const LocalTrajectoryParameters & localParameters() const
const auto & magField
PropagationDirection
virtual ReferenceTrajectory * construct(const TrajectoryStateOnSurface &referenceTsos, const ConstRecHitContainer &recHits, double mass, MaterialEffects materialEffects, const PropagationDirection propDir, const MagneticField *magField, bool useBeamSpot, const reco::BeamSpot &beamSpot) const
CLHEP::HepVector AlgebraicVector
DualBzeroReferenceTrajectory(const TrajectoryStateOnSurface &tsos, const ConstRecHitContainer &forwardRecHits, const ConstRecHitContainer &backwardRecHits, const MagneticField *magField, const reco::BeamSpot &beamSpot, const ReferenceTrajectoryBase::Config &config)
AlgebraicVector extractParameters(const TrajectoryStateOnSurface &referenceTsos) const override
AlgebraicVector5 mixedFormatVector() const
tuple config
parse the configuration file
TransientTrackingRecHit::ConstRecHitContainer ConstRecHitContainer