CMS 3D CMS Logo

CompareMillePede.h
Go to the documentation of this file.
1 // Original Author: Gero Flucke
2 // last change : $Date: 2012/03/29 08:47:43 $
3 // by : $Author: flucke $
4 #ifndef COMPAREMILLEPEDE_H
5 #define COMPAREMILLEPEDE_H
6 
7 #include <TString.h>
8 
9 class PlotMillePede;
10 class GFHistManager;
11 
13 {
14  public:
15  CompareMillePede(const char *fileName1, const char *fileName2, Int_t iov1 = 1, Int_t iov2 = 1,
16  Int_t hieraLevel = 0);// iov1/2: which IOV ; hieraLev: -1 ignore, 0 lowest level, etc.
17  virtual ~CompareMillePede();
18 
19  void DrawPedeParam(Option_t *option = "", unsigned int nNonRigidParam = 12);//"add": keep old canvas, "free1/2": if free param in file 1/2, "line": draw line in 2D plot
20  void DrawPedeParamVsLocation(Option_t *option = "", unsigned int nNonRigidParam = 12);//"add": keep old canvas, "free1/2": if free param in file 1/2
21 
22  void DrawParam(Option_t *option="");//"add": keep old canvas, "free1/2": if free param in file 1/2
23  void DrawParamVsLocation(Option_t *option="");//"add": keep old canvas, "free1/2": if free param in file 1/2
24  void DrawParamDeltaMis(Option_t *option="");//"add": keep old canvas, "free1/2": if free param in file 1/2
25  void DrawParamDeltaMisVsLoc(Option_t *option="");//"add": keep old canvas, "free1/2": if free param in file 1/2
26  void DrawNumHits(Option_t *opt="");//"add": keep old canvas
27 
28  void DrawAbsPos(Option_t *opt="");//"start": at start (else end), "add": keep old canvas
29  void DrawSurfaceDeformations(Option_t *option="", UInt_t firstPar=0, UInt_t lastPar=11,
30  const TString &whichOne = "result"
31  ); //"add": keep old canvases, "limit": use GetMaxDev(), "noVs", noDiff"; "result"||"start"||"diff"
32 
33  bool IsConsistent(); // check correct order of alignables, if false draw some hists
34  TString DeltaPar(UInt_t iPar) const; // par_2 - par_1
35  TString DeltaParBySigma(UInt_t iPar, const PlotMillePede *sigmaSource) const;
36  TString DeltaMisPar(UInt_t iPar) const; // abs(misalignment_2)-abs(misalignment_1)
37  TString DeltaMisParBySigma(UInt_t iPar, const PlotMillePede *sigmaSource) const;
38  TString DeltaPos(UInt_t iPos) const;
39 
40  void AddIsFreeSel(TString &sel, const TString &option, UInt_t iPar) const;
41 
42  void SetSubDetId(Int_t subDetId); // 1-6 are TPB, TPE, TIB, TID, TOB, TEC, -1 means: take all
43  void AddSubDetId(Int_t subDetId); // 1-6 are TPB, TPE, TIB, TID, TOB, TEC
44  void SetAlignableTypeId(Int_t alignableTypeId);//detunit=1,det=2,rod=3,etc. from AlignableObjectIdType (-1: all)
45  void SetHieraLevel(Int_t hieraLevel); // select hierarchical level (-1: all)
46  void AddAdditionalSel(const char *selection);// special select; StripDoubleOr1D,StripRphi,StripStereo
47  void AddAdditionalSel(const TString &xyzrPhiNhit, Float_t min, Float_t max); // x,y,z,r,phi,Nhit
48  // const TString GetAdditionalSel () const { return fAdditionalSel;}
49  void ClearAdditionalSel ();
50  void SetSurfDefDeltaBows(bool deltaBows); // take care: problems for false if drawing 1-sensor modules!
51 
52  TString TitleAdd() const;
53 
57 
58  static const unsigned int kNpar; // number of parameters we have...
59 
60  private:
62 
63  Int_t PrepareAdd(bool addPlots);
64 
67 
69 };
70 
71 #endif
void DrawPedeParam(Option_t *option="", unsigned int nNonRigidParam=12)
void SetHieraLevel(Int_t hieraLevel)
TString DeltaPar(UInt_t iPar) const
PlotMillePede * GetPlotMillePede2()
GFHistManager * GetHistManager()
selection
main part
Definition: corrVsCorr.py:100
PlotMillePede * fPlotMp1
TString DeltaMisPar(UInt_t iPar) const
TString DeltaPos(UInt_t iPos) const
unsigned int subDetId[21]
void AddIsFreeSel(TString &sel, const TString &option, UInt_t iPar) const
GFHistManager * fHistManager
void DrawNumHits(Option_t *opt="")
TString DeltaMisParBySigma(UInt_t iPar, const PlotMillePede *sigmaSource) const
T min(T a, T b)
Definition: MathUtil.h:58
void AddAdditionalSel(const char *selection)
void DrawSurfaceDeformations(Option_t *option="", UInt_t firstPar=0, UInt_t lastPar=11, const TString &whichOne="result")
Int_t PrepareAdd(bool addPlots)
PlotMillePede * fPlotMp2
void DrawAbsPos(Option_t *opt="")
void DrawParamDeltaMis(Option_t *option="")
TString TitleAdd() const
static const unsigned int kNpar
void DrawParamVsLocation(Option_t *option="")
PlotMillePede * GetPlotMillePede1()
void SetAlignableTypeId(Int_t alignableTypeId)
TString DeltaParBySigma(UInt_t iPar, const PlotMillePede *sigmaSource) const
void AddSubDetId(Int_t subDetId)
void DrawPedeParamVsLocation(Option_t *option="", unsigned int nNonRigidParam=12)
void DrawParam(Option_t *option="")
void SetSubDetId(Int_t subDetId)
virtual ~CompareMillePede()
void DrawParamDeltaMisVsLoc(Option_t *option="")
void SetSurfDefDeltaBows(bool deltaBows)
void ClearAdditionalSel()