243 Int_t NNotPrimaries = 0;
262 Double_t px = -SiliconPoint->GetPx();
263 Double_t py = SiliconPoint->GetPy();
264 Double_t pz = SiliconPoint->GetPz();
266 Double_t dEloss = SiliconPoint->GetEnergyLoss() * 1e6;
267 Int_t refId = ipoint;
279 if (mc_module_num < StationSet->GetStation(mc_station_num)->GetNModules()) {
283 Plane3D::Point(-(px + x), (py + y), (pz + z)), mc_station_num, mc_module_num);
284 x = -point_transformed.
X();
285 y = point_transformed.
Y();
286 z = point_transformed.
Z();
288 px = -(direction_transformed.
X() - point_transformed.
X());
289 py = direction_transformed.
Y() - point_transformed.
Y();
290 pz = direction_transformed.
Z() - point_transformed.
Z();
301 StationSet->AddPointToDetector(x, y, z, px, py, pz, dEloss, refId);
308 for (
Int_t iStation = 0; iStation <
StationSet->GetNStations(); ++iStation) {
313 vector<Int_t> processed_zones;
320 Bool_t is_processed_zone =
false;
321 for (
size_t iz = 0; iz < processed_zones.size(); ++iz)
322 if (zone_id == processed_zones[iz])
323 is_processed_zone =
true;
325 if (!is_processed_zone) {
326 Int_t first_strip_in_zone =
module->GetFirstStripInZone(zone_id);
327 Int_t last_strip_in_zone =
module->GetLastStripInZone(zone_id);
328 map<int, int> noiseMap;
330 for (
Int_t iStrip = first_strip_in_zone; iStrip < last_strip_in_zone + 1; ++iStrip) {
331 Double_t signal =
module->GetStripSignalInZone(zone_id, iStrip);
334 signal = signal / (120. / 500.0);
357 noiseMap[iStrip] = 1;
364 iStation, iModule, zone_id, iStrip, signal);
373 noiseMap[iStrip - 1] = 1;
422 processed_zones.push_back(zone_id);