CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MuonResiduals6DOFFitter.h
Go to the documentation of this file.
1 #ifndef Alignment_MuonAlignmentAlgorithms_MuonResiduals6DOFFitter_H
2 #define Alignment_MuonAlignmentAlgorithms_MuonResiduals6DOFFitter_H
3 
10 #ifdef STANDALONE_FITTER
11 #include "MuonResidualsFitter.h"
12 #else
14 #endif
15 
16 class TTree;
17 
19 {
20 public:
21  enum {
22  kAlignX = 0,
39  };
40 
41  enum {
42  kResidX = 0,
51  kPz,
52  kPt,
55  };
56 
57  MuonResiduals6DOFFitter(int residualsModel, int minHits, int useResiduals, bool weightAlignment=true): MuonResidualsFitter(residualsModel, minHits, useResiduals, weightAlignment) {}
59 
60  int type() const { return MuonResidualsFitter::k6DOF; }
61 
62  int npar() {
64  else if (residualsModel() == kPowerLawTails) return kNPar;
65  else if (residualsModel() == kROOTVoigt) return kNPar;
66  else assert(false);
67  }
68  int ndata() { return kNData; }
69 
70  double sumofweights();
71  bool fit(Alignable *ali);
72  double plot(std::string name, TFileDirectory *dir, Alignable *ali);
73 
74  void correctBField();
75 
76  TTree * readNtuple(std::string fname, unsigned int wheel, unsigned int station, unsigned int sector, unsigned int preselected = 1);
77 
78 protected:
79  void inform(TMinuit *tMinuit);
80 };
81 
82 #endif // Alignment_MuonAlignmentAlgorithms_MuonResiduals6DOFFitter_H
tuple weightAlignment
Definition: align_cfg.py:30
MuonResiduals6DOFFitter(int residualsModel, int minHits, int useResiduals, bool weightAlignment=true)
double plot(std::string name, TFileDirectory *dir, Alignable *ali)
TTree * readNtuple(std::string fname, unsigned int wheel, unsigned int station, unsigned int sector, unsigned int preselected=1)
void inform(TMinuit *tMinuit)
list useResiduals
Definition: align_cfg.py:36
string fname
main script
dbl *** dir
Definition: mlp_gen.cc:35