1 #ifndef ALIGRPRECOPARAM_H
2 #define ALIGRPRECOPARAM_H
3 /* Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
7 ///////////////////////////////////////////////////////////////////////////////
9 // Class with global reconstruction parameters //
10 // (initially, parameters for AliVertexerTracks) //
11 // Origin: andrea.dainese@lnl.infn.it //
13 ///////////////////////////////////////////////////////////////////////////////
16 #include "AliDetectorRecoParam.h"
18 class AliGRPRecoParam : public AliDetectorRecoParam
22 virtual ~AliGRPRecoParam();
24 static AliGRPRecoParam *GetLowFluxParam();// make reco parameters for low flux env.
25 static AliGRPRecoParam *GetHighFluxParam();// make reco parameters for high flux env.
26 static AliGRPRecoParam *GetCosmicTestParam();// make reco parameters for cosmics env.
28 void SetMostProbablePt(Double_t pt=0.350) { fMostProbablePt=pt; return; }
29 Double_t GetMostProbablePt() const { return fMostProbablePt; }
31 void SetVertexerTracksConstraintITS(Bool_t constr=kTRUE) { fVertexerTracksConstraintITS=constr; return; }
32 void SetVertexerTracksConstraintTPC(Bool_t constr=kTRUE) { fVertexerTracksConstraintTPC=constr; return; }
33 void SetVertexerTracksCuts(Int_t mode,Int_t ncuts,Double_t cuts[21]);
34 void SetVertexerTracksCutsITS(Int_t ncuts,Double_t cuts[21])
35 { SetVertexerTracksCuts(0,ncuts,cuts); return; }
36 void SetVertexerTracksCutsTPC(Int_t ncuts,Double_t cuts[21])
37 { SetVertexerTracksCuts(1,ncuts,cuts); return; }
38 void SetVertexerV0Cuts(Int_t ncuts,Double_t cuts[7]);
39 void SetVertexerCascadeCuts(Int_t ncuts,Double_t cuts[8]);
40 Bool_t GetVertexerTracksConstraintITS() const { return fVertexerTracksConstraintITS; }
41 Bool_t GetVertexerTracksConstraintTPC() const { return fVertexerTracksConstraintTPC; }
42 Int_t GetVertexerTracksNCuts() const { return fVertexerTracksNCuts; }
43 Int_t GetVertexerV0NCuts() const { return fVertexerV0NCuts; }
44 Int_t GetVertexerCascadeNCuts() const { return fVertexerCascadeNCuts; }
45 void GetVertexerTracksCuts(Int_t mode,Double_t *cuts,Int_t n) const;
46 void GetVertexerTracksCutsITS(Double_t *cuts,Int_t n) const
47 { GetVertexerTracksCuts(0,cuts,n); return; }
48 void GetVertexerTracksCutsTPC(Double_t *cuts,Int_t n) const
49 { GetVertexerTracksCuts(1,cuts,n); return; }
50 void GetVertexerV0Cuts(Double_t *cuts) const;
51 void GetVertexerCascadeCuts(Double_t *cuts) const;
53 AliGRPRecoParam(const AliGRPRecoParam&);
54 AliGRPRecoParam& operator=(const AliGRPRecoParam&);
59 Double_t fMostProbablePt; // to be used for B=0 tracking
60 Bool_t fVertexerTracksConstraintITS; // diamond constr for AliVertexerTracks
61 Bool_t fVertexerTracksConstraintTPC; // diamond constr for AliVertexerTracks
62 Int_t fVertexerTracksNCuts; // number of cuts for AliVertexerTracks
64 // cuts for AliVertexerTracks: ITS mode
65 Double_t fVertexerTracksITSdcacut; // general dca
66 Double_t fVertexerTracksITSdcacutIter0; // dca in iteration 0
67 Double_t fVertexerTracksITSmaxd0z0; // max d0z0
68 Double_t fVertexerTracksITSminCls; // min clusters
69 Double_t fVertexerTracksITSmintrks; // min tracks
70 Double_t fVertexerTracksITSnsigma; // n sigma for d0 cut
71 Double_t fVertexerTracksITSnindetfitter; // min det to try inversion
72 Double_t fVertexerTracksITSmaxtgl; // max tgl
73 Double_t fVertexerTracksITSfidR; // fiducial radius
74 Double_t fVertexerTracksITSfidZ; // fiducial z
75 Double_t fVertexerTracksITSalgo; // finder algo
76 Double_t fVertexerTracksITSalgoIter0; // finder algo iteration 0
78 Double_t fVertexerTracksITSMVTukey2; // Tukey constant for multivertexer
79 Double_t fVertexerTracksITSMVSig2Ini; // initial sig2 for multivertexer
80 Double_t fVertexerTracksITSMVMaxSigma2; // max sig2 to accept for multivertexer
81 Double_t fVertexerTracksITSMVMinSig2Red; // min sig2 to to consider multivertexer stuck (then push)
82 Double_t fVertexerTracksITSMVMinDst; // min distance between 2 iterations to stop multi-vertex search
83 Double_t fVertexerTracksITSMVScanStep; // z-scan step for multivertexer
84 Double_t fVertexerTracksITSMVMaxWghNtr; // min wdist*ncontrib between to vertices to eliminate
85 Double_t fVertexerTracksITSMVFinalWBinary; // for the final fit used binary weights
86 Double_t fVertexerTracksITSMVBCSpacing; // assumer BC spacing
88 // cuts for AliVertexerTracks: TPC-only mode
89 Double_t fVertexerTracksTPCdcacut; // general dca
90 Double_t fVertexerTracksTPCdcacutIter0; // dca in iteration 0
91 Double_t fVertexerTracksTPCmaxd0z0; // max d0z0
92 Double_t fVertexerTracksTPCminCls; // min clusters
93 Double_t fVertexerTracksTPCmintrks; // min tracks
94 Double_t fVertexerTracksTPCnsigma; // n sigma for d0 cut
95 Double_t fVertexerTracksTPCnindetfitter; // min det to try inversion
96 Double_t fVertexerTracksTPCmaxtgl; // max tgl
97 Double_t fVertexerTracksTPCfidR; // fiducial radius
98 Double_t fVertexerTracksTPCfidZ; // fiducial z
99 Double_t fVertexerTracksTPCalgo; // finder algo
100 Double_t fVertexerTracksTPCalgoIter0; // finder algo iteration 0
102 Double_t fVertexerTracksTPCMVTukey2; // Tukey constant for multivertexer
103 Double_t fVertexerTracksTPCMVSig2Ini; // initial sig2 for multivertexer
104 Double_t fVertexerTracksTPCMVMaxSigma2; // max sig2 to accept for multivertexer
105 Double_t fVertexerTracksTPCMVMinSig2Red; // min sig2 to to consider multivertexer stuck (then push)
106 Double_t fVertexerTracksTPCMVMinDst; // min distance between 2 iterations to stop multi-vertex search
107 Double_t fVertexerTracksTPCMVScanStep; // z-scan step for multivertexer
108 Double_t fVertexerTracksTPCMVMaxWghNtr; // min wdist*ncontrib between to vertices to eliminate
109 Double_t fVertexerTracksTPCMVFinalWBinary; // for the final fit used binary weights
110 Double_t fVertexerTracksTPCMVBCSpacing; // assumer BC spacing
112 Int_t fVertexerV0NCuts; // number of cuts for AliV0vertexer
114 // cuts for AliV0vertexer:
115 Double_t fVertexerV0Chi2max; //max chi2
116 Double_t fVertexerV0DNmin; //min imp parameter for the 1st daughter
117 Double_t fVertexerV0DPmin; //min imp parameter for the 2nd daughter
118 Double_t fVertexerV0DCAmax; //max DCA between the daughter tracks
119 Double_t fVertexerV0CPAmin; //min cosine of V0's pointing angle
120 Double_t fVertexerV0Rmin; //min radius of the fiducial volume
121 Double_t fVertexerV0Rmax; //max radius of the fiducial volume
123 Int_t fVertexerCascadeNCuts; // number of cuts for AliCascadeVertexer
125 // cuts for AliCascadeVertexer:
126 Double_t fVertexerCascadeChi2max; //maximal allowed chi2
127 Double_t fVertexerCascadeDV0min; //min V0 impact parameter
128 Double_t fVertexerCascadeMassWin; //"window" around the Lambda mass
129 Double_t fVertexerCascadeDBachMin; //min bachelor impact parameter
130 Double_t fVertexerCascadeDCAmax; //max DCA between the V0 and the track
131 Double_t fVertexerCascadeCPAmin; //min cosine of the cascade pointing angle
132 Double_t fVertexerCascadeRmin; //min radius of the fiducial volume
133 Double_t fVertexerCascadeRmax; //max radius of the fiducial volume
135 ClassDef(AliGRPRecoParam,6) // global reco parameters