Line data Source code
1 : /**************************************************************************
2 : * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 : * *
4 : * Author: The ALICE Off-line Project. *
5 : * Contributors are mentioned in the code where appropriate. *
6 : * *
7 : * Permission to use, copy, modify and distribute this software and its *
8 : * documentation strictly for non-commercial purposes is hereby granted *
9 : * without fee, provided that the above copyright notice appears in all *
10 : * copies and that both the copyright notice and this permission notice *
11 : * appear in the supporting documentation. The authors make no claims *
12 : * about the suitability of this software for any purpose. It is *
13 : * provided "as is" without express or implied warranty. *
14 : **************************************************************************/
15 :
16 :
17 : ///////////////////////////////////////////////////////////////////////////////
18 : // //
19 : // Class to set HMPID reconstruction parameters (normal, HTA, UserCut ... //
20 : // //
21 : // //
22 : ///////////////////////////////////////////////////////////////////////////////
23 : //
24 : //Email: domenico.dibari@ba.infn.it
25 : //
26 : #include "AliLog.h"
27 : #include "AliHMPIDRecoParamV1.h"
28 : #include "AliHMPIDParam.h"
29 :
30 12 : ClassImp(AliHMPIDRecoParamV1)
31 :
32 : //_____________________________________________________________________________
33 6 : AliHMPIDRecoParamV1::AliHMPIDRecoParamV1():AliDetectorRecoParam(),
34 6 : fHmpRecoMode(kTRUE),fHmpFixedDistCut(kTRUE),
35 6 : fHmpTrackMatchingDist(1.0)
36 30 : {
37 : //
38 : // ctor
39 : //
40 96 : for(Int_t iCh=AliHMPIDParam::kMinCh;iCh<=AliHMPIDParam::kMaxCh;iCh++) fHmpUserCut[iCh]=3;
41 72 : for(Int_t iPol=0;iPol<5;iPol++) fHmpTrackMatchingDistParas[iPol]=0;
42 12 : }
43 : //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
44 0 : AliHMPIDRecoParamV1::AliHMPIDRecoParamV1(const AliHMPIDRecoParamV1 &p):AliDetectorRecoParam(p),
45 0 : fHmpRecoMode(kTRUE),fHmpFixedDistCut(kTRUE),
46 0 : fHmpTrackMatchingDist(1.0)
47 0 : {
48 : //copy Ctor
49 :
50 0 : fHmpRecoMode= p.fHmpRecoMode;
51 0 : fHmpFixedDistCut=p.fHmpFixedDistCut;
52 0 : for(Int_t iCh=AliHMPIDParam::kMinCh;iCh<=AliHMPIDParam::kMaxCh;iCh++) fHmpUserCut[iCh]=p.fHmpUserCut[iCh];
53 0 : fHmpTrackMatchingDist=p.fHmpTrackMatchingDist;
54 0 : for(Int_t iPol=0;iPol<5;iPol++) fHmpTrackMatchingDistParas[iPol]=p.fHmpTrackMatchingDistParas[iPol];
55 0 : }
56 :
57 : //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
58 : AliHMPIDRecoParamV1& AliHMPIDRecoParamV1::operator=(const AliHMPIDRecoParamV1 &p)
59 : {
60 : //
61 : // assign. operator
62 0 : if(this!=&p){
63 0 : AliDetectorRecoParam::operator=(p);
64 0 : this->fHmpRecoMode= p.fHmpRecoMode;
65 0 : this->fHmpFixedDistCut=p.fHmpFixedDistCut;
66 0 : for(Int_t iCh=AliHMPIDParam::kMinCh;iCh<=AliHMPIDParam::kMaxCh;iCh++) this->fHmpUserCut[iCh] = p.fHmpUserCut[iCh];
67 0 : this->fHmpTrackMatchingDist=p.fHmpTrackMatchingDist;
68 0 : for(Int_t iPol=0;iPol<5;iPol++) this->fHmpTrackMatchingDistParas[iPol]=p.fHmpTrackMatchingDistParas[iPol];
69 0 : }
70 0 : return *this;
71 : }
72 : //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
73 : AliHMPIDRecoParamV1::~AliHMPIDRecoParamV1()
74 24 : {
75 : //
76 : // dtor
77 : //
78 24 : }
79 : //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
80 : AliHMPIDRecoParamV1 *AliHMPIDRecoParamV1::GetLowFluxParam(){
81 : //
82 : // Set HMPID Reco Params for Low Flux environment
83 : //
84 0 : AliHMPIDRecoParamV1 *hmpParam = new AliHMPIDRecoParamV1;
85 0 : hmpParam->fHmpRecoMode = kTRUE; //kTRUE = normal reco. kFLASE = HTA
86 0 : hmpParam->fHmpUserCut[0] = 3; //HMPID Module 0 User DAQ Sigma cut
87 0 : hmpParam->fHmpUserCut[1] = 3; //HMPID Module 1 User DAQ Sigma cut
88 0 : hmpParam->fHmpUserCut[2] = 3; //HMPID Module 2 User DAQ Sigma cut
89 0 : hmpParam->fHmpUserCut[3] = 3; //HMPID Module 3 User DAQ Sigma cut
90 0 : hmpParam->fHmpUserCut[4] = 3; //HMPID Module 4 User DAQ Sigma cut
91 0 : hmpParam->fHmpUserCut[5] = 3; //HMPID Module 5 User DAQ Sigma cut
92 0 : hmpParam->fHmpUserCut[6] = 3; //HMPID Module 6 User DAQ Sigma cut
93 0 : hmpParam->fHmpFixedDistCut=kTRUE; //HMPID fixed (kTRUE) or parameterized distance cut (kFALSE)
94 0 : hmpParam->fHmpTrackMatchingDist = 3.0; //HMPID Track Matching distance cut
95 0 : for(Int_t iPol=0;iPol<5;iPol++) hmpParam->fHmpTrackMatchingDistParas[iPol]=1; //Prevision for momentum dependen track matching
96 0 : hmpParam->SetName("HMP Low Flux");
97 0 : hmpParam->SetTitle("HMP Low Flux");
98 0 : return hmpParam;
99 :
100 0 : }
101 : //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
102 : AliHMPIDRecoParamV1 *AliHMPIDRecoParamV1::GetHighFluxParam(){
103 : //
104 : // Set HMPID Reco Params for Low Flux environment
105 : //
106 0 : AliHMPIDRecoParamV1 *hmpParam = new AliHMPIDRecoParamV1;
107 0 : hmpParam->fHmpRecoMode = kTRUE; //kTRUE = normal reco. kFLASE = HTA
108 0 : hmpParam->fHmpUserCut[0] = 3; //HMPID Module 0 User DAQ Sigma cut
109 0 : hmpParam->fHmpUserCut[1] = 3; //HMPID Module 1 User DAQ Sigma cut
110 0 : hmpParam->fHmpUserCut[2] = 3; //HMPID Module 2 User DAQ Sigma cut
111 0 : hmpParam->fHmpUserCut[3] = 3; //HMPID Module 3 User DAQ Sigma cut
112 0 : hmpParam->fHmpUserCut[4] = 3; //HMPID Module 4 User DAQ Sigma cut
113 0 : hmpParam->fHmpUserCut[5] = 3; //HMPID Module 5 User DAQ Sigma cut
114 0 : hmpParam->fHmpUserCut[6] = 3; //HMPID Module 6 User DAQ Sigma cut
115 0 : hmpParam->fHmpFixedDistCut=kTRUE; //HMPID fixed (kTRUE) or parameterized distance cut (kFALSE)
116 0 : hmpParam->fHmpTrackMatchingDist = 1.0; //HMPID Track Matching distance cut
117 0 : for(Int_t iPol=0;iPol<5;iPol++) hmpParam->fHmpTrackMatchingDistParas[iPol]=1; //Prevision for momentum dependen track matching
118 0 : hmpParam->SetName("HMP High Flux");
119 0 : hmpParam->SetTitle("HMP High Flux");
120 0 : return hmpParam;
121 :
122 0 : }
123 : //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
124 : AliHMPIDRecoParamV1 *AliHMPIDRecoParamV1::GetCosmicParam(){
125 : //
126 : // Set HMPID Reco Params for Low Flux environment
127 : //
128 0 : AliHMPIDRecoParamV1 *hmpParam = new AliHMPIDRecoParamV1;
129 0 : hmpParam->fHmpRecoMode = kTRUE; //kTRUE = normal reco. kFLASE = HTA
130 0 : hmpParam->fHmpUserCut[0] = 3; //HMPID Module 0 User DAQ Sigma cut
131 0 : hmpParam->fHmpUserCut[1] = 3; //HMPID Module 1 User DAQ Sigma cut
132 0 : hmpParam->fHmpUserCut[2] = 3; //HMPID Module 2 User DAQ Sigma cut
133 0 : hmpParam->fHmpUserCut[3] = 3; //HMPID Module 3 User DAQ Sigma cut
134 0 : hmpParam->fHmpUserCut[4] = 3; //HMPID Module 4 User DAQ Sigma cut
135 0 : hmpParam->fHmpUserCut[5] = 3; //HMPID Module 5 User DAQ Sigma cut
136 0 : hmpParam->fHmpUserCut[6] = 3; //HMPID Module 6 User DAQ Sigma cut
137 0 : hmpParam->fHmpFixedDistCut=kTRUE; //HMPID fixed (kTRUE) or parameterized distance cut (kFALSE)
138 0 : hmpParam->fHmpTrackMatchingDist = 4.0; //HMPID Track Matching distance cut
139 0 : for(Int_t iPol=0;iPol<5;iPol++) hmpParam->fHmpTrackMatchingDistParas[iPol]=1; //Prevision for momentum dependen track matching
140 0 : hmpParam->SetName("HMP Cosmic ");
141 0 : hmpParam->SetTitle("HMP Cosmic");
142 0 : return hmpParam;
143 :
144 0 : }
145 : //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
146 : void AliHMPIDRecoParamV1::PrintParameters() const
147 : {
148 : //
149 : // Printing of the used HMPID reconstruction parameters
150 : //
151 0 : AliInfo(Form("%s",AliHMPIDRecoParamV1::GetName()));
152 0 : AliInfo(Form("IsDefault: %d",AliHMPIDRecoParamV1::IsDefault()));
153 0 : AliInfo(Form(" Running HMPID Reco: %d (1=Standard, 0=HTA)",fHmpRecoMode));
154 0 : AliInfo(Form(" Is track matching distance fixed (1) or momentum dependent (0): %d",fHmpFixedDistCut));
155 0 : AliInfo(Form(" HMPID track matching distance cut: %.3lf",fHmpTrackMatchingDist));
156 0 : for(Int_t iCh=AliHMPIDParam::kMinCh;iCh<=AliHMPIDParam::kMaxCh;iCh++)
157 0 : AliInfo(Form(" HMPID Chamber: %d User DAQ Sigma cut: %d",iCh,fHmpUserCut[iCh]));
158 0 : for(Int_t iPol=0;iPol<5;iPol++)
159 0 : AliInfo(Form(" HMPID momentum dependent distnce parameters: param[%d]=%lf",iPol,fHmpTrackMatchingDistParas[iPol]));
160 :
161 0 : }
|