CMS 3D CMS Logo

GhostTrack.cc
Go to the documentation of this file.
1 #include <vector>
2 
5 
7 
11 
12 using namespace reco;
13 
14 void GhostTrack::initStates(const std::vector<TransientTrack> &tracks,
15  const std::vector<float> &weights,
16  double offset) {
17  std::vector<float>::const_iterator weight = weights.begin();
18  for (std::vector<TransientTrack>::const_iterator iter = tracks.begin(); iter != tracks.end(); ++iter) {
19  GhostTrackState state(*iter);
20  state.linearize(prediction_, true, offset);
21  if (weight != weights.end())
22  state.setWeight(*weight++);
23 
24  states_.push_back(state);
25  }
26 }
27 
30  const std::vector<TransientTrack> &tracks,
31  double ndof,
32  double chi2,
33  const std::vector<float> &weights,
34  const GlobalPoint &origin,
35  bool withOrigin)
36  : prediction_(prediction), prior_(prior), ndof_(ndof), chi2_(chi2) {
37  initStates(tracks, weights, withOrigin ? prediction_.lambda(origin) : 0.);
38 }
39 
40 GhostTrack::GhostTrack(const Track &ghostTrack,
41  const std::vector<TransientTrack> &tracks,
42  const std::vector<float> &weights,
44  const GlobalPoint &origin,
45  bool withOrigin)
46  : prediction_(ghostTrack), prior_(prior), ndof_(ghostTrack.ndof()), chi2_(ghostTrack.chi2()) {
47  initStates(tracks, weights, withOrigin ? prediction_.lambda(origin) : 0.);
48 }
const GhostTrackPrediction & prior() const
Definition: GhostTrack.h:42
double lambda(const GlobalPoint &point) const
GhostTrackPrediction prior_
Definition: GhostTrack.h:54
Definition: weight.py:1
void setWeight(double weight)
void initStates(const std::vector< TransientTrack > &tracks, const std::vector< float > &weights, double offset)
Definition: GhostTrack.cc:14
double chi2() const
Definition: GhostTrack.h:46
std::vector< GhostTrackState > states_
Definition: GhostTrack.h:55
GhostTrackPrediction prediction_
Definition: GhostTrack.h:53
bool linearize(const GhostTrackPrediction &pred, bool initial=false, double lambda=0.)
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalPoint
point in global coordinate system
Definition: Point3D.h:18
GhostTrack(const GhostTrackPrediction &prior, const GhostTrackPrediction &prediction, const std::vector< GhostTrackState > &states, double ndof, double chi2)
Definition: GhostTrack.h:18
fixed size matrix
const GhostTrackPrediction & prediction() const
Definition: GhostTrack.h:41
double ndof() const
Definition: GhostTrack.h:45