CMS 3D CMS Logo

MuonResidualsAngleFitter.h
Go to the documentation of this file.
1 #ifndef Alignment_MuonAlignmentAlgorithms_MuonResidualsAngleFitter_H
2 #define Alignment_MuonAlignmentAlgorithms_MuonResidualsAngleFitter_H
3 
11 
13 public:
14  enum {
15  kAngle = 0,
21  };
22 
23  enum {
24  kResidual = 0,
28  };
29 
30  MuonResidualsAngleFitter(int residualsModel, int minHitsPerRegion, int useResiduals, bool weightAlignment=true): MuonResidualsFitter(residualsModel, minHitsPerRegion, useResiduals, weightAlignment) {}
31 
32  int type() const override { return MuonResidualsFitter::kAngleFitter; }
33 
34  int npar() override {
36  else if (residualsModel() == kPowerLawTails) return kNPar;
37  else if (residualsModel() == kROOTVoigt) return kNPar;
38  else assert(false);
39  }
40  int ndata() override { return kNData; }
41 
42  bool fit(Alignable *ali) override;
43  double sumofweights() override { return numResiduals(); }
44  double plot(std::string name, TFileDirectory *dir, Alignable *ali) override;
45 
46 protected:
47  void inform(TMinuit *tMinuit) override;
48 };
49 
50 #endif // Alignment_MuonAlignmentAlgorithms_MuonResidualsAngleFitter_H
MuonResidualsAngleFitter(int residualsModel, int minHitsPerRegion, int useResiduals, bool weightAlignment=true)
double plot(std::string name, TFileDirectory *dir, Alignable *ali) override
tuple weightAlignment
Definition: align_cfg.py:30
bool fit(Alignable *ali) override
void inform(TMinuit *tMinuit) override
dbl *** dir
Definition: mlp_gen.cc:35