#include "CommonTools/Statistics/interface/lms_1d.icc"
#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) |
least median of squares in three dimensions, doing every dimension separately |
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 i.
Referenced by LmsModeFinder3d::operator()(), and Lms3d::operator()().
00009 { 00010 const int sze = values.size(); 00011 if ( sze == 0 ) { 00012 throw VertexException("lms_3d: no values given."); 00013 }; 00014 std::vector <float> x_vals, y_vals, z_vals; 00015 x_vals.reserve(sze-1); 00016 y_vals.reserve(sze-1); 00017 z_vals.reserve(sze-1); 00018 for (std:: vector<GlobalPoint>::iterator i=values.begin(); 00019 i!=values.end() ; i++ ) { 00020 x_vals.push_back( i->x() ); 00021 y_vals.push_back( i->y() ); 00022 z_vals.push_back( i->z() ); 00023 }; 00024 return GlobalPoint ( lms_1d(x_vals), lms_1d(y_vals), lms_1d(z_vals) ); 00025 }