CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Functions
lms_3d.cc File Reference
#include "CommonTools/Statistics/interface/lms_1d.h"
#include "RecoVertex/VertexTools/interface/lms_3d.h"
#include "RecoVertex/VertexPrimitives/interface/VertexException.h"
#include <vector>

Go to the source code of this file.

Functions

GlobalPoint lms_3d (std::vector< GlobalPoint > values)
 

Function Documentation

GlobalPoint lms_3d ( std::vector< GlobalPoint values)

least median of squares in three dimensions, doing every dimension separately

Definition at line 8 of file lms_3d.cc.

References mps_fire::i, and lms_1d().

Referenced by LmsModeFinder3d::operator()(), and Lms3d::operator()().

8  {
9  const int sze = values.size();
10  if (sze == 0) {
11  throw VertexException("lms_3d: no values given.");
12  };
13  std::vector<float> x_vals, y_vals, z_vals;
14  x_vals.reserve(sze - 1);
15  y_vals.reserve(sze - 1);
16  z_vals.reserve(sze - 1);
17  for (std::vector<GlobalPoint>::iterator i = values.begin(); i != values.end(); i++) {
18  x_vals.push_back(i->x());
19  y_vals.push_back(i->y());
20  z_vals.push_back(i->z());
21  };
22  return GlobalPoint(lms_1d(x_vals), lms_1d(y_vals), lms_1d(z_vals));
23 }
Common base class.
Global3DPoint GlobalPoint
Definition: GlobalPoint.h:10
T lms_1d(std::vector< T > values)
Definition: lms_1d.h:15