![]() |
|
|||
File indexing completed on 2024-10-10 23:05:30
0001 #ifndef FcnBeamSpotFitPV_h_ 0002 #define FcnBeamSpotFitPV_h_ 0003 /** \class FcnBeamSpotFitPV 0004 * LogLH function for 3D beam spot fit from primary vertex data. Assumes 0005 * a Gaussian resolution function for the vertices provided in the 0006 * form of a vector of BeamSpotFitPVData and a Gaussian beam profile 0007 * in 3D: based on a covariance without xz and yz correlations + 0008 * linearized rotations in the xz and yz planes. 0009 * Parameters: x, y, z, ex, corrxy, ey, dxdz, dydz, ez, scale 0010 * x, y, z ...... beamspot position 0011 * ex, ey, ez ... beamspot width 0012 * corrxy ....... xy correlation in the system of the beam line 0013 * dxdz, dydz ... rotations in xz and yz 0014 * scale ........ scaling factor for vertex errors 0015 * \author WA, 9/3/2010 0016 */ 0017 #include "RecoVertex/BeamSpotProducer/interface/BeamSpotFitPVData.h" 0018 #include "Minuit2/FCNBase.h" 0019 0020 #include <vector> 0021 0022 class FcnBeamSpotFitPV : public ROOT::Minuit2::FCNBase { 0023 public: 0024 // constructor from vertex data 0025 FcnBeamSpotFitPV(const std::vector<BeamSpotFitPVData>& data); 0026 ~FcnBeamSpotFitPV() override {} 0027 // additional vertex selection using limits in x, y, z 0028 void setLimits(float xmin, float xmax, float ymin, float ymax, float zmin, float zmax); 0029 // deltaFcn for definition of the uncertainty 0030 double Up() const override { return errorDef_; } 0031 // -2lnL value based on vector of parameters 0032 double operator()(const std::vector<double>&) const override; 0033 // vertex count used for the fit (after selection) 0034 unsigned int nrOfVerticesUsed() const; 0035 0036 private: 0037 const std::vector<BeamSpotFitPVData>& data_; //< vertex data 0038 double errorDef_; //< error definition for Minuit 0039 0040 float lowerLimits_[3]; //< lower limits for x,y,z 0041 float upperLimits_[3]; //< upper limits for x,y,z 0042 }; 0043 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.2.1 LXR engine. The LXR team |
![]() ![]() |