CMS 3D CMS Logo

FcnBeamSpotFitPV.h
Go to the documentation of this file.
1 #ifndef FcnBeamSpotFitPV_h_
2 #define FcnBeamSpotFitPV_h_
3 
18 #include "Minuit2/FCNBase.h"
19 
20 #include <vector>
21 
22 class FcnBeamSpotFitPV : public ROOT::Minuit2::FCNBase {
23 public:
24  // constructor from vertex data
25  FcnBeamSpotFitPV(const std::vector<BeamSpotFitPVData>& data);
26  ~FcnBeamSpotFitPV() override {}
27  // additional vertex selection using limits in x, y, z
28  void setLimits(float xmin, float xmax, float ymin, float ymax, float zmin, float zmax);
29  // deltaFcn for definition of the uncertainty
30  double Up() const override { return errorDef_; }
31  // -2lnL value based on vector of parameters
32  double operator()(const std::vector<double>&) const override;
33  // vertex count used for the fit (after selection)
34  unsigned int nrOfVerticesUsed() const;
35 
36 private:
37  const std::vector<BeamSpotFitPVData>& data_; //< vertex data
38  double errorDef_; //< error definition for Minuit
39 
40  float lowerLimits_[3]; //< lower limits for x,y,z
41  float upperLimits_[3]; //< upper limits for x,y,z
42 };
43 #endif
FcnBeamSpotFitPV
Definition: FcnBeamSpotFitPV.h:22
BeamSpotFitPVData.h
FcnBeamSpotFitPV::FcnBeamSpotFitPV
FcnBeamSpotFitPV(const std::vector< BeamSpotFitPVData > &data)
Definition: FcnBeamSpotFitPV.cc:12
FcnBeamSpotFitPV::~FcnBeamSpotFitPV
~FcnBeamSpotFitPV() override
Definition: FcnBeamSpotFitPV.h:26
SiStripMonitorCluster_cfi.zmin
zmin
Definition: SiStripMonitorCluster_cfi.py:200
L1TOccupancyClient_cfi.ymax
ymax
Definition: L1TOccupancyClient_cfi.py:43
SiStripMonitorCluster_cfi.zmax
zmax
Definition: SiStripMonitorCluster_cfi.py:201
FcnBeamSpotFitPV::nrOfVerticesUsed
unsigned int nrOfVerticesUsed() const
Definition: FcnBeamSpotFitPV.cc:29
FcnBeamSpotFitPV::setLimits
void setLimits(float xmin, float xmax, float ymin, float ymax, float zmin, float zmax)
Definition: FcnBeamSpotFitPV.cc:20
FcnBeamSpotFitPV::errorDef_
double errorDef_
Definition: FcnBeamSpotFitPV.h:38
FcnBeamSpotFitPV::operator()
double operator()(const std::vector< double > &) const override
Definition: FcnBeamSpotFitPV.cc:54
FcnBeamSpotFitPV::upperLimits_
float upperLimits_[3]
Definition: FcnBeamSpotFitPV.h:41
FcnBeamSpotFitPV::data_
const std::vector< BeamSpotFitPVData > & data_
Definition: FcnBeamSpotFitPV.h:37
FcnBeamSpotFitPV::lowerLimits_
float lowerLimits_[3]
Definition: FcnBeamSpotFitPV.h:40
FcnBeamSpotFitPV::Up
double Up() const override
Definition: FcnBeamSpotFitPV.h:30
L1TOccupancyClient_cfi.ymin
ymin
Definition: L1TOccupancyClient_cfi.py:43
TrackerOfflineValidation_Dqm_cff.xmax
xmax
Definition: TrackerOfflineValidation_Dqm_cff.py:11
data
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:79
TrackerOfflineValidation_Dqm_cff.xmin
xmin
Definition: TrackerOfflineValidation_Dqm_cff.py:10