]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/AnalysisITSAlignment.h
Release version of ITS code
[u/mrichter/AliRoot.git] / ITS / AnalysisITSAlignment.h
1 #ifndef ALIGNITS_H
2 #define ALIGNITS_H
3 //////////////////////////////////////////////////////////////////////////
4 //  Alice ITS first detector alignment program.                         //
5 //                                                                      //
6 // version: 0.0.0 Draft.                                                //
7 // Date: April 18 1999                                                  //
8 // By: Bjorn S. Nilsen                                                  //
9 //                                                                      //
10 //////////////////////////////////////////////////////////////////////////
11 #include "AliITS.h"
12 #include "TTree.h"
13 #include "TClonesArray.h"
14 #include "AliRun.h"
15 #include "AliITSAlignmentTrack.h"
16
17 // Data structure to hold averaged clusts.
18 struct ClustAl_sl{
19     Int_t lay,lad,det;
20     Float_t xg,yg,zg,xl,yl,zl;
21 };
22 struct ClustAl_tl{
23     Int_t    track,nclust;  // track number and number of data points.
24     ClustAl_sl *clust;        // data points to fit.
25     Float_t  a,b,c,d,a0,b0,c0,d0,qual;  // fit parameters and fit quality.
26     Float_t  px,py,pz,p,pt;
27     // x=a+b*z and y=c+d*z;
28     // x=a0+b0*y and z=c0+d0*y in coordinate system of clust[0].lay,lad,det
29 };
30
31 void HitsTo(ClustAl_tl *trk,Int_t &ntrk,Int_t,TTree *TH,AliITS *ITS,
32             Float_t nsigmaT1,Float_t nsigmaT2,Float_t nsigmaT3,
33             Float_t nsigmaR1,Float_t nsigmaR2,Float_t nsigmaR3);
34 void HitsToClustAl(ClustAl_tl *trk,Int_t &ntrk,Int_t nt,TTree *TH,
35                    AliITS *ITS,Float_t fraction);
36 void PlotGeomChanges(AliITSgeom *gt,AliITSgeom *gc,TFile *Hfile,Float_t *Rdta);
37 void FillGlobalPositions(ClustAl_tl *trk,Int_t ntrk,AliITSgeom *g);
38 void FitAllTracks(ClustAl_tl *trk,Int_t ntrk,Float_t *v0,AliITSgeom *gm,
39                   const char *sfile,TFile *Hfile,Float_t *Fdta,Int_t *Ndta);
40 void FitVertexAll(ClustAl_tl *trk,Int_t ntrk,const char *sfile,TFile *Hfile);
41 void OnlyOneGeometry(char *filename,AliITSgeom *gm,AliITSgeom &gm2,
42                      Float_t trans[],Float_t rot[]);
43 void deleteClustAl(ClustAl_tl *trk,Int_t ntrk);
44 void FillAliITSAlignmentTrack(AliITSAlignmentTrack *trk,Int_t &ntrk,Int_t nt,
45                               TTree *TH,AliITS *ITS,Float_t fraction);
46 void RunAlignment(Int_t evnt,Float_t fraction);
47
48 #endif