1 #ifndef MACRO_G4TTLEIC_C
2 #define MACRO_G4TTLEIC_C
4 #include "GlobalVariables.C"
17 double Rmax,
double tSilicon,
double xoffset=0);
19 double Rmax,
double tSilicon);
21 double radius,
double halflength,
double tSilicon,
double zOffset);
23 double radius,
double halflength,
double tSilicon,
double zOffset);
25 double radius,
double halflength,
double tSilicon,
double zOffset);
40 double positionToVtx[3][3] = { {-169., -172., -309.5}, {80., 114.7, 0. }, { 287., 289., 340.} };
41 double minExtension[3][3] = { {8, 8, 15.3}, {218, 180, 0 }, {11.62, 11.7, 13.8 } };
42 double maxExtension[3][3] = { {61., 61. , 200}, {-40, 0, 0 }, {170., 170., 250 } };
80 cout <<
"TTL setup infront of ECals with 2 layers fwd/bwd & 1 layer barrel" << endl;
82 cout <<
"TTL setup infront of ECals with 2 layers fwd/bwd & 1 layer barrel, lower barrel layer" << endl;
88 cout <<
"TTL setup infront of ECals with 1 layers fwd/bwd & 1 layer barrel, lower barrel layer" << endl;
102 cout <<
"TTL setup infront of ECals with 2 layers fwd/bwd & 1 layer barrel, 1 layer before HCals everywhere" << endl;
110 cout <<
"TTL setup infront of ECals with 2 layers fwd/bwd & 1 layer barrel, 1 layer before HCals everywhere choosen!" << endl;
111 cout <<
"conflicting in forward region with DR calo, reducing by 1 layer!" << endl;
114 cout <<
"TTL setup infront of ECals with 2 layers fwd/bwd & 1 layer barrel, 1 layer before HCals everywhere choosen!" << endl;
115 cout <<
"conflicting in forward region with DR calo, reducing adding larger cutout!" << endl;
124 const double mm = .1 *
cm;
125 const double um = 1
e-3 *
mm;
142 const double mm = .1 *
cm;
143 const double um = 1
e-3 *
mm;
158 const double mm = .1 *
cm;
159 const double um = 1
e-3 *
mm;
176 double zpos,
double rMin,
double rMax,
180 cout <<
"r min: " << rMin <<
"\t r max: " << rMax <<
"\t z: " << zpos << endl;
183 double polar_angle = 0;
209 double zpos,
double rmin,
double rmax,
217 double etamin = -TMath::Log(TMath::Tan(rmin/TMath::Abs(zpos)/2));
218 double etamax = -TMath::Log(TMath::Tan(rmax/TMath::Abs(zpos)/2));
220 double polar_angle = 0;
227 if (etamax < etamin){
249 const double mm = .1 *
cm;
250 const double um = 1
e-3 *
mm;
267 double radius,
double halflength,
double tSilicon,
double zOffset )
271 cout <<
"The improved barrel TTL layer is placed at a fixed radius of rMin = 80 * cm and is meant to only be used with the BECAL!" << endl;
293 double radius,
double halflength,
double tSilicon,
double zOffset){
298 const int nSubLayer = 7;
300 string layerName[nSubLayer] = {
"SiliconSensor",
"Metalconnection",
"HDI",
"Cooling",
301 "Support1",
"Support_Gap",
"Support2"};
302 string material[nSubLayer] = {
"G4_Si",
"G4_Al",
"G4_KAPTON",
"G4_WATER",
303 "G4_GRAPHITE",
"G4_AIR",
"G4_GRAPHITE"};
305 50 *
um, 1, 50 * um};
307 double max_bh_radius = 0.;
311 double currRadius =
radius;
313 for (
int l = 0; l < nSubLayer; l++) {
328 currRadius = currRadius+thickness[l];
337 double radius,
double halflength,
double tSilicon,
double zOffset){
342 const int nSubLayer = 4;
344 string layerName[nSubLayer] = {
"Cooling",
"Crystal",
"SiliconSensor",
"Motherboard"};
345 string material[nSubLayer] = {
"G4_Al",
"LSO",
"G4_Si",
"FR4"};
346 double thickness[nSubLayer] = {0.031 *
cm, 0.029 *
cm, tSilicon, 0.033 *
cm};
348 double max_bh_radius = 0.;
352 double currRadius =
radius;
354 for (
int l = 0; l < nSubLayer; l++) {
369 currRadius = currRadius+thickness[l];
385 digits_FTTL->
Detector(Form(
"FTTL_%d", i));
400 digits_ETTL->
Detector(Form(
"ETTL_%d", i));