HerdSoftware  0.4.0
DetStructs.h
Go to the documentation of this file.
1 #ifndef DETSTRUCT_H_
2 #define DETSTRUCT_H_
3 
4 #include "G4SystemOfUnits.hh"
5 
6 #include <limits>
7 #include <string>
8 #include <vector>
9 
11 
12  // Detectors
13  std::string chargeID;
14  std::string tracker;
15  std::string calorimeter;
16  std::string antiCoincidence;
17  std::string calibration;
18  std::string shield;
19  std::string spaceStation;
20 
21  // CALO-FIT distances
25  // FIT-PSD distances
28  // PSD-SCD distances
31 
33 
34  // Detectors
35  chargeID = "none";
36  tracker = "fit";
37  calorimeter = "calo";
38  antiCoincidence = "psd";
39  calibration = "none";
40  shield = "none";
41  spaceStation = "none";
42 
43  // CALO-FIT distances
44  caloTopFitDistance = 150. * CLHEP::mm;
45  caloSideXFitDistance = 86.3 * CLHEP::mm;
46  caloSideYFitDistance = 115.3 * CLHEP::mm;
47  // FIT-PSD distances
48  topFitTopPsdDistance = 61. * CLHEP::mm; // Value for v1 tiles PSD
50  // PSD-SCD distances
51  topPsdTopScdDistance = 20 * CLHEP::mm;
52  sidePsdSideScdDistance = 20 * CLHEP::mm;
53  }
54 };
55 
56 struct CaloOptions {
60  float crystalSize;
62  float xGap, yGap, zGap;
64  float xCenter, yCenter, zTop;
65  std::string cubeMaskPath;
66  std::vector<int> cubeMask;
68  std::string fillerMaterial;
71  std::vector<double> sphericalCubesXCoo, sphericalCubesYCoo, sphericalCubesZCoo; // Set by SphericalCaloBuilder::Build
72 
73  // All the PDs parameters are relative to the active (i.e. depleted) Si volume
74  float lpdSizeL, spdSizeL;
75  float lpdSizeT, spdSizeT;
77  float pdDistance;
78  float pdShift;
79  bool withSupports; // If false then the CALO supports will not be placed
81  bool drawSupports; // If false then the CALO supports will not be drawn in the G4 OpenGL visualization
82 
84  monolithicCalo = false;
85  densityHasBeenSet = false;
86  crystalDensity = 7.4 * CLHEP::g / CLHEP::cm3; // Default density for calo v1 geometry (the defaults for calo v2 and
87  // spherical{_v2,_v3} are eventually set in ParametricGeo.cpp).
88  crystalSize = 3. * cm;
89  crystalSlotSize = 3. * cm;
90  xGap = 8 * mm;
91  yGap = 4 * mm;
92  zGap = 4 * mm;
93  wellGapX = 0 * mm;
94  wellGapY = 15 * mm;
95  wellGapZ = 15 * mm;
96  xCenter = 0 * mm;
97  yCenter = 0 * mm;
98  zTop = 0 * mm;
99  cubeMaskPath = "";
100  cubeMask.clear();
101  fillerDensity = 0.;
102  fillerMaterial = "G4_Galactic";
103  sphericalMaxCubesZ = 21;
104  sphericalMaxCubesX = 23;
105  sphericalMaxCubesY = 23;
106  sphericalRadius = 12.285;
107 
108  lpdSizeL = lpdSizeT = 5. * CLHEP::mm;
109  spdSizeL = spdSizeT = 1.265 * CLHEP::mm;
110  lpdThickness = 130. * CLHEP::um;
111  spdThickness = 40. * CLHEP::um;
112  pdDistance = 4.75 * CLHEP::mm;
113  pdShift = 1.0 * CLHEP::um;
114 
115  withSupports = false;
116  drawSupports = true;
117  }
118 };
119 
125  double caloShowerLength; // only for MCCaloAcc2
129  bool selectTOPcalo; // only for MCCaloAcc2
130  bool selectBOTTOMcalo; // only for MCCaloAcc2
131  bool selectXNEGcalo; // only for MCCaloAcc2
132  bool selectXPOScalo; // only for MCCaloAcc2
133  bool selectYNEGcalo; // only for MCCaloAcc2
134  bool selectYPOScalo; // only for MCCaloAcc2
135 
137  mcCaloAccType = 2;
138  caloTOPXwidth = 85 * CLHEP::cm;
139  caloTOPYwidth = 80 * CLHEP::cm;
140  caloTOPZquote = 3.4 * CLHEP::cm;
141  caloShowerLength = 0 * CLHEP::cm; // old value: 27 * CLHEP::cm
142  caloBOTTOMXwidth = 85 * CLHEP::cm; // For mcCaloAccType=2 must be =caloTOPXwidth
143  caloBOTTOMYwidth = 80 * CLHEP::cm; // For mcCaloAccType=2 must be =caloTOPYwidth
144  caloBOTTOMZquote = -76.6 * CLHEP::cm; // default for MCCaloType 1
145  selectTOPcalo = true;
146  selectBOTTOMcalo = false;
147  selectXNEGcalo = true;
148  selectXPOScalo = true;
149  selectYNEGcalo = true;
150  selectYPOScalo = true;
151  }
152 };
153 
154 struct PSDOptions {
155  int version;
156  // Common settings
159  double topXPos;
160  double topYPos;
161  double xSideVPos;
162  double ySideVPos;
163  double xSideHPos;
164  double ySideHPos;
165 
167  int nLayers;
168  double layersGap;
169  bool hasCF;
171  double baseAngle;
172  };
173 
179  } topTilesOptions;
180 
187 
189  // Default values
190  version = 1;
191  psdTopThickness = psdSideThickness = 10. * CLHEP::mm;
192  topXPos = 0.;
193  topYPos = 0.;
194  xSideVPos = -189.88 * CLHEP::mm; // Value for v1 tiles
195  ySideVPos = -189.88 * CLHEP::mm; // Value for v1 tiles
196  xSideHPos = 0.; // Value for v1 tiles
197  ySideHPos = 0.; // Value for v1 tiles
198 
199  // Top tiles
202  topTilesOptions.hasCF = false;
208  topTilesOptions.tileGapAlongYOdd = 0. * CLHEP::mm;
209  topTilesOptions.staggeringX = topTilesOptions.staggeringY = 0.; // Will be filled by TilesPsdBuilder
210  topTilesOptions.baseAngle = 90 * CLHEP::degree;
211 
212  // Side tiles
215  sideTilesOptions.hasCF = false;
221  sideTilesOptions.tileGapAlongVOdd = 0. * CLHEP::mm;
222  sideTilesOptions.staggeringH = sideTilesOptions.staggeringV = 0.; // Will be filled by TilesPsdBuilder
223  sideTilesOptions.baseAngle = 90 * CLHEP::degree;
224  }
225 
226  void SetNTopTilesAlongLongSide(int nTiles) {
228  }
229  void SetNTopTilesAlongShortSide(int nTiles) {
231  }
232  void SetTopTilesGapAlongLongSide(double gap) {
234  }
235  void SetTopTilesGapAlongShortSide(double gap) {
237  }
238  void SetNSideTilesAlongLongSide(int nTiles) {
240  }
241  void SetNSideTilesAlongShortSide(int nTiles) {
243  }
244  void SetSideTilesGapAlongLongSide(double gap) {
246  }
247  void SetSideTilesGapAlongShortSide(double gap) {
249  }
250  void SetV2() {
251  version = 2;
252 
253  // Top tiles
255  topTilesOptions.layersGap = 4. * CLHEP::mm;
256  topTilesOptions.hasCF = true;
261  topTilesOptions.tileGapAlongYOdd = 0. * CLHEP::mm;
262  topTilesOptions.staggeringX = topTilesOptions.staggeringY = 0.; // Will be filled by TilesPsdBuilder
263  topTilesOptions.cfThickness = 2. * CLHEP::mm;
264  topTilesOptions.cfGap = 16. * CLHEP::mm;
265  // Side tiles
267  sideTilesOptions.layersGap = 4 * CLHEP::mm;
268  sideTilesOptions.hasCF = true;
273  sideTilesOptions.tileGapAlongVOdd = 0. * CLHEP::mm;
274  sideTilesOptions.staggeringH = sideTilesOptions.staggeringV = 0.; // Will be filled by TilesPsdBuilder
275  sideTilesOptions.cfThickness = 2. * CLHEP::mm;
276  sideTilesOptions.cfGap = 16. * CLHEP::mm;
277  }
278 
279  void SetV3() {
280  version = 3;
281 
282  // Top tiles
284  topTilesOptions.layersGap = 10. * CLHEP::mm;
285  topTilesOptions.hasCF = true;
288  topTilesOptions.tileLongSideSize = 30. * CLHEP::cm;
289  topTilesOptions.tileShortSideSize = 5. * CLHEP::cm;
291  topTilesOptions.tileGapAlongYOdd = 1.0 * CLHEP::mm;
293  psdTopThickness = 5. * CLHEP::mm;
294  topTilesOptions.baseAngle = 45. * CLHEP::degree;
295  topTilesOptions.cfThickness = 2. * CLHEP::mm;
296  topTilesOptions.cfGap = 11. * CLHEP::mm;
297 
298  // Side tiles
300  sideTilesOptions.layersGap = 10 * CLHEP::mm;
301  sideTilesOptions.hasCF = true;
306  sideTilesOptions.tileLongSideSize = 30. * CLHEP::cm;
307  sideTilesOptions.tileShortSideSize = 5. * CLHEP::cm;
309  sideTilesOptions.tileGapAlongVOdd = 1. * CLHEP::mm;
311  psdSideThickness = 5. * CLHEP::mm;
312  sideTilesOptions.baseAngle = 45. * CLHEP::degree;
313  sideTilesOptions.cfThickness = 2. * CLHEP::mm;
314  sideTilesOptions.cfGap = 11. * CLHEP::mm;
315  }
316 };
317 
318 struct FITOptions {
319  int version = 1;
321  unsigned fitSideLayers;
322  unsigned fitSideWLayers;
326  double fitHcombThickness; // this is valid for layers without W, if W is present the thickness of the Hcomb is =
327  // fitHcombThickness - fitWThickness
328  std::string fitMatMaterial;
329  std::string fitMatCoreMaterial;
330  std::string fitHcombMaterial;
331  std::string fitCfrpMaterial;
332  double fitTrayGap; // distance between tray centers (in x or y)
335  unsigned fitTopLayers;
336  unsigned fitTopWLayers;
338  topPlaneSizeXLayOdd; // X dimension of the top FIT layers for even (0,2,..) and odd (1,3,...) layers
340  topPlaneSizeYLayOdd; // Y dimension of the top FIT layers for even (0,2,..) and odd (1,3,...) layers
341  std::vector<bool> fitlistOfTopWDoubleLayers;
342  std::vector<bool> fitlistOfSideWDoubleLayers;
343 
344  double topXPos;
345  double topYPos;
346  double xSideVPos;
347  double ySideVPos;
348  double xSideHPos;
349  double ySideHPos;
350 
352  fitMatThickness = 1.580000 * CLHEP::mm; // (6-1) * 0.21 + 0.25 + 2* 0.14 - see Junjing's code
353  fitSideLayers = 9;
354  fitSideWLayers = 0;
355  fitWThickness = 2 * CLHEP::mm; // (6-1) * 0.21 + 0.25 - see Junjing's code
356  fitMatCoreThickness = 1.3 * CLHEP::mm; // (6-1) * 0.21 + 0.25 - see Junjing's code
357  fitCfrpThickness = 0.6 * CLHEP::mm;
358  fitHcombThickness = 20 * CLHEP::mm;
359  fitTrayGap = 0.64 * CLHEP::mm; // Distance between faces of neihgboring trays
360  fitMatMaterial = "Epoxy";
361  fitMatCoreMaterial = "G4_POLYSTYRENE";
362  fitHcombMaterial = "Honeycomb";
363  fitCfrpMaterial = "CarbonFiber_M55J";
364  sidePlaneSizeHLayEven = 1060 * CLHEP::mm; // for now let's make things easy. = 10*106mm mats
365  sidePlaneSizeHLayOdd = 1060 * CLHEP::mm;
366  sidePlaneSizeVLayEven = 742 * CLHEP::mm; // for now let's make things easy. = 7*106mm mats
367  sidePlaneSizeVLayOdd = 742 * CLHEP::mm;
368  fitTopLayers = 5;
369  fitTopWLayers = 0;
370  // XY dimension of the top FIT tray
371  topPlaneSizeXLayEven = 1166 * CLHEP::mm; // for now let's make things easy. = 11*106mm mats
372  topPlaneSizeXLayOdd = 1166 * CLHEP::mm;
373  topPlaneSizeYLayEven = 1166 * CLHEP::mm;
374  topPlaneSizeYLayOdd = 1166 * CLHEP::mm;
375  topXPos = 0.;
376  topYPos = 0.;
377  xSideVPos = -261.9 * CLHEP::mm;
378  ySideVPos = -261.9 * CLHEP::mm;
379  xSideHPos = -64.2 * CLHEP::mm;
380  ySideHPos = -64.2 * CLHEP::mm;
381  }
382 
383  void SetTopPlaneSize(double size) {
385  }
388 
389  void SetV2() {
391 
392  topPlaneSizeXLayEven = 1060. * CLHEP::mm;
393  topPlaneSizeYLayEven = 979.8 * CLHEP::mm; // 10x97.8mm mats + small spacings between mats
394  topPlaneSizeYLayOdd = 1060. * CLHEP::mm;
395  topPlaneSizeXLayOdd = 979.8 * CLHEP::mm; // 10x97.8mm mats + small spacings between mats
396 
397  sidePlaneSizeVLayEven = 672. * CLHEP::mm;
398  sidePlaneSizeHLayEven = 980. * CLHEP::mm; // 10x97.8mm mats + small spacings between mats
399  sidePlaneSizeHLayOdd = 1060 * CLHEP::mm;
400  sidePlaneSizeVLayOdd = 587.8 * CLHEP::mm; // 6x97.8mm mats + small spacings between mats
401  }
402 };
403 
404 struct SCDOptions {
405  int version = 1;
406  double waferThickness = 0.15 * CLHEP::mm;
407  double waferLength = 95 * CLHEP::mm; // Only for v2
408  double waferWidth = 95 * CLHEP::mm; // Only for v2
409  double cfhThickness = 3 * CLHEP::mm; // Only for v2
410  unsigned int scdTopLayers = 4;
411  unsigned int scdSideLayers = 4;
412  unsigned int nTopWafers = 20;
413  unsigned int nSideWafersH = 18;
414  unsigned int nSideWafersV = 9;
415  unsigned int topLadderSize = 1; // Settable only for v2
416  unsigned int sideLadderSizeH = 1; // Settable only for v2
417  unsigned int sideLadderSizeV = 1; // Settable only for v2
418  bool sideLaddersAllV = false; // Only for v2
419  double topStaggeringX = 0.; // Only for v2
420  double topStaggeringY = 0.; // Only for v2
421  double sideStaggeringH = 0.; // Only for v2
422  double sideStaggeringV = 0.; // Only for v2
423  double topXPos = 0.;
424  double topYPos = 0.;
425  double xSideVPos = std::numeric_limits<decltype(xSideVPos)>::max();
426  double ySideVPos = std::numeric_limits<decltype(ySideVPos)>::max();
427  double xSideHPos = 2. * CLHEP::cm;
428  double ySideHPos = 2. * CLHEP::cm;
429  double waferGap = 0.; // Settable only for v2
430  double ladderGap = 0.1 * CLHEP::mm; // Settable only for v2
431  double topSiCfhGap = 0.5 * CLHEP::mm; // Settable only for v2
432  double sideSiCfhGap = 0.5 * CLHEP::mm; // Settable only for v2
433  double topXYGap = 0.5 * CLHEP::mm;
434  double sideXYGap = 0.5 * CLHEP::mm;
435  double topTrayGap = 2 * CLHEP::mm;
436  double sideTrayGap = 2 * CLHEP::mm;
437  bool hasFoam = false;
438  float foamDensity = 192 * CLHEP::kg / CLHEP::m3;
439  std::string foamMaterial = "polyurethane";
440 
441  void SetV2() {
442  version = 2;
443  waferThickness = 0.3 * CLHEP::mm;
444  waferLength = 97.5 * CLHEP::mm;
445  waferWidth = 97.5 * CLHEP::mm;
446  cfhThickness = 50 * CLHEP::mm;
447  waferGap = 0.2 * CLHEP::mm;
448  ladderGap = 0.2 * CLHEP::mm;
449  nTopWafers = 16;
450  topLadderSize = 8;
451  topSiCfhGap = 0.05 * CLHEP::mm;
452  topXYGap = 5.5 * CLHEP::mm;
453  topTrayGap = 7.4 * CLHEP::mm;
454  nSideWafersH = 16;
455  nSideWafersV = 8;
456  sideLadderSizeH = 8;
457  sideLadderSizeV = 8;
458  sideSiCfhGap = 0.05 * CLHEP::mm;
459  sideXYGap = 5.5 * CLHEP::mm;
460  sideTrayGap = 7.4 * CLHEP::mm;
461  }
462 };
463 
464 struct TRDOptions {
466  float posV, posH, posT;
468 
470  nModulesH = 3;
471  nModulesV = 3;
472  posV = std::numeric_limits<decltype(posT)>::max(); // Will be set by geometry datacard or filled by
473  // ParametricGeo::Construct
474  posH = 0.;
475  posT = std::numeric_limits<decltype(posT)>::max(); // Will be filled by ParametricGeo::Construct
476  gapFromSideDetector = 5. * CLHEP::cm;
477  }
478 };
479 
481  float amThickness; // Thickness of the anti-meteorite shield
482  float amGap; // Gap between the anti-meteorite shield and the nearest detector element
483  std::string amMaterial; // Material of the anti-meteorite shield
484  ShieldOptions() : amThickness{1 * CLHEP::mm}, amGap{5 * CLHEP::cm}, amMaterial{"Al"} {}
485 };
486 
487 struct CSSOptions {
488  // Spin angles for solar panels
492 
493  // Revolution angles for solar panels
495 
496  // material of the cabin shell
497  std::string cabinMaterial;
498 
499  void SetSPSpinAngleM1(float angle) { spSpinAngleM1_1 = spSpinAngleM1_2 = angle; }
500  void SetSPSpinAngleM2(float angle) { spSpinAngleM2_1 = spSpinAngleM2_2 = angle; }
501  void SetSPSpinAngleM1M2(float angle) {
502  SetSPSpinAngleM1(angle);
503  SetSPSpinAngleM2(angle);
504  }
505  void SetSPSpinAngleMC(float angle) { spSpinAngleMC_1 = spSpinAngleMC_2 = angle; }
506  void SetSPRevAngleM1M2(float angle) { spRevAngleM1 = spRevAngleM2 = angle; }
507  void SetCabinMaterial(std::string mat_name) { cabinMaterial = mat_name; }
508 
511  spSpinAngleMC_2(0.), spRevAngleM1(0.), spRevAngleM2(0.), cabinMaterial("G4_Al") {}
512 };
513 #endif
SCDOptions::topStaggeringX
double topStaggeringX
Definition: DetStructs.h:419
SCDOptions::topSiCfhGap
double topSiCfhGap
Definition: DetStructs.h:431
FITOptions::xSideVPos
double xSideVPos
Definition: DetStructs.h:346
GeneralOptions::spaceStation
std::string spaceStation
Definition: DetStructs.h:19
PSDOptions::SetTopTilesGapAlongLongSide
void SetTopTilesGapAlongLongSide(double gap)
Definition: DetStructs.h:232
PSDOptions::ySideVPos
double ySideVPos
Definition: DetStructs.h:162
CaloOptions::CaloOptions
CaloOptions()
Definition: DetStructs.h:83
PSDOptions::TilesOptionsSide::tileGapAlongVOdd
double tileGapAlongVOdd
Definition: DetStructs.h:184
CSSOptions
Definition: DetStructs.h:487
ShieldOptions::amThickness
float amThickness
Definition: DetStructs.h:481
SCDOptions::scdSideLayers
unsigned int scdSideLayers
Definition: DetStructs.h:411
TRDOptions::posH
float posH
Definition: DetStructs.h:466
FITOptions::fitSideWLayers
unsigned fitSideWLayers
Definition: DetStructs.h:322
CSSOptions::SetCabinMaterial
void SetCabinMaterial(std::string mat_name)
Definition: DetStructs.h:507
PSDOptions::TilesOptionsTop::tileGapAlongYOdd
double tileGapAlongYOdd
Definition: DetStructs.h:177
CSSOptions::cabinMaterial
std::string cabinMaterial
Definition: DetStructs.h:497
PSDOptions::TilesOptionsTop::nTilesAlongYOdd
int nTilesAlongYOdd
Definition: DetStructs.h:175
PSDOptions::topYPos
double topYPos
Definition: DetStructs.h:160
PSDOptions::TilesOptionsSide::tileLongSideSize
double tileLongSideSize
Definition: DetStructs.h:183
TRDOptions
Definition: DetStructs.h:464
CaloOptions::crystalSize
float crystalSize
Definition: DetStructs.h:60
FITOptions::version
int version
Definition: DetStructs.h:319
FITOptions::FITOptions
FITOptions()
Definition: DetStructs.h:351
GeneralOptions::topPsdTopScdDistance
double topPsdTopScdDistance
Definition: DetStructs.h:29
FITOptions::topPlaneSizeYLayEven
double topPlaneSizeYLayEven
Definition: DetStructs.h:339
PSDOptions::TilesOptionsTop::staggeringX
double staggeringX
Definition: DetStructs.h:178
FITOptions::SetTopPlaneSize
void SetTopPlaneSize(double size)
Definition: DetStructs.h:383
FITOptions::topPlaneSizeXLayOdd
double topPlaneSizeXLayOdd
Definition: DetStructs.h:338
CaloOptions::sphericalMaxCubesX
int sphericalMaxCubesX
Definition: DetStructs.h:69
PSDOptions::TilesOptionsTop::tileLongSideSize
double tileLongSideSize
Definition: DetStructs.h:176
FITOptions::fitSideLayers
unsigned fitSideLayers
Definition: DetStructs.h:321
ShieldOptions::ShieldOptions
ShieldOptions()
Definition: DetStructs.h:484
SCDOptions::nTopWafers
unsigned int nTopWafers
Definition: DetStructs.h:412
CSSOptions::SetSPSpinAngleM1
void SetSPSpinAngleM1(float angle)
Definition: DetStructs.h:499
CaloOptions::yGap
float yGap
Definition: DetStructs.h:62
SCDOptions
Definition: DetStructs.h:404
TRDOptions::posV
float posV
Definition: DetStructs.h:466
CSSOptions::SetSPSpinAngleM2
void SetSPSpinAngleM2(float angle)
Definition: DetStructs.h:500
FITOptions
Definition: DetStructs.h:318
PSDOptions::TilesOptionsTop::tileGapAlongXOdd
double tileGapAlongXOdd
Definition: DetStructs.h:177
CaloOptions::fillerMaterial
std::string fillerMaterial
Definition: DetStructs.h:68
AcceptanceOptions::caloTOPZquote
double caloTOPZquote
Definition: DetStructs.h:122
SCDOptions::waferLength
double waferLength
Definition: DetStructs.h:407
PSDOptions::TilesOptionsTop::nTilesAlongXEven
int nTilesAlongXEven
Definition: DetStructs.h:175
PSDOptions
Definition: DetStructs.h:154
FITOptions::sidePlaneSizeVLayOdd
double sidePlaneSizeVLayOdd
Definition: DetStructs.h:334
AcceptanceOptions::caloBOTTOMXwidth
double caloBOTTOMXwidth
Definition: DetStructs.h:127
GeneralOptions::topFitTopPsdDistance
double topFitTopPsdDistance
Definition: DetStructs.h:26
FITOptions::fitTopWLayers
unsigned fitTopWLayers
Definition: DetStructs.h:336
CaloOptions::sphericalCubesZCoo
std::vector< double > sphericalCubesZCoo
Definition: DetStructs.h:71
PSDOptions::TilesOptionsTop::nTilesAlongXOdd
int nTilesAlongXOdd
Definition: DetStructs.h:175
CSSOptions::CSSOptions
CSSOptions()
Definition: DetStructs.h:509
GeneralOptions::shield
std::string shield
Definition: DetStructs.h:18
GeneralOptions::caloTopFitDistance
double caloTopFitDistance
Definition: DetStructs.h:22
CSSOptions::spSpinAngleM1_2
float spSpinAngleM1_2
Definition: DetStructs.h:489
FITOptions::fitMatMaterial
std::string fitMatMaterial
Definition: DetStructs.h:328
FITOptions::sidePlaneSizeHLayOdd
double sidePlaneSizeHLayOdd
Definition: DetStructs.h:333
SCDOptions::topYPos
double topYPos
Definition: DetStructs.h:424
PSDOptions::TilesOptionsSide::staggeringH
double staggeringH
Definition: DetStructs.h:185
SCDOptions::ySideVPos
double ySideVPos
Definition: DetStructs.h:426
CaloOptions::crystalSlotSize
float crystalSlotSize
Definition: DetStructs.h:61
FITOptions::fitMatThickness
double fitMatThickness
Definition: DetStructs.h:320
FITOptions::topYPos
double topYPos
Definition: DetStructs.h:345
SCDOptions::waferThickness
double waferThickness
Definition: DetStructs.h:406
PSDOptions::psdTopThickness
double psdTopThickness
Definition: DetStructs.h:157
TRDOptions::TRDOptions
TRDOptions()
Definition: DetStructs.h:469
CaloOptions::sphericalMaxCubesY
int sphericalMaxCubesY
Definition: DetStructs.h:69
FITOptions::SetV2
void SetV2()
Definition: DetStructs.h:389
FITOptions::SetSidePlaneSizeV
void SetSidePlaneSizeV(double size)
Definition: DetStructs.h:387
SCDOptions::cfhThickness
double cfhThickness
Definition: DetStructs.h:409
CSSOptions::SetSPRevAngleM1M2
void SetSPRevAngleM1M2(float angle)
Definition: DetStructs.h:506
PSDOptions::TilesOptionsBase::hasCF
bool hasCF
Definition: DetStructs.h:169
SCDOptions::ySideHPos
double ySideHPos
Definition: DetStructs.h:428
GeneralOptions::sideFitSidePsdDistance
double sideFitSidePsdDistance
Definition: DetStructs.h:27
PSDOptions::TilesOptionsTop::tileGapAlongXEven
double tileGapAlongXEven
Definition: DetStructs.h:177
FITOptions::topPlaneSizeXLayEven
double topPlaneSizeXLayEven
Definition: DetStructs.h:337
AcceptanceOptions::caloShowerLength
double caloShowerLength
Definition: DetStructs.h:125
PSDOptions::TilesOptionsTop::tileShortSideSize
double tileShortSideSize
Definition: DetStructs.h:176
CaloOptions::yCenter
float yCenter
Definition: DetStructs.h:64
SCDOptions::ladderGap
double ladderGap
Definition: DetStructs.h:430
SCDOptions::sideTrayGap
double sideTrayGap
Definition: DetStructs.h:436
AcceptanceOptions
Definition: DetStructs.h:120
GeneralOptions::sidePsdSideScdDistance
double sidePsdSideScdDistance
Definition: DetStructs.h:30
CSSOptions::spSpinAngleM2_2
float spSpinAngleM2_2
Definition: DetStructs.h:490
FITOptions::fitTrayGap
double fitTrayGap
Definition: DetStructs.h:332
AcceptanceOptions::caloTOPXwidth
double caloTOPXwidth
Definition: DetStructs.h:123
TRDOptions::nModulesH
int nModulesH
Definition: DetStructs.h:465
PSDOptions::topXPos
double topXPos
Definition: DetStructs.h:159
AcceptanceOptions::selectYPOScalo
bool selectYPOScalo
Definition: DetStructs.h:134
PSDOptions::xSideVPos
double xSideVPos
Definition: DetStructs.h:161
PSDOptions::SetV2
void SetV2()
Definition: DetStructs.h:250
PSDOptions::TilesOptionsSide::tileGapAlongHEven
double tileGapAlongHEven
Definition: DetStructs.h:184
FITOptions::ySideHPos
double ySideHPos
Definition: DetStructs.h:349
PSDOptions::SetSideTilesGapAlongLongSide
void SetSideTilesGapAlongLongSide(double gap)
Definition: DetStructs.h:244
FITOptions::topPlaneSizeYLayOdd
double topPlaneSizeYLayOdd
Definition: DetStructs.h:340
SCDOptions::nSideWafersV
unsigned int nSideWafersV
Definition: DetStructs.h:414
CaloOptions::spdThickness
float spdThickness
Thickness of the depleted volume.
Definition: DetStructs.h:76
FITOptions::fitHcombThickness
double fitHcombThickness
Definition: DetStructs.h:326
FITOptions::fitMatCoreMaterial
std::string fitMatCoreMaterial
Definition: DetStructs.h:329
CaloOptions::xGap
float xGap
Definition: DetStructs.h:62
CaloOptions::fillerDensity
float fillerDensity
Definition: DetStructs.h:67
PSDOptions::TilesOptionsBase::baseAngle
double baseAngle
Definition: DetStructs.h:171
TRDOptions::gapFromSideDetector
float gapFromSideDetector
Definition: DetStructs.h:467
ShieldOptions
Definition: DetStructs.h:480
SCDOptions::nSideWafersH
unsigned int nSideWafersH
Definition: DetStructs.h:413
SCDOptions::waferGap
double waferGap
Definition: DetStructs.h:429
SCDOptions::sideLaddersAllV
bool sideLaddersAllV
Definition: DetStructs.h:418
CaloOptions::lpdThickness
float lpdThickness
Definition: DetStructs.h:76
SCDOptions::sideLadderSizeV
unsigned int sideLadderSizeV
Definition: DetStructs.h:417
SCDOptions::SetV2
void SetV2()
Definition: DetStructs.h:441
FITOptions::fitTopLayers
unsigned fitTopLayers
Definition: DetStructs.h:335
PSDOptions::version
int version
Definition: DetStructs.h:155
FITOptions::xSideHPos
double xSideHPos
Definition: DetStructs.h:348
SCDOptions::foamMaterial
std::string foamMaterial
Definition: DetStructs.h:439
CaloOptions::wellGapY
float wellGapY
Definition: DetStructs.h:63
PSDOptions::SetSideTilesGapAlongShortSide
void SetSideTilesGapAlongShortSide(double gap)
Definition: DetStructs.h:247
SCDOptions::topLadderSize
unsigned int topLadderSize
Definition: DetStructs.h:415
SCDOptions::topXPos
double topXPos
Definition: DetStructs.h:423
TRDOptions::nModulesV
int nModulesV
Definition: DetStructs.h:465
GeneralOptions::caloSideXFitDistance
double caloSideXFitDistance
Definition: DetStructs.h:23
ShieldOptions::amGap
float amGap
Definition: DetStructs.h:482
CaloOptions::zTop
float zTop
Definition: DetStructs.h:64
CaloOptions::zGap
float zGap
Definition: DetStructs.h:62
SCDOptions::sideStaggeringH
double sideStaggeringH
Definition: DetStructs.h:421
CSSOptions::spRevAngleM2
float spRevAngleM2
Definition: DetStructs.h:494
PSDOptions::TilesOptionsBase::cfThickness
double cfThickness
Definition: DetStructs.h:170
CSSOptions::spSpinAngleMC_2
float spSpinAngleMC_2
Definition: DetStructs.h:491
GeneralOptions::caloSideYFitDistance
double caloSideYFitDistance
Definition: DetStructs.h:24
SCDOptions::sideSiCfhGap
double sideSiCfhGap
Definition: DetStructs.h:432
FITOptions::fitlistOfTopWDoubleLayers
std::vector< bool > fitlistOfTopWDoubleLayers
Definition: DetStructs.h:341
CaloOptions::withSupports
bool withSupports
Definition: DetStructs.h:80
SCDOptions::topStaggeringY
double topStaggeringY
Definition: DetStructs.h:420
PSDOptions::psdSideThickness
double psdSideThickness
Definition: DetStructs.h:158
PSDOptions::TilesOptionsBase::cfGap
double cfGap
Definition: DetStructs.h:170
PSDOptions::TilesOptionsTop
Definition: DetStructs.h:174
FITOptions::fitWThickness
double fitWThickness
Definition: DetStructs.h:323
PSDOptions::SetNSideTilesAlongLongSide
void SetNSideTilesAlongLongSide(int nTiles)
Definition: DetStructs.h:238
GeneralOptions::calorimeter
std::string calorimeter
Definition: DetStructs.h:15
PSDOptions::SetV3
void SetV3()
Definition: DetStructs.h:279
CaloOptions::sphericalMaxCubesZ
int sphericalMaxCubesZ
Definition: DetStructs.h:69
AcceptanceOptions::caloTOPYwidth
double caloTOPYwidth
Definition: DetStructs.h:124
GeneralOptions::GeneralOptions
GeneralOptions()
Definition: DetStructs.h:32
SCDOptions::topTrayGap
double topTrayGap
Definition: DetStructs.h:435
FITOptions::fitMatCoreThickness
double fitMatCoreThickness
Definition: DetStructs.h:324
PSDOptions::SetNTopTilesAlongLongSide
void SetNTopTilesAlongLongSide(int nTiles)
Definition: DetStructs.h:226
CaloOptions::sphericalCubesXCoo
std::vector< double > sphericalCubesXCoo
Definition: DetStructs.h:71
CaloOptions::cubeMaskPath
std::string cubeMaskPath
Definition: DetStructs.h:65
CSSOptions::spSpinAngleMC_1
float spSpinAngleMC_1
Definition: DetStructs.h:491
PSDOptions::topTilesOptions
PSDOptions::TilesOptionsTop topTilesOptions
CaloOptions::drawSupports
bool drawSupports
Definition: DetStructs.h:81
SCDOptions::version
int version
Definition: DetStructs.h:405
PSDOptions::TilesOptionsTop::tileGapAlongYEven
double tileGapAlongYEven
Definition: DetStructs.h:177
SCDOptions::xSideHPos
double xSideHPos
Definition: DetStructs.h:427
PSDOptions::TilesOptionsSide::tileShortSideSize
double tileShortSideSize
Definition: DetStructs.h:183
PSDOptions::xSideHPos
double xSideHPos
Definition: DetStructs.h:163
CaloOptions::pdShift
float pdShift
Definition: DetStructs.h:78
SCDOptions::hasFoam
bool hasFoam
Definition: DetStructs.h:437
PSDOptions::sideTilesOptions
PSDOptions::TilesOptionsSide sideTilesOptions
PSDOptions::TilesOptionsTop::nTilesAlongYEven
int nTilesAlongYEven
Definition: DetStructs.h:175
AcceptanceOptions::selectXPOScalo
bool selectXPOScalo
Definition: DetStructs.h:132
PSDOptions::SetTopTilesGapAlongShortSide
void SetTopTilesGapAlongShortSide(double gap)
Definition: DetStructs.h:235
SCDOptions::sideStaggeringV
double sideStaggeringV
Definition: DetStructs.h:422
FITOptions::fitCfrpThickness
double fitCfrpThickness
Definition: DetStructs.h:325
SCDOptions::foamDensity
float foamDensity
Definition: DetStructs.h:438
CaloOptions::xCenter
float xCenter
Definition: DetStructs.h:64
PSDOptions::TilesOptionsBase
Definition: DetStructs.h:166
CaloOptions
Definition: DetStructs.h:56
AcceptanceOptions::selectBOTTOMcalo
bool selectBOTTOMcalo
Definition: DetStructs.h:130
CaloOptions::spdSizeL
float spdSizeL
Sizes of PDs along the package longitudinal direction.
Definition: DetStructs.h:74
GeneralOptions::antiCoincidence
std::string antiCoincidence
Definition: DetStructs.h:16
CaloOptions::crystalDensity
float crystalDensity
Definition: DetStructs.h:58
AcceptanceOptions::selectYNEGcalo
bool selectYNEGcalo
Definition: DetStructs.h:133
AcceptanceOptions::selectXNEGcalo
bool selectXNEGcalo
Definition: DetStructs.h:131
GeneralOptions::tracker
std::string tracker
Definition: DetStructs.h:14
PSDOptions::TilesOptionsSide::nTilesAlongHEven
int nTilesAlongHEven
Definition: DetStructs.h:182
PSDOptions::TilesOptionsSide::tileGapAlongVEven
double tileGapAlongVEven
Definition: DetStructs.h:184
CaloOptions::pdDistance
float pdDistance
Distance between small and large PDs along the package longitudinal direction.
Definition: DetStructs.h:77
FITOptions::topXPos
double topXPos
Definition: DetStructs.h:344
GeneralOptions::calibration
std::string calibration
Definition: DetStructs.h:17
AcceptanceOptions::caloBOTTOMZquote
double caloBOTTOMZquote
Definition: DetStructs.h:126
CaloOptions::densityHasBeenSet
float densityHasBeenSet
Definition: DetStructs.h:59
PSDOptions::TilesOptionsSide::nTilesAlongVEven
int nTilesAlongVEven
Definition: DetStructs.h:182
AcceptanceOptions::mcCaloAccType
int mcCaloAccType
Definition: DetStructs.h:121
CSSOptions::SetSPSpinAngleM1M2
void SetSPSpinAngleM1M2(float angle)
Definition: DetStructs.h:501
CaloOptions::sphericalRadius
float sphericalRadius
Definition: DetStructs.h:70
SCDOptions::topXYGap
double topXYGap
Definition: DetStructs.h:433
SCDOptions::scdTopLayers
unsigned int scdTopLayers
Definition: DetStructs.h:410
FITOptions::sidePlaneSizeHLayEven
double sidePlaneSizeHLayEven
Definition: DetStructs.h:333
SCDOptions::sideXYGap
double sideXYGap
Definition: DetStructs.h:434
PSDOptions::TilesOptionsSide::nTilesAlongVOdd
int nTilesAlongVOdd
Definition: DetStructs.h:182
PSDOptions::ySideHPos
double ySideHPos
Definition: DetStructs.h:164
SCDOptions::sideLadderSizeH
unsigned int sideLadderSizeH
Definition: DetStructs.h:416
CSSOptions::spSpinAngleM2_1
float spSpinAngleM2_1
Definition: DetStructs.h:490
PSDOptions::PSDOptions
PSDOptions()
Definition: DetStructs.h:188
PSDOptions::TilesOptionsSide::staggeringV
double staggeringV
Definition: DetStructs.h:185
AcceptanceOptions::selectTOPcalo
bool selectTOPcalo
Definition: DetStructs.h:129
AcceptanceOptions::caloBOTTOMYwidth
double caloBOTTOMYwidth
Definition: DetStructs.h:128
PSDOptions::SetNSideTilesAlongShortSide
void SetNSideTilesAlongShortSide(int nTiles)
Definition: DetStructs.h:241
CaloOptions::lpdSizeT
float lpdSizeT
Definition: DetStructs.h:75
PSDOptions::TilesOptionsSide
Definition: DetStructs.h:181
SCDOptions::waferWidth
double waferWidth
Definition: DetStructs.h:408
CaloOptions::cubeMask
std::vector< int > cubeMask
Definition: DetStructs.h:66
GeneralOptions
Definition: DetStructs.h:10
FITOptions::SetSidePlaneSizeH
void SetSidePlaneSizeH(double size)
Definition: DetStructs.h:386
PSDOptions::SetNTopTilesAlongShortSide
void SetNTopTilesAlongShortSide(int nTiles)
Definition: DetStructs.h:229
FITOptions::fitCfrpMaterial
std::string fitCfrpMaterial
Definition: DetStructs.h:331
CaloOptions::lpdSizeL
float lpdSizeL
Definition: DetStructs.h:74
CSSOptions::spSpinAngleM1_1
float spSpinAngleM1_1
Definition: DetStructs.h:489
CaloOptions::spdSizeT
float spdSizeT
Sizes of PDs along the package transverse direction.
Definition: DetStructs.h:75
CaloOptions::wellGapX
float wellGapX
Definition: DetStructs.h:63
FITOptions::sidePlaneSizeVLayEven
double sidePlaneSizeVLayEven
Definition: DetStructs.h:334
ShieldOptions::amMaterial
std::string amMaterial
Definition: DetStructs.h:483
PSDOptions::TilesOptionsSide::nTilesAlongHOdd
int nTilesAlongHOdd
Definition: DetStructs.h:182
PSDOptions::TilesOptionsTop::staggeringY
double staggeringY
Definition: DetStructs.h:178
FITOptions::fitHcombMaterial
std::string fitHcombMaterial
Definition: DetStructs.h:330
GeneralOptions::chargeID
std::string chargeID
Definition: DetStructs.h:13
SCDOptions::xSideVPos
double xSideVPos
Definition: DetStructs.h:425
TRDOptions::posT
float posT
Definition: DetStructs.h:466
CSSOptions::SetSPSpinAngleMC
void SetSPSpinAngleMC(float angle)
Definition: DetStructs.h:505
CaloOptions::wellGapZ
float wellGapZ
Definition: DetStructs.h:63
CSSOptions::spRevAngleM1
float spRevAngleM1
Definition: DetStructs.h:494
PSDOptions::TilesOptionsBase::nLayers
int nLayers
Definition: DetStructs.h:167
PSDOptions::TilesOptionsSide::tileGapAlongHOdd
double tileGapAlongHOdd
Definition: DetStructs.h:184
AcceptanceOptions::AcceptanceOptions
AcceptanceOptions()
Definition: DetStructs.h:136
CaloOptions::sphericalCubesYCoo
std::vector< double > sphericalCubesYCoo
Definition: DetStructs.h:71
FITOptions::fitlistOfSideWDoubleLayers
std::vector< bool > fitlistOfSideWDoubleLayers
Definition: DetStructs.h:342
FITOptions::ySideVPos
double ySideVPos
Definition: DetStructs.h:347
CaloOptions::monolithicCalo
bool monolithicCalo
Definition: DetStructs.h:57
PSDOptions::TilesOptionsBase::layersGap
double layersGap
Definition: DetStructs.h:168