107 if (!(fMC->TrackCharge())) {
112 Int_t current_volid = fMC->CurrentVolID(copy);
115 static Int_t idFDA = fMC->VolId(
"FDApad");
116 static Int_t idFDC = fMC->VolId(
"FDCpad");
120 fMC->CurrentVolOffID(1, sect);
124 fMC->CurrentVolOffID(2, detc);
127 Int_t ADlayer = (current_volid == idFDC) ? 0 : 2;
133 Int_t ADsector = ADlayer * 4 + sect;
140 Float_t fFDDLightYield(12.8e6);
143 Float_t destep_ad = fMC->Edep();
144 Int_t nPhotonsInStep_ad = Int_t(fFDDLightYield * destep_ad);
145 nPhotonsInStep_ad = gRandom->Poisson(nPhotonsInStep_ad);
148 static Float_t tlength_ad = 0.;
149 static Int_t nPhotons_ad = 0;
151 static TVector3 vPos;
153 eloss_ad += destep_ad;
155 if (fMC->IsTrackEntering()) {
156 nPhotons_ad = nPhotonsInStep_ad;
157 fMC->TrackPosition(vPos(0), vPos(1), vPos(2));
162 nPhotons_ad += nPhotonsInStep_ad;
164 if (fMC->IsTrackExiting() || fMC->IsTrackStop() || fMC->IsTrackDisappeared()) {
165 Int_t trackID = fMC->GetStack()->GetCurrentTrackNumber();
169 addHit(trackID, ADsector, vPos,
time, eloss_ad, nPhotons_ad);
191 Float_t density, as[11], zs[11], ws[11];
192 Double_t radLength, absLength, a_ad, z_ad;
196 Float_t aPVC[3] = {12.0107, 1.00794, 35.4527};
197 Float_t zPVC[3] = {6., 1., 35.};
198 Float_t wPVC[3] = {2., 3., 1.};
203 Float_t aAir[4] = {12.0107, 14.0067, 15.9994, 39.948};
204 Float_t zAir[4] = {6., 7., 8., 18.};
205 Float_t wAir[4] = {0.000124, 0.755267, 0.231781, 0.012827};
208 Float_t asteel[4] = {55.847, 51.9961, 58.6934, 28.0855};
209 Float_t zsteel[4] = {26., 24., 28., 14.};
210 Float_t wsteel[4] = {.715, .18, .1, .005};
212 Float_t acasti[4] = {55.847, 12.011, 28.085, 54.938};
213 Float_t zcasti[4] = {26., 6., 14., 25.};
214 Float_t wcasti[4] = {0.929, 0.035, 0.031, 0.005};
227 Double_t maxField = 5.0;
228 Float_t epsil, stmin, tmaxfd, deemax, stemax;
236 o2::base::Detector::Medium(47,
"PVC", 47, 0, fieldType, maxField, tmaxfd, stemax, deemax, epsil, stmin);
237 o2::base::Detector::Medium(9,
"ALU", 9, 0, fieldType, maxField, tmaxfd, stemax, deemax, epsil, stmin);
238 o2::base::Detector::Medium(10,
"FE", 10, 0, fieldType, maxField, tmaxfd, stemax, deemax, epsil, stmin);
239 o2::base::Detector::Medium(11,
"Cu", 11, 0, fieldType, maxField, tmaxfd, stemax, deemax, epsil, stmin);
240 o2::base::Detector::Medium(16,
"VA", 16, 0, fieldType, maxField, tmaxfd, stemax, deemax, epsil, stmin);
241 o2::base::Detector::Medium(13,
"PB", 13, 0, fieldType, maxField, tmaxfd, stemax, deemax, epsil, stmin);
242 o2::base::Detector::Medium(19,
"ST", 19, 0, fieldType, maxField, tmaxfd, stemax, deemax, epsil, stmin);
264 o2::base::Detector::Medium(
id,
"BC420",
id, 1, fieldType, maxField, tmaxfd, stemax, deemax, epsil, stmin);
288 o2::base::Detector::Medium(
id,
"PMMA",
id, 1, fieldType, maxField, tmaxfd, stemax, deemax, epsil, stmin);
330 o2::base::Detector::Medium(
id,
"MuMetal",
id, 1, fieldType, maxField, tmaxfd, stemax, deemax, epsil, stmin);
340 o2::base::Detector::Medium(
id,
"Alum",
id, 1, fieldType, maxField, tmaxfd, stemax, deemax, epsil, stmin);
350 o2::base::Detector::Medium(
id,
"Glass",
id, 1, fieldType, maxField, tmaxfd, stemax, deemax, epsil, stmin);