25 void setIonElectrons(
int layer,
int nElectrons, std::vector<double>
x, std::vector<double> y, std::vector<double> z, std::vector<double>
t);
41 m_GainMultiplier[0] = GainMultiplier[0];
42 m_GainMultiplier[1] = GainMultiplier[1];
43 m_GainMultiplier[2] = GainMultiplier[2];
57 m_gapShift_microSector[0][0]=shift[0];
58 m_gapShift_microSector[0][1]=shift[1];
59 m_gapShift_microSector[1][0]=shift[2];
60 m_gapShift_microSector[1][1]=shift[3];
61 m_gapShift_microSector[2][0]=shift[4];
62 m_gapShift_microSector[2][1]=shift[5];
66 m_microSector_width[0][0]=width[0];
67 m_microSector_width[0][1]=width[1];
68 m_microSector_width[1][0]=width[2];
69 m_microSector_width[1][1]=width[3];
70 m_microSector_width[2][0]=width[4];
71 m_microSector_width[2][1]=width[5];
80 IndexGar pos2Index(
double X,
double Y,
double Z);
82 bool samplingDrift(
int layer,
double driftD,
int idIon);
83 bool samplingTransfer(
int layer,
int region,
int idLastStep);
84 int samplingGain(
int layer,
int region);
85 bool calMultiE(
int layer);
86 void saveElectron(
double phi,
double z,
double t);
91 TF1 *m_funPolya[3][3];
98 std::vector<Float_t> m_vecIonR;
99 std::vector<Float_t> m_vecIonPhi;
100 std::vector<Float_t> m_vecIonZ;
101 std::vector<Float_t> m_vecIonT;
105 std::vector<int> m_idIon;
106 std::vector<Float_t> m_vecGem1dX;
107 std::vector<Float_t> m_vecGem1dZ;
108 std::vector<Float_t> m_vecGem1dT;
112 std::vector<int> m_idGem1;
113 std::vector<Float_t> m_vecGem2dX;
114 std::vector<Float_t> m_vecGem2dZ;
115 std::vector<Float_t> m_vecGem2dT;
119 std::vector<int> m_idGem2;
120 std::vector<Float_t> m_vecGem3dX;
121 std::vector<Float_t> m_vecGem3dZ;
122 std::vector<Float_t> m_vecGem3dT;
126 std::vector<Float_t> m_eX;
127 std::vector<Float_t> m_eY;
128 std::vector<Float_t> m_eZ;
129 std::vector<Float_t> m_eT;
132 double m_gain_gem[3][3];
133 double m_GainMultiplier[3];
134 double m_TransMultiplier;
135 double m_DiffuMultiplier;
139 double m_meanXpar[2];
140 double m_sigmaXpar[4];
142 double m_sigmaZpar[4];
143 double m_meanTpar[2];
144 double m_sigmaTpar[4];
145 double m_transparency_gem1;
148 double m_meanX_transf[2];
149 double m_sigmaX_transf[2];
150 double m_meanZ_transf[2];
151 double m_sigmaZ_transf[2];
152 double m_meanT_transf[2];
153 double m_sigmaT_transf[2];
154 double m_transparency_gem2;
155 double m_transparency_gem3;
158 double m_meanX_induc;
159 double m_sigmaX_induc;
160 double m_meanZ_induc;
161 double m_sigmaZ_induc;
162 double m_meanT_induc;
163 double m_sigmaT_induc;
169 int m_Ngaps_microSector;
170 double m_gapShift_microSector[3][2];
171 double m_microSector_width[3][2];
172 double m_gap_microSector;
173 bool inMicroSectorGap(
double phi,
int layer);
void setIonElectrons(int layer, int nElectrons, std::vector< double > x, std::vector< double > y, std::vector< double > z, std::vector< double > t)