CMS 3D CMS Logo

MuonResiduals6DOFrphiFitter.h
Go to the documentation of this file.
1 #ifndef Alignment_MuonAlignmentAlgorithms_MuonResiduals6DOFrphiFitter_H
2 #define Alignment_MuonAlignmentAlgorithms_MuonResiduals6DOFrphiFitter_H
3 
10 #ifdef STANDALONE_FITTER
11 #include "MuonResidualsFitter.h"
12 #else
15 #endif
16 
17 class TTree;
18 
20 {
21 public:
22  enum {
23  kAlignX = 0,
35  };
36 
37  enum {
38  kResid = 0,
45  kPz,
46  kPt,
49  };
50 
52  MuonResidualsFitter(residualsModel, minHits, useResiduals, weightAlignment) {}
53 
54 #ifndef STANDALONE_FITTER
56  MuonResidualsFitter(residualsModel, minHits, useResiduals, weightAlignment) {}
57 #endif
58 
60 
61  int type() const { return MuonResidualsFitter::k6DOFrphi; }
62 
63  int npar()
64  {
66  else if (residualsModel() == kPowerLawTails) return kNPar;
67  else if (residualsModel() == kROOTVoigt) return kNPar;
68  else assert(false);
69  }
70  int ndata() { return kNData; }
71 
72  double sumofweights();
73  bool fit(Alignable *ali);
75 
76  void correctBField();
77 
78  TTree * readNtuple(std::string fname, unsigned int endcap, unsigned int station, unsigned int ring, unsigned int chamber, unsigned int preselected = 1);
79 
80 protected:
81  void inform(TMinuit *tMinuit);
82 
83 private:
84  //const CSCGeometry *m_cscGeometry;
85 };
86 
87 #endif // Alignment_MuonAlignmentAlgorithms_MuonResiduals6DOFrphiFitter_H
MuonResiduals6DOFrphiFitter(int residualsModel, int minHits, int useResiduals, bool weightAlignment=true)
TTree * readNtuple(std::string fname, unsigned int endcap, unsigned int station, unsigned int ring, unsigned int chamber, unsigned int preselected=1)
tuple weightAlignment
Definition: align_cfg.py:30
MuonResiduals6DOFrphiFitter(int residualsModel, int minHits, int useResiduals, const CSCGeometry *cscGeometry, bool weightAlignment=true)
string fname
main script
double plot(std::string name, TFileDirectory *dir, Alignable *ali)
dbl *** dir
Definition: mlp_gen.cc:35